ndk-build를 사용하여 안드로이드 프로젝트에 OpenCV 라이브러리를 추가하는 과정 및 OpenCV를 사용하여 카메라 영상을 그레이스케일로 변경하는 방법을 설명합니다. 현재 Android Studio에서 공식으로 지원하는 방식은 CMake를 사용하는 방식입니다. Android NDK + CMake + OpenCV 카메라 예제 및 프로젝트 생성방법 https://webnautes.tistory.com/1992 2016. 05. 07 최초작성 ~~~~~~~~~~~~~~~ 2020. 02. 16 OpenCV 4.2.0, Android 10.0 2020. 06. 27 Android Studio 4.0, OpenCV 4.3.0, Android 10.0 2021 04. 08 Android Studio 4.1...
Android NDK와 OpenCV를 사용하여 갤러리에 있는 이미지를 불러와 영상처리하는 예제입니다. 바를 이용하여 Canny의 스레숄드를 변경하면 바로 결과를 볼 수 있습니다. 2016.12.16 최초작성 . . . . 2019. 2. 8. 갤러리에서 이미지 불러오도록 수정 2019. 5. 5. 스레숄드 조정할 수 있는 바를 추가 2020. 9. 22 androidx 관련 수정 2023. 11. 26 . 외장 저장공간 접근 권한을 사용하기 때문에 처음 실행하면 권한 요청을 합니다. 상단에 보이는 디폴트 이미지를 클릭하면 갤러리에서 이미지를 불러올 수 있습니다. 이미지를 불러올 때 사용할 앱을 선택합니다. 갤러리에서 이미지를 선택합니다. 상단에 갤러리에서 선택한 이미지가 보입니다. 에지 검출하기를 선택하..
NDK를 지원하는 안드로이드 프로젝트를 생성한 후, OpenCV 라이브러리를 추가하여 사용하는 방법을 설명합니다. 간단한 예제로 OpenCV Java API에서 캡처한 영상을 OpenCV C++ API에서 그레이스케일 영상으로 변환하고 다시 OpenCV Java API에서 화면에 보여줍니다. 아래 히스토리에 명시된 버전과 다른 버전 사용시 문제가 발생할 가능성이 있습니다. 2016.11.20 : 최초 작성 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2019. 8. 8 OpenCV 4.1.1를 위해 카메라 코드를 수정하고 android.support 대신에 androidx를 사용합니다. 2020. 1. 19 OpenCV ..
OpenCV 배포시 포함되어 있는 얼굴 검출 C++코드를 NDK를 이용하여 Android에서 동작하도록 수정하였습니다. 안드로이드 + NDK 카메라 기본코드에 단순히 C++코드만 옮겨오면 되는 줄 알았는데 고려해야 하는게 생각보다 많군요.. 사용한 C++ 코드는 다음 위치에서 가져왔습니다. https://github.com/opencv/opencv/blob/master/samples/cpp/tutorial_code/objectDetection/objectDetection.cpp 다음 순서로 설명합니다. 1. 프로그램 흐름 및 실행결과 2. 코드 수정 및 사용방법 3. 캡쳐 버튼 추가하기 4. 검출된 얼굴 갯수 반환받기 26으로 낮추어서 다시 해보기 2016. 12. 09 최초작성 2019. 08. 15 ..
Android용으로 OpenCV 4.4.0을 빌드하는 방법을 다룹니다. 2018. 11. 19 : 최초 작성2019. 5. 8 2019. 5. 15 : contrib 추가2019. 5. 16 : nonfree 옵션 추가 (surf 사용시 필요)2019. 5. 16 : opencl 활성화 2019. 8. 14 : OpenCV 4.1.1을 빌드 2020. 9. 27 : OpenCV 4.4.0을 빌드 테스트 환경 Windows 10OpenCV 4.4.0Android Studio 4.0.1Android 10.0+ (R), API 30NDK 21.3 참고 https://stackoverflow.com/questions/52886556/how-to-rebuild-opencv-with-c-static http://a..
OpenCV의 딥러닝 모듈을 사용하여 안드로이드폰에서 딥러닝 네트워크를 실행하는 방법을 소개합니다. MobileNet-SSD detection network를 caffee로 구현한 것을 안드로이드 폰에서 실행시켜 봅니다. OpenCV 튜토리얼을 참고하여 진행했습니다. How to run deep networks on Android devicehttps://docs.opencv.org/master/d0/d6c/tutorial_dnn_android.html MobileNet-SSD detection network를 caffee로 구현한 것을 안드로이드 폰에서 실행시켜 봅니다. 영상에서 다음 21가지를 인식합니다. private static final String[] classNames = {"backgrou..
안드로이드에서 Surf를 사용하여 이미지를 매칭하는 예제입니다. 우선 다음 포스트 내용을 진행하여 안드로이드용 OpenCV를 새로 빌드해서 사용해야 합니다. Android용 OpenCV 빌드하는 방법(contrib 포함) https://webnautes.tistory.com/1268 이후 다음 영상을 따라 진행하세요.. 1. styles.xml false true 2. activity_main.xml 3. image.svg 4. AndroidManifest.xml 5. MainActivity.java androidx라면 다음 세줄을 수정하세요. androidx의 경우에는 새로 추가된 OpenCV 4.1.1 빌드후에만 동작할 수도 있습니다. 변경전 import android.support.annotatio..
카메라로부터 캡처된 영상에 관심영역(ROI)을 지정하여 영상처리 하는 예제입니다. 위치는 텍스트로된 코드에서 확인하고 코드 복사는 코드블록에 있는 것을 사용하세요. 업데이트 2019. 5. 11 유튜브 영상 또는 아래 글을 보고 진행하세요. 아래 포스팅 진행한 후 필요한 부분을 추가해서 완성합니다. Android NDK + OpenCV 카메라 예제 및 프로젝트 생성방법(CMake 사용) https://webnautes.tistory.com/1054 추가 1 : MainActivity.java public class MainActivity extends AppCompatActivity implements CameraBridgeViewBase.CvCameraViewListener2, View.OnTouchL..