[안드로이드로 배우는 OpenCV] 특정 색상 영역을 추출하기

만약 다음과 같은 이미지가 있다고 가정할 때 녹색 초콜렛(m&m)만 검출 하고 싶다면 어떻게 해야할까? RGB 색공간에서 녹색영역을 추출한다고 가정해보자. 다음과 같이 각각의 색성분에 대한 범위(Range)를 특정하여 조건에 부합하는 픽셀만 검출하면 된다. 하지만 특정 색상을 검출하기 원한다면 RGB 색공간보다는 HSV 색공간을 더보기…

글쓴이 Charlezz,

RGB, HSV, YUV 색공간 이야기

색공간은 주로 세자리 또는 네자리의 숫자 또는 문자 등으로 색의 특징을 설명하기 위한 수학적 방법이다. 가장 많이 쓰이는 색공간은 RGB, YUV, HSV 등이 있다. 각 색공간의 특징에 대해서 알아보자. RGB RGB는 빛의 삼원색인 빨간색(R), 초록색(G), 파랑색(B)을 의미하며, 이 3가지 색을 더보기…

Android 12 빠르게 살펴보기!

Android12 미리보기 안드로이드 12에 대한 최신 정보는 공식 문서에서 확인할 수 있다. 안드로이드는 전통적으로 메이저 버전에 알파벳 순으로 디저트 이름을 붙여왔다. Pie 이후로는 Q로 시작하는 이름대신 Android10이라 명명했다. 하지만 내부적으로는 여전히 디저트 이름을 붙이고 있다 Queen Cake(or Quince Tart, Android10) 더보기…

mds_store의 CPU 점유율이 갑자기 치솟을 때

  아무것도 안했는데 갑자기 맥이 버벅이기 시작했다. ActivityMonitor를 띄워 CPU 점유율이 높은 프로세스 순으로 나열하니 mds_store가 점유율을 엄청나게 가져가고 있었다.  mds_store가 무엇인지 검색해보니 Spotlight관련 프로세스라고 한다. 아마 백그라운드에서 인덱싱을 하면서 점유율을 엄청 가져가는 것 같은데 잠자기 모드 일때 안하고 왜 더보기…

글쓴이 Charlezz,

[안드로이드로 배우는 OpenCV] 이미지의 논리 연산

이미지는 픽셀들의 집합이며, 하나의 픽셀은 색상에 따라 n바이트로 표현되곤한다. 회색조 이미지의 경우 보통 한 픽셀이 0~255값을 가지는데 값의 경우의수가 256가지인셈이다. 그러면 2^8 = 256 이므로 8bit(1byte)의 메모리가 필요하다. 예) 10101000 두 이미지의 같은 좌표에 있는 픽셀들에 비트 연산을 수행할 수 더보기…

[안드로이드로 배우는 OpenCV] 히스토그램 그리고 스트레칭 및 평활화

히스토그램 히스토그램은 도수분포표를 그래프로 나타낸 것이다. OpenCV에서는 영상의 픽셀 값 분포를 그래프의 형태로 표현한 것을 말한다. OpenCV에서는 calcHist() 함수를 통해 히스토그램을 구할 수 있다. 예제코드를 살펴보자. val images = listOf(src) val channels = MatOfInt(0) //grayscale은 채널이 하나이므로 0 val mask:Mat 더보기…

글쓴이 Charlezz,