나는 간단한 모양의 집합을 가지고 있으며 (다음 그림 참조) 나는 필기 모양을 인식하고 그것이 어떤 모양을 그려야 하는지를 알고 싶다.간단한 필기 모양을 인식하는 방법?
간단한 알고리즘이 있습니까? 아니면 어떤 오픈 소스 lib?
나는 작업이 간단하므로 OpenCV와 같이 너무 복잡한 라이브러리를 사용하지 않습니다.
감사합니다.
나는 간단한 모양의 집합을 가지고 있으며 (다음 그림 참조) 나는 필기 모양을 인식하고 그것이 어떤 모양을 그려야 하는지를 알고 싶다.간단한 필기 모양을 인식하는 방법?
간단한 알고리즘이 있습니까? 아니면 어떤 오픈 소스 lib?
나는 작업이 간단하므로 OpenCV와 같이 너무 복잡한 라이브러리를 사용하지 않습니다.
감사합니다.
이것은 본질적으로 라인 감지
그것은 단지 직선 모양을 위해 작동하고, 더 간단한 의미가없는 것입니다.
그림에 k 개의 선분이 있다고 가정하고 k- 평균 알고리즘을 사용하여 점을 선으로 집계하십시오.
먼저 포인트를 임의로 클러스터로 나눕니다.
각 클러스터에 대해 점이 근사하고있는 선을 계산하십시오. 포인트까지의 모든 거리의 합이 최소 인 라인
아웃 라이어 (라인에서 가장 먼 포인트)는 더 잘 맞는 다른 클러스터에 재 할당해야합니다. 당신이 하나를 도달 할 경우, 당신은 당신이 그 라인의 교차점을 계산 등을 추출 할 수 있습니다 K
의 다른 값을 시도 할 수 원하는 임계 값에 도달하지 않는 경우 특정 임계 값까지
를 반복 마지막 단계는
에 도달 불규칙한 모양을 정규 모양과 일치시키는 데 필요한 속성.
당신은 사각형으로부터 삼각형을 그리고 평행 사변형으로부터 사각형을 이런 식으로 말할 수 있습니다. 그러나 그것은 매우 복잡합니다.
이 "알고리즘"은 구불 구불 한 선, 점선 또는 선이 교차하지 않는 모양에서 작동하므로 상당히 견고합니다.
오픈 소스 라이브러리가 있습니까? – iCoder
나는 C 나 C++로하는 법을 모르지만, 알고리즘은 간단하다. 성공 비율은 모양에 추가 된 각 각도에 따라 줄어들지 만 위에 제시 한 기본 모양을 인식하는 데는 좋지만 많지는 않습니다.
물론 은 완전히 일 수는 없습니다. 두 번째 예제 모양이 기울어 진 평행 사변형 또는 기울어 진 사각형 (또는 다이아몬드 또는 직사각형)인지 여부도 알 수 없습니다.
코너 감지가 그렇게 간단하지 않다는 느낌이 들었습니다. 대각선 (모서리가 없음)이 있고, 왼쪽에서 상자로 들어가서 아래쪽을 빠져 나왔다면 어떨까요? –
나는 그것이 단순화되었다는 것을 인정하지만 일반적으로 대각선과 모서리의 차이를 쉽게 알 수있다. – Ryan
이것은 "간단한 작업"이 아닙니다. 특히 직접 작성하려는 경우 연산. 그것을 빨아 들이고 OpenCV 사용법을 배우면 어렵지 않습니다. –