0

비디오 시퀀스에서 스트라이프 패턴을 식별해야합니다.OpenCV - 비디오 프레임의 규칙적인 패턴 확인

OpenCVHoughlines 함수를 사용하여 패턴의 선을 감지하려고합니다. 일단 내가 Houghlines (GREEN_lines)을 가지고 있다면 나는 서로에게 가장 가까운 줄을 알고 다른 모든 것을 버려야한다. 또한 이미지에 어두운 (RED_line) 및 밝은 (BLUE_line) 줄무늬가 얼마나 많은지 알아야합니다.

그럼 나는 Houghlines에 의해 형성된 각 "상자"안의 영역의 평균 휘도를 알아야합니다.

Scheme of detection

패턴은 서로 다른 각도 (오른쪽 화상)의 비디오 프레임들에서 나타날 수있다.

제안 사항?

답변

0

검출 된 k 라인에 대해 허프 변환을 적용하여 얻은 라인을 L1, L2, ..., Lk라고 가정합니다. 각 선 Li를 2 점 ((x1i, y1i), (x2i, y2i))로 표현하자.

먼저 어떤 선이 평행하고 서로 직각인지 확인하십시오. 각 쌍의 선에 대한 단위 방향 벡터 사이의 내적을 계산하여이를 수행 할 수 있습니다. 서로 수직 인 선 쌍은 점 곱이 0 (또는 노이즈/수치 오류로 인해 선이 정확히 수직이 아닐 수 있으므로 0에 가깝습니다)이고 평행선 인 경우 내적은 1에 가까워집니다.

어떤 선이 평행하고 수직인지 알았 으면 x 좌표 ("수직선") 또는 y 좌표 (2 "수평선")를 기준으로 정렬 할 수 있습니다.

이제 각 "수직"선과 각 "수평선"사이의 교차점을 해결해야합니다.이 교차점은 작은 대수와 기하학을 사용하여 얻을 수 있습니다.

이러한 점과 선을 사용하여 이미지에서 원하는 값 (예 : 각 상자 내의 휘도)을 계산하는 마스크를 만들 수 있습니다. 정렬 된 선은 또한 서로 가장 가까운 선을 알려줍니다.