• 북마크
  • 추가메뉴
어디로 앱에서 쉽고 간편하게!
애플 중고 거래 전문 플랫폼
오늘 하루 보지 않기
KMUG 케이머그

소프트웨어

[App 개발] OpenCV 1.0.0 Frameworks

본문

wlee 님 뿐만 아니라 Mac 에서 이미지 프로세싱 관련 연구를 하시는 분들에게 유용한 툴이 될 듯 싶습니다. 좋은 라이브러리를 알게 되어 wlee 님께 감사말씀 드립니다. ^^

물론 1.0.0 을 그대로 command-line 으로 컴파일해도 프로그램은 만들 수 있습니다만, 이왕이면 Xcode 에서 편하게 프로그램을 작성하고 싶으신 분들이 쓰시면 유용할 듯 싶습니다.

일단 파일을 받으신 후 압축을 풀고 디렉토리 안을 보시면 OSX 디렉토리가 있을 것입니다. 그 안에는 다섯 개의 서브 디렉토리가 있습니다. 다음과 같은 순서로 build 하세요.

cxcore
cv
cvaux
highgui

cv 는 cxcore 를 참조하며, cvaux 는 cv 와 cxcore 를 참조하며... 이렇게 되어 있으므로 빌드 순서가 위와 같아야 합니다.

한 프로젝트로 만들면 간편하긴 하겠지만, 소스를 살펴보니 include 파일의 path 가 약간 relax 하게 되어 있어서 디버깅을 위해서 일부러 프로젝트를 나누었습니다. 어차피 한 번 빌드하고 나면 향후에는 Framework 만 참조하면 되기 때문에 번거로움은 한 번으로 끝입니다. -_-; (그리고 이 부분이 Apple 의 기술 문서에서 소개하는 Open Source 소프트웨어 포팅법과, portability 를 중시하는 제 방법의 차이이기도 합니다. ^^;)

일단 올려놓은 프로젝트에는 최적화 관련 플래그를 설정하지 않았습니다. 필요하신 분들은 따로 Build 옵션에서 최적화를 선택하시면 되겠습니다.

컴파일이 다 끝나면 각각의 디렉토리에는 Build/Release 디렉토리가 생성되며, 그 안에 cxcore.Framework, cv.Framework... 등의 프레임웍 디렉토리가 생성됩니다.

샘플 프로젝트에는 OpenCV 에서 제공하는 샘플 중의 일부를 포팅해 놓았습니다.

위의 OpenCV Framework 은 embedded 방식을 위해 맞추어 놓은 것입니다. 이렇게 하면 Framework 을 Application 번들 내에 내장하게 되므로 따로 Framework 을 컴퓨터마다 설치할 필요가 없어서 휴대성이 높고 깔끔하게 정리할 수 있습니다. Framework 은 기본적으로 dynamic library 입니다. Framework 이 컴파일시 지정된 올바른 위치에 놓이지 않으면 라이브러리를 참조할 수 없으므로 image not found 오류를 발생하게 됩니다.

위의 Framework 으로 OpenCV 프로그램을 작성할 시에는 다음과 같은 과정이 더 필요합니다.

1. 프로젝트 윈도우에서 Target 을 열어 실행모듈을 선택합니다.
2. Project 메뉴에서 New Build Phase->New Copy Files Build Phase 를 선택합니다.
3. 대화창에서 Framework 을 선택하고
4. 생성된 Copy Files 항목에 프로젝트에 include 한 OpenCV Frameworks 들을 드래그 해 넣습니다.

이렇게 하면 App 내에 Framework 이 같이 복사되어 들어갑니다.

Framework 프로젝트에서는 이 프레임웍이 App 디렉토리 내에서 호출될 것을 미리 설정해 놓아야 합니다. 이것은 Inspector 윈도우의 두 번째 탭인 Build 에서 Installation Location 옵션에 @executable_path/../Frameworks 을 넣으면 됩니다. 기본값은 /Users/아이디/Library/Frameworks 입니다.

자세한 사항은 첨부된 프로젝트 파일을 살펴보세요. ^^
0 0
로그인 후 추천 또는 비추천하실 수 있습니다.
포인트 228,692
가입일 :
2003-02-18 14:12:30
서명 :
미입력
자기소개 :
미입력

최신글이 없습니다.

최신글이 없습니다.

댓글목록 5

wlee님의 댓글

앗, 이런 훌륭한 일을 하시다니.. 이거 웹에 올려서 OpenCV 커뮤니티에 널리 알려야 하는게 아닐까요 ㅎㅎㅎ

wlee님의 댓글

그런데 테스트 하신 소스는 OpenCV-1.0.0인지요 아니면 CVS에서 가져온 것인지요 ?

wlee님의 댓글

