opencv 이진화 예제
가장 간단한 형태의 임계값을 바이너리 임계값이라고 합니다. 소스 이미지(src) 및 임계값(thresh) 외에도 최대값(maxValue)이라는 또 다른 입력 매개 변수를 사용합니다. 각 픽셀 위치(x,y)에서 픽셀 값 src(x, y)를 thresh로 비교합니다. src (x , y)가 thresh보다 큰 경우 대상 이미지 픽셀 dst (x , y)의 값을 maxValue로 설정하고 그렇지 않으면 0으로 설정합니다. 다음은 의사 코드가 보다 일반적으로 보이는 내용이며, dst(x, y)를 얻기 위해 src(x, y)에 적용되는 상이한 임계값 규칙에 따라 많은 유형의 임계값이 있다. OpenCV에서 사용할 수 있는 다양한 임계값 유형을 살펴보겠습니다. 다른 OpenCV 튜토리얼에 오신 것을 환영합니다. 이 자습서에서는 이미지 및 비디오 분석을 위한 임계값을 다룹니다. 임계값 설정의 개념은 분석을 위해 시각적 데이터를 더욱 단순화하는 것입니다. 먼저 회색 배율로 변환할 수 있지만 그레이스케일에 여전히 255개 이상의 값이 있음을 고려해야 합니다.
가장 기본적인 수준에서 임계값을 기준으로 모든 것을 흰색 또는 검은색으로 변환하는 임계값을 수행할 수 있습니다. 임계값이 125(255점 만점)로 설정한 다음 125 이하의 모든 값이 0 또는 검정색으로 변환되고 125를 초과하는 모든 값이 255 또는 흰색으로 변환되기를 원한다고 가정해 보겠습니다. 평소와 같이 그레이스케일로 변환하면 흰색과 검은색이 됩니다. 당신은 회색 조로 변환하지 않는 경우, 당신은 임계 그림을 얻을 것이다, 그러나 색상이있을 것이다. 그림 9는 입력 이미지에 역임계값을 0으로 적용한 결과를 보여 주며, 이값을 보여 주어도 됩니다. 임계값 아래의 숫자는 그레이스케일 값을 유지하고 임계값 위의 숫자는 경계를 제외한 0입니다. 경계의 아티팩트는 경계의 픽셀 값이 0에서 몇 픽셀에 걸쳐 숫자 값으로 전환되기 때문입니다. 따라서 경계 픽셀 중 일부는 임계값 미만입니다. 그림 7은 입력 이미지에 Truncate 임계값을 적용한 결과를 보여 주며, 임계값(127)을 초과하는 모든 값은 127로 설정되고 127보다 낮거나 같을 모든 값은 변경되지 않습니다. maxValue는 무시됩니다.
응용 프로그램 예: 분석하려는 개체에 해당하는 이미지 영역을 분리합니다. 이러한 분리는 오브젝트 픽셀과 배경 픽셀 간의 강도 변동을 기반으로 합니다. 사용자가 트랙바의 값을 변경할 때마다 임계값_Demo 함수가 호출됩니다.