Navigation-safeargs 가 Directions 클래스를 생성하지 않는다?

안드로이드 스튜디오에서 ~Directions 클래스를 참조할 수 없다고 나오는데 빌드는 제대로 완료 되는 경우가 있다. 이 경우 Directions가 생성되지 않은 것이 아니라 참조가 되지 않는 것이다. 실제로 build/generated/source/navigation-args 경로에 가보면 Directions 클래스들이 존재하는 것을 확인할 수 있다. 즉, 컴파일 타임에 Directions가 제대로 생성되었지만 참조가 불가능한 경우이기 때문에 간단히 build.gradle에 다음의 내용을 더보기…

[안드로이드로 배우는 OpenCV] 이미지의 픽셀 처리 및 밝기 조절하기

이미지 밝기 조절하기 아래 이미지와 같이 원본이미지의 밝기를 조절하는 방법에 대해서 알아본다. 픽셀 처리하기 이미지를 밝게 하거나 어둡게 하기 위해서는 각 픽셀에 대한 특정 연산을 해줘야한다. 이미지는 여러 픽셀들로 구성되며 픽셀의 총 갯수는 다음과 같이 구할 수 있다. 이미지의 가로 길이 * 이미지의 세로 길이 = 총 픽셀 갯수 일반적인 더보기…

디지털 카메라 센서 이해하기

디지털 카메라와 이미지 센서 DSLR(Digital Single-Lens Reflex)은 디지털 일안 반사식 카메라를 의미하며, 미러리스는 내부의 미러 및 펜타프리즘을 제거하여 크기와 무게를 줄인 카메라를 의미한다. 이 두 카메라 모두 렌즈를 통해 빛을 받고 이미지 센서를 통해 기록된다. 이미지 센서의 종류  이미지 센서의 종류는 크게 CCD와 CMOS로 나뉜다. CCD와 CMOS의 차이점을 잘 더보기…

[안드로이드로 배우는 OpenCV] VideoCapture 클래스 사용하기

VideoCapture 사용하기 OpenCV에서는 카메라 영상 및 동영상 파일에서 프레임을 가져오는 작업을 VideoCapture 하나로 처리한다.   카메라 또는 비디오 열기 // 카메라 불러오기, 안드로이드는 적용되지 않음. val videoCapture = VideoCapture(index, apiPreferences) // 또는 val videoCapture = VideoCapture() camera.open(index, apiPreferences) // 비디오 불러오기 val videoCapture = VideoCapture(filePath, apiPreferences) // 또는 val videoCapture 더보기…

Jetpack Compose의 등장배경을 알아보자.

Jetpack Compose는 네이티브 Android UI를 빌드하기 위한 최신 선언형 UI 툴킷이다. Jetpack Compose는 적은 수의 코드, 강력한 도구 및 직관적인 Kotlin API로 Android에서의 UI 개발을 간소화하고 가속화한다. Declarative UI Programming? 선언형 UI프로그래밍(Declarative UI Programming)은 기존의 명령형 UI 프로그래밍과 달리 View의 상태(State)만 선언하고 자세한 구현은 프레임워크에게 맡기는 방법을 의미한다. 왜 Compose가 더보기…

macOS의 애플리케이션에 하드웨어 접근 권한 부여하기

Big Sur+VSCode 환경에서 OpenCV의 VideoCapture 클래스를 사용하여 카메라에 접근하려고 하는데 권한이 없다고 나온다. 권한을 부여하기 위해 System Preferences > Security & Privacy > Privacy > Camera 탭 을 열어서 애플리케이션 목록을 확인해도 VS Code는 Camera 관련 앱이 아니기 때문에 목록에 나오지 않는 듯 하다. macOS에서 애플리케이션의 권한목록은 데이터베이스로 관리 되고 더보기…

[안드로이드로 배우는 OpenCV] 선, 사각형, 원 그리기

OpenCV에서는 몇가지 그리기 함수를 제공한다. 각 그리기 함수에 대해서 알아보고 안드로이드용 예제를 만들어본다. 직선 그리기 line(img, pt1, pt2, color, thickness, lineType, shift) img: 그림을 그릴 영상 pt1: 시작점 pt2: 끝점 color: 선 색상 (B,G,R)  thickness: 선 두께 lineType: 선 타입; LINE_8(기본값), LINE_4, LINE_AA shift: 그리기 좌표 값의 축소 비율. 기본값은 더보기…

URI랑 URL 차이점이 뭔데?

URI 그리고 URL을 혼용해서 사용하는 경우가 있다. 대부분의 경우 문제가 없지만 정확하게 이 둘의 차이점이 존재한다. 그러므로 각 용어의 정의와 용도에 대해서 알아본다. URI URI는 특정 리소스를 식별하는 통합 자원 식별자(Uniform Resource Identifier)를 의미한다. 웹 기술에서 사용하는 논리적 또는 물리적 리소스를 식별하는 고유한 문자열 시퀀스다. URL URL은 흔히 웹 주소라고도 더보기…

안드로이드 개발자의 영어 단어 공부 – 4주차 —

Vocab next-door neighbor : 옆집 neighbor: 이웃 neighborhood:  동네  oyster: 굴 oyster farm : 굴 양식장 crypto-currentcy : 암호화폐 Graphic card price is rising continuously due to cryptocurrency 암호화폐 때문에 그래픽 카드 값이 계속 올라요. encrypted : 암호화 되어있는 Your account information is encrypted for privacy reasons 사생활 문제로 당신의 더보기…

ROI와 마스크

관심영역(ROI;Region Of Interest) 이란?  관심 영역 (ROI)은 이미지 분석 위해 한 이미지 내에서 선택되어진 일부 영역을 말한다. 추가적인 이미지 처리가 필요할 때 이 영역에 집중할 수 있게 된다.  일상생활에서 예시를 찾아보자. 코로나로 인해 QR코드 스캐너를 어디에서나 볼 수 있다. 실제 카메라에 들어오는 영상이라는 것은 연속되는 정지된 이미지다. 하나의 이미지는 여러개의 더보기…