[OpenCV] ์นด๋ฉ๋ผ์ ๋ฒํผ ์ฐ๊ฒฐํ๊ธฐ
OpenCV์์๋ VideoCapture ํด๋์ค๋ฅผ ์ฌ์ฉํ์ฌ WebCam ๋ฐ IP Camera๋ฅผ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค.
VideoCapture ํด๋์ค์ ๊ด๋ จํ Reference Manual์ ์๋ ๋งํฌ๋ฅผ ํด๋ฆญํด์ฃผ์ธ์.
ํ์ง๋ง, ๋จธ์ ๋น์ ์นด๋ฉ๋ผ์ ์ธํฐํ์ด์ค๋ USB ๋ฟ๋ง ์๋๋ผ GigE, Camera Link, CoaXPress ๋ฑ ๋ค์ํ ํ์ค๋ค์ด ์กด์ฌํฉ๋๋ค.
OpenCV์์๋ ์ด๋ฌํ ์ธํฐํ์ด์ค์ ๋๋ผ์ด๋ฒ๋ฅผ ์ ๊ณตํ์ง ์๊ธฐ ๋๋ฌธ์, ์นด๋ฉ๋ผ ๋๋ ํ๋ ์ ๊ทธ๋๋ฒ ์ ์กฐ์ฌ์ ๋๋ผ์ด๋ฒ ๋ฐ SDK๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
๋จธ์ ๋น์ ์นด๋ฉ๋ผ์ ์ธํฐํ์ด์ค๋ ์๋ ๊ธ์ ์ฐธ๊ณ ํด์ฃผ์ธ์.
์ฆ, ์นด๋ฉ๋ผ์ ์์์ ์ทจ๋ํ๋ ๋ถ๋ถ์ ์ ์กฐ์ฌ SDK๋ฅผ ์ฌ์ฉํ๊ณ , ์์ ์ฒ๋ฆฌ ๋ถ๋ถ์ OpenCV SDK๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
์๋ ์์ ๋ ์นด๋ฉ๋ผ์ Buffer Data๋ฅผ OpenCV Mat์ ์ฐ๊ฒฐํ๋ ์ฝ๋์ ๋๋ค.
//byte* pBuffer; ์นด๋ฉ๋ผ๋ก๋ถํฐ ์ป์ ๋ฒํผ ๋ฐ์ดํฐ.
//int bufferSize; ๋ฒํผ์ ํฌ๊ธฐ.
//int width; ์ด๋ฏธ์ง์ ๊ฐ๋ก ํด์๋.
//int height; ์ด๋ฏธ์ง์ ์ธ๋ก ํด์๋.
Mat cvImage(height, width, CV_8U); //8bit mono format.
memcpy(cvImage.data, pBuffer, bufferSize);
imwrite("test.bmp", cvImage);
์ฝ๋๊ฐ ์ ๋ง ๊ฐ๋จํ์ฃ ?
์ด๋ป๊ฒ ์ฌ์ฉ๋๊ฑด์ง ํ์ธํด ๋ณด๊ฒ ์ต๋๋ค.
๋จผ์ ์ฒซ ์ค์ Mat cvImage์ ์ ์๋ ์๋์ ๊ฐ์ต๋๋ค.
์ฒซ ๋ฒ์งธ ์ธ์๋ ์ด๋ฏธ์ง์ ์ธ๋ก ํฝ์ ์(Height), ๋ ๋ฒ์งธ๋ ์ด๋ฏธ์ง์ ๊ฐ๋ก ํฝ์ ์(Width), ์ธ ๋ฒ์งธ๋ ์ฑ๋ ์(Bit per pixel)์ ๋๋ค.
๋ ๋ฒ์งธ ์ค์ memcpy๋ Windows API์ ๋๋ค.
์ฒซ ๋ฒ์งธ ์ธ์๋ ๋ชฉ์ ์ง, ๋ ๋ฒ์งธ ์ธ์๋ ์์ค, ์ธ ๋ฒ์งธ ์ธ์๋ ํฌ๊ธฐ์
๋๋ค.
์์ ์ฝ๋์์๋ Mat ์ด๋ฏธ์ง์ ๋ฒํผ ๊ณต๊ฐ์ ๋ชฉ์ ์ง๋ก, ์นด๋ฉ๋ผ๋ก๋ถํฐ ํ๋ํ ๋ฒํผ๋ฅผ ์์ค๋ก ์ ์ํ์ต๋๋ค.
๋ง์ง๋ง์ผ๋ก imwrite ํจ์์ ๋๋ค.
์ฒซ ๋ฒ์งธ ์ธ์๋ ํ์ผ๋ช
, ๋ ๋ฒ์งธ ์ธ์๋ ์ด๋ฏธ์ง๋ก Mat๋ ํธํ๋ฉ๋๋ค.
API ์ค๋ช ๋ง ๊ธธ์์ง, ๋ด์ฉ์ ๋ณ๊ฑฐ ์์ต๋๋ค.
์ด์ ์ฐ๋๋ OpenCV Mat๋ฅผ ์ฌ์ฉํ์ฌ ์์์ฒ๋ฆฌ๋ฅผ ์์ํ๋ฉด ๋ฉ๋๋ค!
'Programming > OpenCV' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋๊ธ
์ด ๊ธ ๊ณต์ ํ๊ธฐ
-
๊ตฌ๋
ํ๊ธฐ
๊ตฌ๋ ํ๊ธฐ
-
์นด์นด์คํก
์นด์นด์คํก
-
๋ผ์ธ
๋ผ์ธ
-
ํธ์ํฐ
ํธ์ํฐ
-
Facebook
Facebook
-
์นด์นด์ค์คํ ๋ฆฌ
์นด์นด์ค์คํ ๋ฆฌ
-
๋ฐด๋
๋ฐด๋
-
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
-
Pocket
Pocket
-
Evernote
Evernote
๋ค๋ฅธ ๊ธ
-
[OpenCV] VTK 9.0.0๊ณผ OpenCV 4.4.0์ผ๋ก viz ๋ชจ๋ ํฌํจํ์ฌ ๋น๋ํ๊ธฐ!
[OpenCV] VTK 9.0.0๊ณผ OpenCV 4.4.0์ผ๋ก viz ๋ชจ๋ ํฌํจํ์ฌ ๋น๋ํ๊ธฐ!
2023.04.15 -
[OpenCV] C#์์ OpenCVSharp4 ํ๊ฒฝ ๊ตฌ์ฑ ๋ฐ ์ฌ์ฉ ๋ฐฉ๋ฒ (์์ ํฌํจ)
[OpenCV] C#์์ OpenCVSharp4 ํ๊ฒฝ ๊ตฌ์ฑ ๋ฐ ์ฌ์ฉ ๋ฐฉ๋ฒ (์์ ํฌํจ)
2021.06.14 -
[OpenCV] Mat ์ด๋ฏธ์ง๋ฅผ Picture Control์ ์ถ๋ ฅํ๊ธฐ
[OpenCV] Mat ์ด๋ฏธ์ง๋ฅผ Picture Control์ ์ถ๋ ฅํ๊ธฐ
2019.04.16 -
[OpenCV] IplImage vs Mat ๋ฌด์์ ์ฌ์ฉํด์ผ ํ ๊น?
[OpenCV] IplImage vs Mat ๋ฌด์์ ์ฌ์ฉํด์ผ ํ ๊น?
2019.03.04