ROI는 사각형으로 만 구현할 수 있습니다. 그러나 ROI로 설정하려는 윤곽이 있습니다. 누구든지 직사각형이 아닌 ROI로 윤곽선을 사용하는 방법을 알고 있습니까?OpenCV에서 ROI 사용?
가능하지 않은 경우 내 윤곽을 특정 윤곽의 픽셀로만 집중시킬 수 있습니까?
감사
PS :이 모든 OpenCV의 질문에 죄송합니다. 정말 혼란 스럽네요. $
ROI는 사각형으로 만 구현할 수 있습니다. 그러나 ROI로 설정하려는 윤곽이 있습니다. 누구든지 직사각형이 아닌 ROI로 윤곽선을 사용하는 방법을 알고 있습니까?OpenCV에서 ROI 사용?
가능하지 않은 경우 내 윤곽을 특정 윤곽의 픽셀로만 집중시킬 수 있습니까?
감사
PS :이 모든 OpenCV의 질문에 죄송합니다. 정말 혼란 스럽네요. $
OpenCV는 직사각형 ROI 만 지원합니다.
그러나 특정 픽셀에 대해 일부 처리를 수행하려면 몇 가지 도우미 함수를 사용할 수 있습니다.
그 중 하나는 pointPolygonTest()입니다.이 픽셀은 주어진 픽셀이 다각형이 아니라 속해 있다는 것을 알려줍니다.
그래서 당신은 또한 또 다른 (빠른) 옵션 @ andeas-haferburg에 의해 sugested 하나입니다이 샘플 http://opencv.itseez.com/doc/tutorials/imgproc/shapedescriptors/point_polygon_test/point_polygon_test.html#point-polygon-test
을 확인
for(i=0;i<height;i++)
{
for(j=0;j<width;j++)
{
if(pointPolygonTest(Point(i,j),myPolygon))
{
// do some processing
}
}
}
같은 것을 쓸 수 있습니다. (그 배경은 0이며, 다각형이 255 정도)
drawPoly()
, 그럼 당신은 몇 가지 다른 기능에 전달하거나 직접 사용할 수 있습니다 : : 새로운 그레이 스케일 이미지에 다각형을 그림으로 마스크를 확인
을for(i=0;i<height;i++)
{
for(j=0;j<width;j++)
{
if(mask[j+w*i]))
{
// do some processing
}
}
}
위 예제는 의사 코드 일 뿐이므로이를 작동시켜야합니다.
많은 도움을 주셔서 감사합니다. – user1017485
@ user1017485 어떻게 할 지 알아 냈습니까? 비슷한 문제가 있습니다. – Mzk
@ user1017485 이것을 알아 냈습니까? 나는 또한 이것을하는 방법을 알고 싶다. – bearzk
제목에 오타가 있습니다. 또한 대부분의 OpenCV 함수는 마스크 매개 변수를 가지며 마스크가 특별한 값을 갖는 입력 영역에서만 작동합니다. 당신이 실제로하고 싶은 것은 무엇입니까? –
사전 정의 된 윤곽의 픽셀에 히스토그램 역 투영을 사용하고 싶습니다. 기본적으로 채워진 윤곽선의 흑백 마스크를 만든 다음 히스토그램 역 투영을 사용하려는 이미지의 마스크로 사용합니다. – user1017485
컨투어를 사용하여 마스킹하기 전에 윤곽선의 픽셀을 얻지 않으려면 (윤곽선 그리기 - 검정색을 흰색으로 한 다음 원본 이미지의 마스크로 사용) 분명히 갈 수 있습니다. – AruniRC