ABOUT ME

-

  • OpenCV ์„ค์น˜ ๋ฐ Visual Studio 2017 ์—ฐ๋™
    ์„ค์น˜, ์„ค์ •, ์˜ค๋ฅ˜ ํ•ด๊ฒฐ 2019. 3. 6. 01:02
    728x90

    OpenCV ์„ค์น˜

    - OpenCV ํ™ˆํŽ˜์ด์ง€ : https://opencv.org/

    - OpenCV ํ™ˆํŽ˜์ด์ง€์— ๋“ค์–ด๊ฐ€์„œ Releases ์นดํ…Œ๊ณ ๋ฆฌ๋ฅผ ํด๋ฆญํ•œ๋‹ค.

    - ๋ฒ„์ „๋ณ„๋กœ ์ •๋ฆฌ๋˜์–ด์žˆ๋Š”๋ฐ ๋‚˜๋Š” ๊ฐ€์žฅ ์ตœ์‹  ๋ฒ„์ „์ธ 4.0.1์„ ๋‹ค์šด

    - Visual Studio์— ์—ฐ๋™ํ•  ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— Win pack ๋‹ค์šด


    - ์„ค์น˜ ํŒŒ์ผ์„ ์‹คํ–‰ํ•˜๋ฉด ์ด๋Ÿฐ ์ฐฝ์ด ๋œจ๋Š”๋ฐ ์••์ถ• ํ•ด์ œ ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•œ ํ›„ Extract ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๊ณ  ์„ค์น˜ ์™„๋ฃŒํ•œ๋‹ค

    - openCV ํŒŒ์ผ์ด ์–ด๋””์— ์„ค์น˜๋˜๋Š”์ง€ ๋ฐ˜๋“œ์‹œ ์•Œ๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค


    - ์„ค์น˜๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ค์ •์„ ํ•œ๋‹ค.

    - ํ™˜๊ฒฝ ๋ณ€์ˆ˜์— ๋“ฑ๋ก๋œ ๊ฒฝ๋กœ๋Š” ์ปดํ“จํ„ฐ์˜ ์–ด๋–ค ๊ฒฝ๋กœ์—์„œ๋ผ๋„ ์ ‘๊ทผ(์‹คํ–‰) ํ•  ์ˆ˜ ์žˆ๋‹ค.

    - '์ œ์–ดํŒ -> ์‹œ์Šคํ…œ ๋ฐ ๋ณด์•ˆ -> ์‹œ์Šคํ…œ' ๋˜๋Š” '์œˆ๋„์šฐ ํ‚ค + Pause/Break' ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ์‹œ์Šคํ…œ ์ฐฝ์„ ์—ด์–ด ๊ณ ๊ธ‰ ์‹œ์Šคํ…œ ์„ค์ •์— ๋“ค์–ด๊ฐ„ ๋‹ค์Œ '์‹œ์Šคํ…œ ์†์„ฑ -> ๊ณ ๊ธ‰ -> ํ™˜๊ฒฝ ๋ณ€์ˆ˜'๋ฅผ ํด๋ฆญํ•˜์—ฌ ํ™˜๊ฒฝ ๋ณ€์ˆ˜์ฐฝ์— ๋“ค์–ด๊ฐ„๋‹ค


    - ๊ทธ ๋‹ค์Œ ํ™˜๊ฒฝ ๋ณ€์ˆ˜์ฐฝ์—์„œ ์ƒˆ๋กœ ๋งŒ๋“ค๊ธฐ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๊ณ  ์‹œ์Šคํ…œ ๋ณ€์ˆ˜๋ฅผ ์ž…๋ ฅํ•œ๋‹ค

    - ๋ณ€์ˆ˜ ์ด๋ฆ„ : OPENCV_BUILD(์ž์‹ ์ด ์•Œ์•„๋ณผ ์ˆ˜ ์žˆ๋Š” ๋ณ€์ˆ˜ ๋ช…)

    - ๋ณ€์ˆ˜ ๊ฐ’ : OpenCV ์••์ถ• ํ•ด์ œ ๊ฒฝ๋กœ + \opencv\build ์ž…๋ ฅ ํ›„ ํ™•์ธ

    โ€ป ๋ณ€์ˆ˜ ๋“ฑ๋ก ์—†์ด ๋ฐ”๋กœ ๊ฒฝ๋กœ ์„ค์ •์„ ํ•ด์ค˜๋„ ๋˜์ง€๋งŒ ๊ฒฝ๋กœ๊ฐ€ ๋ณต์žกํ•  ๊ฒฝ์šฐ ๋ณ€์ˆ˜ ๋“ฑ๋ก์„ ํ•˜๋ฉด ํŽธํ•˜๋‹ค


    - ์‹œ์Šคํ…œ ๋ณ€์ˆ˜ ์ค‘ Path๋ฅผ ์„ ํƒํ•˜๊ณ  ํŽธ์ง‘ ํด๋ฆญ ํ›„ ์ƒˆ๋กœ ๋งŒ๋“ค๊ธฐ๋ฅผ ํด๋ฆญํ•œ๋‹ค

    - %OPENCV_BUILD%\x64\vc15\bin ์ž…๋ ฅ

    - ์œˆ๋„์šฐ10-64๋น„ํŠธ, Visual Studio 2017 ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— x64, vc15๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค.


    โ€ป ๋งŒ์•ฝ 32๋น„ํŠธ์ผ ๊ฒฝ์šฐ x84, Visual Studio 2015์ผ ๊ฒฝ์šฐ v14๋ฅผ ์‚ฌ์šฉ(2017 ๋ฒ„์ „์—์„œ vc14๋ฅผ ์‚ฌ์šฉํ•ด๋„ ๋ฌธ์ œ๋Š” ์—†์—ˆ๋‹ค)

    โ€ป ๋ณ€์ˆ˜ ๋“ฑ๋ก ์—†์ด ๊ฒฝ๋กœ ํŽธ์ง‘์„ ํ•  ๊ฒฝ์šฐ OpenCV ์••์ถ• ํ•ด์ œ ๊ฒฝ๋กœ + \opencv\build + \x64\vc15\bin

    โ–ถ ๋ฌด์ž‘์ • ๋”ฐ๋ผํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ ๋ณธ์ธ ์„ค์ •์— ๋งž๋„๋ก ์ž…๋ ฅํ•ด์•ผ ํ•œ๋‹ค


    Visual Studio ์„ค์ •

    - ์ƒˆ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ

    - ๋นˆ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ ๋ฐ ํ™•์ธ

    Debug x64 ์„ธํŒ…

    - ๋งŒ์•ฝ Debug x64 ํ•ญ๋ชฉ์ด ์—†์„ ๊ฒฝ์šฐ ๊ตฌ์„ฑ ๊ด€๋ฆฌ์ž์˜ 'ํ™œ์„ฑ ์†”๋ฃจ์…˜ ํ”Œ๋žซํฐ -> ์ƒˆ๋กœ ๋งŒ๋“ค๊ธฐ' ๋ฅผ ํ†ตํ•ด ์ถ”๊ฐ€

    - ์†์„ฑ ๊ด€๋ฆฌ์ž ์ฐฝ์—์„œ 'ํ”„๋กœ์ ํŠธ ์šฐํด๋ฆญ ํ›„ -> ์ถ”๊ฐ€ -> ์ƒˆํ•ญ๋ชฉ' ํด๋ฆญ, 'C++ ํŒŒ์ผ ์ƒ์„ฑ'

    โ€ป C++ ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜์ง€ ์•Š์œผ๋ฉด ํ”„๋กœ์ ํŠธ ์†์„ฑ์— C/C++ ๊ฐ€ ์—†์„ ์ˆ˜ ์žˆ๋‹ค


    - 'ํ”„๋กœ์ ํŠธ ์†์„ฑ -> ๊ตฌ์„ฑ ์†์„ฑ -> C/C++ -> ์ผ๋ฐ˜ -> ์ถ”๊ฐ€ ํฌํ•จ ๋””๋ ‰ํ„ฐ๋ฆฌ' ์—  $(OPENCV_BUILD)\include ์ž…๋ ฅ


    - 'ํ”„๋กœ์ ํŠธ ์†์„ฑ -> ๊ตฌ์„ฑ ์†์„ฑ -> ๋ง์ปค -> ์ผ๋ฐ˜ -> ์ถ”๊ฐ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋””๋ ‰ํ„ฐ๋ฆฌ'์— $(OPENCV_BUILD)\x64\vc15\lib   ์ž…๋ ฅ


    - 'ํ”„๋กœ์ ํŠธ ์†์„ฑ -> ๊ตฌ์„ฑ ์†์„ฑ -> ๋ง์ปค -> ์ž…๋ ฅ -> ์ถ”๊ฐ€ ์ข…์†์„ฑ'์—์„œ opencv_world401.lib, opencv_world401d.lib   ์ถ”๊ฐ€(๋‚ด๊ฐ€ ๋‹ค์šด ๋ฐ›์€ opencv ๋ฒ„์ „์„ ํ™•์ธํ•˜๊ณ  ์ž…๋ ฅ)


    ํ…Œ์ŠคํŠธ

    - openCV๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœ์ ํŠธ๊ฐ€ ๋ฌธ์ œ ์—†์ด ๋Œ์•„๊ฐ€๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.


    dll.์ด(๊ฐ€) ์—†์–ด ํ”„๋กœ๊ทธ๋žจ์„ ์‹œ์ž‘ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค ์˜ค๋ฅ˜๊ฐ€ ๋œฐ ๊ฒฝ์šฐ

    - ์œ„์—์„œ ํ–ˆ๋˜ ๊ณผ์ •๋“ค ์ค‘ ์‹ค์ˆ˜๊ฐ€ ์—†์—ˆ๋Š”์ง€ ํ™•์ธ

    1. ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ค์ •

    2. ํ”„๋กœ์ ํŠธ ์†์„ฑ -> C/C++ -> ์ผ๋ฐ˜ -> ์ถ”๊ฐ€ ํฌํ•จ ๋””๋ ‰ํ„ฐ๋ฆฌ ๊ฒฝ๋กœ ํ™•์ธ

    3. ํ”„๋กœ์ ํŠธ ์†์„ฑ -> ๋ง์ปค -> ์ผ๋ฐ˜ -> ์ถ”๊ฐ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋””๋ ‰ํ„ฐ๋ฆฌ ๊ฒฝ๋กœ ํ™•์ธ

    4. ํ”„๋กœ์ ํŠธ ์†์„ฑ -> ๋ง์ปค -> ์ผ๋ฐ˜ -> ์ถ”๊ฐ€์ข…์†์„ฑ์— ํŒŒ์ผ๋ช… ํ™•์ธ(๋ฒ„์ „ ํ™•์ธ)

    - ์œ„ ๊ณผ์ • ์ค‘ ๋ฌธ์ œ๊ฐ€ ์—†์„ ๊ฒฝ์šฐ \opencv\build\x64\vc15\lib ์•ˆ์— ๋“ค์–ด์žˆ๋Š” dllํŒŒ์ผ์„ C:\Windows\SysWOW64์— ๋ชจ๋‘ ๋„ฃ์€ ํ›„ ๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค๋ฅผ ๊ป๋‹ค ์ผœ๋ณธ๋‹ค. 

    (๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค ์„ธํŒ…์„ ๋ฐ”๊ฟจ๋Š”๋ฐ ์˜ค๋ฅ˜๊ฐ€ ๋‚  ๊ฒฝ์šฐ ํ•œ๋ฒˆ ๊ป๋‹ค ์ผœ๋ณด๋Š” ๊ฒƒ์ด ์ข‹๋‹ค)


    ๋.



    728x90

    ๋Œ“๊ธ€

Designed by Tistory.