에고.. 계속 질문만 올리네요.
방금 테스트 해 보니
"위의 Framework 으로 OpenCV 프로그램을 작성할 시에는 다음과 같은 과정이 더 필요합니다."  에서 말씀하신 1-4 의 과정이 없어도 빌드가 되고 실행은 되는 것 같습니다. 이 과정이 꼭 필요한 것은 아닌가요 ? ?

hongjuny님의 댓글

저 위의 네 과정은 엑스코드에서 새 프로젝트를 개설할 때 필요한 과정을 요약한 것입니다. ^^ 동봉한 샘플 프로젝트에는 위의 네 과정이 이미 처리되어 있는 것이지요. 참고하시라고 올린 것입니다.

그리고 저도 어차피 그럴듯한 비젼/이미지 프로세싱 라이브러리는 도움이 되니까요. 그래서 일부러 열심을 부려 보았습니다. ^^ 오히려 제가 감사하다고 말씀드려야 할 처지죠. ㅎㅎ

egregory님의 댓글

저는 요새 macam으로 cocoa에 붙히는 짓을 하는중인데...

댓글쓰기

적용하기
전체 529 건 - 3 페이지
2007.08
07

[App 개발] 자동으로 운영체제 키보드 레이아웃을 바꾸는 법에 관해서...

제가 제 개인적인 필요 때문에 타자 연습 프로그램을 만들고 있는데요. 프로그램에서 한글이나 영어 언어를 선택하고 연습 할 때 그 때마다 운영체제의 키보드 레이아웃도 한글이나 영어로 맞춰줘야 되서 불편한데요. 프로그램에서 언…

2007.07
29

[App 개발] Chapter 7의 8쪽에서의 질문....(Cocoa Programming for Mac OS X 2/E)

- (void)insertObject:(Person *)p inEmployeesAtIndex:(int)index { // Add the inverse of this operation to the undo stack NSUndo…

2007.07
16

[App 개발] helper object 에 관해서...

제가 코코아 책 보며 Helper Object 를 공부하는 중인데 아무리 생각해봐도 도무지 무엇인지 잘 이해가 되지 않습니다. 미숙한 번역실력 때문인듯.. 아무튼 제가 생각하는 helper object 는 클래스를 확장할 때 사용하는 객…

2007.07
01

[App 개발] Xcode 편집기에서 한글 입력할 때의 문제점에 대한 질문

안녕하세요. Xcode를 사용해서 ASCII 텍스트 형태의 소스 코드에 한글 주석을 입력하다 자꾸 특정 부분에서 아래와 같은 메시지 박스가 떠서 문자를 입력할 수가 없는데, 어떻게 하면 될지 그 해결 방법이 궁금합니다. 입력 문자열: 그…

2007.06
17

[App 개발] Cocoa 에 대한 질문..

코코아 책(정확히는 pdf...)을 열심히 보고 있는데.. 정확히 이해를 했는지 못했는지 몰라서.. 질문들을 올리겠습니다. 1. NSMutableArray *array; …

2007.06
06

[App 개발] 다시한번 질문.....

안녕하세요 아래 올렸던 내용과 비슷한데, 해결이 잘 안되서 다시 질문을 드립니다. 하드 디스크의 특정 디렉토리에서 파일의 유무를 검사해야 하는데요, 하드 디스크의 이름이 "ccc" 라면, open("ccc:어쩌구:파일", "r")…

2007.04
28

[App 개발] Dev C++에서 GLUT사용하는법을....

Visual Studio 쓰자니 다운하긴 좀 그렇고.. Express 는 아주 많이 부족하고... 그래서 Dev C++ 를 다운하려고 하는데요. 도대체 이걸로 GLUT프로그래밍 하는 법을 모르겠네요... 윈도우 어플로 GL 프로그래밍하는…

2007.01
27

열람중 [App 개발] OpenCV 1.0.0 Frameworks

wlee 님 뿐만 아니라 Mac 에서 이미지 프로세싱 관련 연구를 하시는 분들에게 유용한 툴이 될 듯 싶습니다. 좋은 라이브러리를 알게 되어 wlee 님께 감사말씀 드립니다. ^^ 물론 1.0.0 을 그대로 command-line 으로 컴파일해도…

2007.01
20

[App 개발] [질문] 외부 라이브러리 다시 한번 ~

질문 1. 외부 라이브러리를  External Frameworks and libraries 폴더에 추가하기 위해, 오른쪽 버튼 -> Add->existing files.. 를 선택해서…

2006.12
28

[App 개발] Xcode 에서 디버그 모드 ... 릴리즈 모드...

비주얼 스투디오에서는 빌드 아이콘 옆에 디버그 모드 릴리즈 모드 선택할 수 있어서 편했는데 Xcode 는 어떻게 하나요 오픈지엘 공부하면서 제가 만든 프로젝트들은 Build/Debug 디덱터리에 실행파일이 생기는데 책…