2년전 새벽 3시까지 일하면서 1분 1초가 아깝게 느껴질 정도로 열심히 살았던 때 결과물 살면서 가장 잘한 일이고 개발자로서 자부심을 갖게해준... 알고리즘 수정하고 테스팅툴을 돌려놓고 담배 한대 피우고 왔는데 결과 '인식성공'이라는 내 컴퓨터 앞에 회사 직원들이 모여서 웅성거리면서 이거 된거 아니냐 묻고 환호를 했던 때가 생생하게 기억이 난다. 뮤레카, 저작권위원회 최우수 필터링 인증 획득 |
||||||||||||||||||||
|
||||||||||||||||||||
|
'Develop'에 해당되는 글 74건
- 가장 열심히 살았던 그때 2012.02.09
- Android OpenCV 환경설정 1 2011.08.17
- 듀 저작 2011.06.22
사실 안드로이드 자체적으로 영상처리를 하면 너무나 느린 탓에 NDK를 알아보게 되었고,
급기야 NDK로 포팅된 OpenCV를 활용하게 되었습니다.
오늘은 우선 환경 설정하는 방법에 대해 자료 정리를 해보겠습니다.
아래의 블로그를 참조하였으며 NDK 최신 버전인 r5c를 이용하여 환경을 구축해보려고 하였으나
빌드시 에러가 발생하여 그냥 r4로 빌드환경을 구축해보았습니다.
참고 : ukzzang's blog
1. Android용 OpenCV 포팅을 위한 준비 단계
- 안드로이드 SDK를 다운
(주의! SVN을 이용해 Android용 OpenCV 받게 되면 Android NDK r4 개발환경에 맞춰져 있습니다)
- Cygwin 다운 (windows에서 가상의 리눅스 콘솔을 사용하게 만들어 주는 프로그램)
- 안드로이드 OpenCV Source 다운
(SVN을 이용하여 checkout : http://android-opencv.googlecode.com/svn/trunk/ )
2. Cygwin 설치
- 설치시 Devel의 항목 아래와 같이 install로 만들어 모두 설치.
- 그리고 Search항목에 vim을 검색하여 설치할 수 있도록 체크해 줍니다.
(Editor : vim )
3. NDK 설치
- 따로 설치할 것은 없고 아무 곳에다가 나둬도 되지만, 저는 C:\cygwin\home\LEE\ 아래에 두었습니다.
LEE는 제 컴퓨터 계정 이름입니다.
4. Windows 환경 설정
- Windows 시스템 등록정보의 고급에서 아래의 path를 추가합니다.
C:\cygwin\usr\sbin;C:\cygwin\bin;C:\cygwin\home\LEE\android-ndk-r4-crystax;
- 위의 환경변수 설정이 완료되었다면 cygwin을 켜주시면 됩니다. 켜놓으셨다면 반드시 재시작 하세요.
5. Android용 OpenCV 빌드하기
- cd /cygdrive/c/cygwin/home/LEE/opencv 로 이동하여 빌드를 합니다.
- sh build.sh (빌드 시작)
- 시간이 조금 많이 걸립니다. 빌드가 완료되면 libopencv.so 파일이 \opencv\android\libs\armeabi에 생성되는데 이 libopencv.so파일을 이용하여 안드로이드에서 opencv를 사용하실 수 있습니다.
6. Android 샘플 테스트
- 테스트는 SVN에서 다운받은 samples 폴더의 CVCamera 프로젝트를 이용합니다.
- Cygwin을 이용하여 CVCamera 폴더로 이동한 뒤 sh build.sh로 빌드한다.
- 빌드가 완료되면 libcvcamera.so 파일이 생성되있을 것 입니다.
- 그럼 이제 이클립스를 켜고 샘플 예제를 돌려보도록 하겠습니다.
- 우선 아래와 같이 CVCamera를 Import 시켜주세요.
- 처음 빌드를 하게되면 처음에는 수도 없이 에러가 날 것입니다.
빌드가 안되는 이유는 OpenCV와 관련된 파일들이 덜 추가되었기 때문인데 아까 android-opencv를 빌드하면서 생성한
android아래에 있는 opencv 폴더의 java파일들을 import시켜줍니다.
- CVCamera\src\com\theveganrobot\cvcamera\ 아래에 있는 jni폴더의 java파일들도 마져 추가를 해줍니다.
패키지 명이 틀리다면 일일히 수정해주시면 됩니다.
- 그리고 libandroid-opencv.so을 위와 같이 libcvcamera.so가 있는 폴더에 넣어주고 빌드를 해주시면 됩니다.
- 그럼 이제 끝이 났군요. 빌드를 해주면 아래와 같은 화면을 보실 수 있습니다.^^
- 수고하셨습니다.
>> 추가 : Windows CMD환경에서 OpenCV를 포팅하려고 하신다면 아래 링크를 참조. http://www.cyworld.com/adorable_man/7785702
출처: http://golee07.tistory.com/349
Xml
- 개체당 클래스(테마, 클래스, 레슨(보케, 비디오, 오디오, html)
UI
V 초기화면 - 프로젝트 생성(이름), 삭제, 수정
V 클래스(이름, 백그라운드이미지) 동적 추가, 콤보, 삭제, 수정
V 레슨(좌표, 이름, 타이틀, 타입, 시간) 동적 추가, 콤보, 삭제, 수정
타입별 화면 출력(voca 팝업, html 위지윅, m 플레이어, a 플레이어)
- 이미지 좌표 Out
- 메인(초기화, 불러오기)
- 테마(중복 체크)
- 클래스(삭제)
- 레슨
- 레슨 타입 수정에 따른 루틴수정 및 xml 이전 파일 삭제
- 중복시 덮을건지
- 메인에서 클래스를 넘겨줘서 각 레슨 편집창에서 참조하여 저장 및 로드하는 방식
으로 수정
- 삭제, 수정
- 아이콘
- 하이퍼링크
- 이미지
- 텍스트칼라
- 백그라운드칼라
- 에디트
- 수정시 이전 xml 파일 삭제
플레이어
- 자막 가져오기
X 자막 텍스트박스 아닌 입력에디트박스
- 시간 추가, 수정, 삭제
- 테스트 플레이(선택영역 이동으로?)
- 테스트 플레이시 어떻게
- 인코딩(mp4)
위지윅
- 상단 툴바 아이콘, 추가(불러오기, 템플릿(많음), 추가
- 테그 정의
- 테그 불러오기
- 프리뷰(Json)
기능
- 프로젝트 폴더 정의및 파싱, 복사
프로젝트 파일
- 프로젝트 생성 루틴(output으로)
- 전체 프로젝트는 xml 기준으로
스토어
- 사용시간, 사용횟수
- 검색키워드 저장
- 개발자웹 링크
- 개발자 메일
- 잠금설정