Search

cognet.1.4.1_1. title: ‣

🚀 prev note
♻️ prev note
🚀 next note
♻️ next note
17 more properties
논하는 세부 주제들 개요 MAX 25 links
전체 날짜 보기
안녕하세요 파트장님, @9/26/2022 는 부실장님께서 주신 태스크와 관련해서 이리저리 알아보느라 시간을 쓰지 못했습니다. @9/27/2022 고민했던 내용은 다음과 같습니다.
1.
우선 아래와 같은 형태(concave)의 polygon 을 어떻게 처리해야 하는가에 대한 고민을 했습니다. 아래 그림과 같은 상황의 IoU 를 효율적으로 산출하는 로직을 알아보던 일을 멈추고 현실에서 concave 한 polygon 형태로 레이블링하는 경우가 얼마나 많은지 먼저 확인했습니다. 70만개의 gt 데이터 컬럼에 대해 concave 한 형태로 레이블링된 polygon 이 존재하는지 확인했을 때, 존재하지 않음을 확인했습니다. 다른 과제들이 아직 많이 남은만큼 concave polygon 이 입력되지 않는 경우만을 고려할 예정입니다.
이러한 형태의 polygon 을 concave 한 polygon 이라고 부른다. 하지만 @9/27/2022, 11:08:00 AM 적어도 GT 데이터셋에서는 concave 한 polygon 이 발견되지 않았다.
2.
순수하게 python 으로 구현된 iou 와 이런저런 라이브러리를 사용한 iou 의 속도를 비교해 보았습니다. 답답하다고 생각하실수도 있겠다는 생각을 했음에도 이 과정을 꼭 거쳐야겠다고 생각했던 이유는, python 의 몇몇 라이브러리는 이미 로우레벨에서 상당한 수준으로 최적화되어 래핑이 되어 배포되는 것으로 알고 있는데 이것보다 로우레벨 언어에서 더 최적화를 잘 할 수 있는 여지가 있을지, 있다면 어떤 부분에 초점을 맞추어야 하는지를 먼저 확인할 필요가 있다고 생각했기 때문입니다. 한번도 안해본 작업이라 확신을 하고 넘어가고 싶었습니다. 이와 관련해 얻은 결론은 아래의 글과 같습니다.
위 작업을 마친 뒤 지금 하고 있는 일은 다음과 같습니다.
라이브러리를 제거하고 순수 python 로 구현하는 일을 하고 있습니다. (원래 @9/23/2022 에 잠깐 하다가 말았던 작업인데, 오늘 내용들을 검증하고 다시 재개했습니다) CCW 을 이용해 prediction polygon 과 gt polygon 선분의 교점, 꼭짓점의 포함관계를 파악하고 intersection polygon 의 면적을 계산하는 방법을 사용할 예정입니다.
이렇게 만들어진 코드로 최대한의 성능을 끌어올려볼 예정입니다. common case fast 원칙을 지키며 함수 단위로 여러 프로세스를 동작시켜 시간을 단축시킬 수 있는 부분이 어떤 부분일지 살펴볼 생각입니다.
기존 개요가 마음에 들지 않아서 엔트리를 다음과 같이 변경한다.