KR102265980B1 - 선박 및 항만 모니터링 장치 및 방법 - Google Patents

선박 및 항만 모니터링 장치 및 방법 Download PDF

Info

Publication number
KR102265980B1
KR102265980B1 KR1020200003190A KR20200003190A KR102265980B1 KR 102265980 B1 KR102265980 B1 KR 102265980B1 KR 1020200003190 A KR1020200003190 A KR 1020200003190A KR 20200003190 A KR20200003190 A KR 20200003190A KR 102265980 B1 KR102265980 B1 KR 102265980B1
Authority
KR
South Korea
Prior art keywords
vessel
image
points
distance
pair
Prior art date
Application number
KR1020200003190A
Other languages
English (en)
Inventor
박별터
김한근
김동훈
Original Assignee
씨드로닉스(주)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 씨드로닉스(주) filed Critical 씨드로닉스(주)
Priority to KR1020200003190A priority Critical patent/KR102265980B1/ko
Priority claimed from PCT/KR2021/000036 external-priority patent/WO2021141338A1/ko
Application granted granted Critical
Publication of KR102265980B1 publication Critical patent/KR102265980B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G3/00Traffic control systems for marine craft
    • G08G3/02Anti-collision systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery

Abstract

본 발명은 컴퓨팅 수단에 의해 수행되는 항만 모니터링 방법에 관한 것으로, 일 실시예에 따른 항만에 설치되어 이미지를 촬상하는 카메라를 이용하여 바다 및 선박을 포함하는 항만 이미지를 획득하는 단계; 상기 항만 이미지로부터 상기 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 제1 포인트들 및 상기 선박의 선수 및 선미에 대응하는 한 쌍의 제2 포인트들을 추출하는 단계; 상기 한 쌍의 제1 포인트들에 기초하여 상기 선박의 선수와 안벽 사이의 거리인 선수 거리 및 상기 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 상기 선박의 접안 관련 정보를 획득하는 단계; 및 상기 한 쌍의 제2 포인트들에 기초하여 상기 선박의 다른 선박과의 거리를 포함하는 상기 선박의 충돌 관련 정보를 획득하는 단계; 를 포함하고, 상기 충돌 관련 정보를 획득하는 단계는, 상기 항만 이미지에 다른 선박이 포함된 경우 상기 한 쌍의 제2 포인트들 중 상기 다른 선박과 더 가까운 상기 하나의 제2 포인트에 기초하여 상기 선박과 상기 다른 선박 사이의 거리를 획득하는 단계를 포함하는 항만 모니터링 방법을 개시한다.

Description

선박 및 항만 모니터링 장치 및 방법{DEVICE AND METHOD FOR MONITORING SHIP AND PORT}
본 발명은 선박 및 항만 모니터링 모니터링 장치 및 방법에 관한 것으로, 구체적으로 이미지에 기초하여 선박 및 항만 모니터링을 수행하는 장치 및 방법에 관한 것이다.
최근 선박의 운항 및 항만 내에서의 접안, 이안에 있어 많은 사고가 발생하고 있다. 주로 접안 시, 선박 주변이나 항만 내의 상황을 영상을 통해서 정확하게 확인하지 못하는 점에 의해 발생하는 사고가 많다.
이에 종래에는 ECDIS, radar 등의 다양한 종류의 센서를 이용해 접안을 지원하고 있으나, ECDIS의 경우 GPS의 부정확성, AIS의 업데이트 주기 및 AIS 미등록 이동체 등으로 인한 한계가 존재하고, radar의 경우 비탐색영역의 존재 및 노이즈로 인한 한계가 존재한다.
따라서, 실질적으로 접안 시 선박 주변이나 항만 내의 상황을 영상을 통해 모니터링 하는 기술에 대한 기술 개발이 필요한 실정이다.
본 명세서의 해결하고자 하는 일 과제는, 선박 주변 및 항만을 모니터링하기 위한 선박 및 항만 모니터링 장치 및 방법을 제공하는 것에 있다.
본 명세서의 해결하고자 하는 다른 일 과제는, 이미지에 기초하여 선박의 접안을 보조하고, 선박의 충돌을 방지하는 선박 및 항만 모니터링 장치 및 방법을 제공하는 것에 있다.
본 명세서의 해결하고자 하는 다른 일 과제는 이미지 세그멘테이션을 이용하는 선박 및 항만 모니터링 장치 및 방법을 제공하는 것이다.
본 명세서가 해결하고자 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세서의 일 양상에 따르면, 컴퓨팅 수단에 의해 수행되는 항만 모니터링 방법으로, 항만에 설치되어 이미지를 촬상하는 카메라를 이용하여 바다 및 선박을 포함하는 항만 이미지를 획득하는 단계, 상기 항만 이미지로부터 상기 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 제1 포인트들 및 상기 선박의 선수 및 선미에 대응하는 한 쌍의 제2 포인트들을 추출하는 단계, 상기 한 쌍의 제1 포인트들에 기초하여 상기 선박의 선수와 안벽 사이의 거리인 선수 거리 및 상기 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 상기 선박의 접안 관련 정보를 획득하는 단계 및 상기 한 쌍의 제2 포인트들에 기초하여 상기 선박의 다른 선박과의 거리를 포함하는 상기 선박의 충돌 관련 정보를 획득하는 단계를 포함하고, 상기 충돌 관련 정보를 획득하는 단계는 상기 항만 이미지에 다른 선박이 포함된 경우 상기 한 쌍의 제2 포인트들 중 상기 다른 선박과 더 가까운 상기 하나의 제2 포인트에 기초하여 상기 선박과 상기 다른 선박 사이의 거리를 획득하는 단계를 포함하는 항만 모니터링 방법이 제공될 수 있다.
또한 본 명세서의 다른 일 양상에 따르면, 컴퓨팅 수단에 의해 수행되는 선박의 항만 모니터링 방법으로, 항만에 설치되어 이미지를 촬상하는 카메라를 이용하여 바다 및 선박을 포함하는 항만 이미지를 획득하는 단계, 입력 이미지 및 상기 입력 이미지에 포함된 바다, 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 상기 항만 이미지로부터 상기 오브젝트들에 대한 세그멘테이션 이미지를 생성하는 단계, 상기 세그멘테이션 이미지의 선박을 지시하는 클래스 값이 할당된 선박의 영역이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 제1 포인트들을 추출하는 단계 및 상기 한 쌍의 제1 포인트들에 기초하여 상기 선박의 선수와 안벽(pier) 사이의 거리인 선수 거리 및 상기 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 상기 선박의 접안 관련 정보를 획득하는 단계를 포함하고 상기 선박의 접안 관련 정보를 획득하는 단계는 상기 한 쌍의 제1 포인트들 중 하나의 제1 포인트에 기초하여 상기 선박의 상기 선수 거리를 획득하는 단계 및 상기 한 쌍의 제1 포인트들 중 다른 하나의 제1 포인트에 기초하여 상기 선박의 상기 선미 거리를 획득하는 단계를 포함하는 항만 모니터링 방법이 제공될 수 있다.
또한 본 명세서의 다른 일 양상에 따르면 항만에 설치되어 이미지를 촬상하는 카메라, 상기 카메라가 촬상한 바다 및 선박을 포함하는 항만 이미지를 획득하고, 상기 항만 이미지로부터 상기 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 제1 포인트들 및 상기 선박의 선수 및 선미에 대응하는 한 쌍의 제2 포인트들을 추출하고, 상기 한 쌍의 제1 포인트들에 기초하여 상기 선박의 선수와 안벽(pier) 사이의 거리인 선수 거리 및 상기 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 상기 선박의 접안 관련 정보를 획득하고, 상기 한 쌍의 제2 포인트들에 기초하여 상기 선박과 다른 선박 사이의 거리를 포함하는 상기 선박의 충돌 관련 정보를 획득 - 상기 충돌 관련 정보의 획득은 상기 항만 이미지에 다른 선박이 포함된 경우 상기 한 쌍의 제2 포인트들 중 상기 다른 선박과 더 가까운 상기 하나의 제2 포인트에 기초하여 상기 선박과 상기 다른 선박 사이의 거리를 획득하는 것을 포함함 - 하는 제어 모듈 및 상기 접안 관련 정보 및/또는 상기 충돌 관련 정보를 원격 위치한 단말기에 전송하는 통신 모듈을 포함하는 항만 모니터링 장치가 제공될 수 있다.
본 명세서의 과제의 해결 수단이 상술한 해결 수단들로 제한되는 것은 아니며, 언급되지 아니한 해결 수단들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세서의 일 실시예에 의하면, 선박 및 항만 모니터링 장치 및 방법을 이용하여 선박 주변 및 항만을 모니터링할 수 있다.
본 명세서의 일 실시예에 의하면, 이미지에 기초하여 접안 시 선박의 접안을 보조하고, 선박의 충돌을 방지할 수 있다.
본 명세서의 일 실시예에 의하면, 이미지 세그멘테이션을 이용하여 선박에 대한 정보를 정확하게 산출함으로써 선박 및 항만 모니터링을 수행할 수 있다.
본 발명의 효과가 상술한 효과들로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
도 1은 일 실시예에 따른 이미지 기반 모니터링에 관한 도면이다.
도 2는 일 실시예에 따른 항만 모니터링 장치에 관한 도면이다.
도 3 및 도 4는 일 실시예에 따른 항만 모니터링 장치의 실시예에 관한 도면이다.
도 5는 일 실시예에 따른 시야각 및 피사계 심도에 관한 도면이다.
도 6 및 도 7은 일 실시예에 따른 센서 모듈의 설치 위치에 관한 도면이다.
도 8은 일 실시예에 따른 이미지 분석에 관한 도면이다.
도 9 내지 도 11은 일 실시예에 따른 오브젝트 인식 단계에 관한 도면이다.
도 12 및 도 13은 일 실시예에 따른 인공 신경망의 학습 단계 및 추론 단계에 관한 도면이다.
도 14 및 도 15는 일 실시예에 따른 오브젝트의 위치/이동 정보 추정에 관한 도면이다.
도 16은 일 실시예에 따른 항만 모니터링의 순서도이다.
도 17은 일 실시예에 따른 접안 모니터링 및 충돌 모니터링에 관한 순서도이다.
도 18은 일 실시예에 따른 접안 관련 정보의 획득을 위한 포인트 추출의 일 예에 관한 도면이다.
도 19는 일 실시예에 따른 접안 관련 정보의 획득을 위한 포인트 추출의 다른 예에 관한 도면이다.
도 20은 일 실시예에 따른 충돌 관련 정보의 획득을 위한 포인트 추출의 일 예에 관한 도면이다.
도 21은 일 실시예에 따른 충돌 관련 정보의 획득을 위한 포인트 추출의 다른 예에 관한 도면이다.
도 22는 일 실시예에 따른 항만 모니터링을 위한 포인트들의 추출의 일 예에 관한 도면이다.
도 23은 일 실시예에 따른 접안 관련 정보 획득의 일 예에 관한 도면이다.
도 24는 일 실시예에 따른 충돌 관련 정보 획득의 일 예에 관한 도면이다.
도 25는 일 실시예에 따른 충돌 관련 정보 획득의 다른 예에 관한 도면이다.
도 26 및 도 27은 일 실시예에 따른 선박의 선수/선미 구별에 관한 도면이다.
도 28 및 도 29는 일 실시예에 따른 시점 변환에 관한 도면이다.
도 30은 일 실시예에 따른 복수의 이미지에 기초한 이미지 기반 모니터링에 관한 도면이다.
도 31은 일 실시예에 따른 이미지 융합에 관한 도면이다.
도 32는 일 실시예에 따른 RGB 이미지의 위치/이동 정보 보정에 관한 도면이다.
도 33은 일 실시예에 따른 라이다 이미지에 기초한 위치/이동 정보 보정에 관한 순서도이다.
본 명세서에 기재된 실시예는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 본 발명의 사상을 명확히 설명하기 위한 것이므로, 본 발명이 본 명세서에 기재된 실시예에 의해 한정되는 것은 아니며, 본 발명의 범위는 본 발명의 사상을 벗어나지 아니하는 수정예 또는 변형예를 포함하는 것으로 해석되어야 한다.
본 명세서에서 사용되는 용어는 본 발명에서의 기능을 고려하여 가능한 현재 널리 사용되고 있는 일반적인 용어를 선택하였으나 이는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자의 의도, 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 다만, 이와 달리 특정한 용어를 임의의 의미로 정의하여 사용하는 경우에는 그 용어의 의미에 관하여 별도로 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가진 실질적인 의미와 본 명세서의 전반에 걸친 내용을 토대로 해석되어야 한다.
본 명세서에 첨부된 도면은 본 발명을 용이하게 설명하기 위한 것으로 도면에 도시된 형상은 본 발명의 이해를 돕기 위하여 필요에 따라 과장되어 표시된 것일 수 있으므로 본 발명이 도면에 의해 한정되는 것은 아니다.
본 명세서에서 본 발명에 관련된 공지의 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에 이에 관한 자세한 설명은 필요에 따라 생략하기로 한다.
본 명세서에서 사용되는 '항만 이미지' 라는 용어는 항만과 관련된 이미지로 이해될 수 있으며, 예를 들어, 항만 이미지는 항만에 설치된 카메라를 통해 촬상된 이미지, 항만의 적어도 일부가 포함된 이미지 등을 포함할 수 있다.
본 명세서의 일 양상에 따르면, 컴퓨팅 수단에 의해 수행되는 항만 모니터링 방법으로, 항만에 설치되어 이미지를 촬상하는 카메라를 이용하여 바다 및 선박을 포함하는 항만 이미지를 획득하는 단계; 상기 항만 이미지로부터 상기 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 제1 포인트들 및 상기 선박의 선수 및 선미에 대응하는 한 쌍의 제2 포인트들을 추출하는 단계; 상기 한 쌍의 제1 포인트들에 기초하여 상기 선박의 선수와 안벽(pier) 사이의 거리인 선수 거리 및 상기 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 상기 선박의 접안 관련 정보를 획득하는 단계; 및 상기 한 쌍의 제2 포인트들에 기초하여 상기 선박의 다른 선박과의 거리를 포함하는 상기 선박의 충돌 관련 정보를 획득하는 단계; 를 포함하고, 상기 충돌 관련 정보를 획득하는 단계는, 상기 항만 이미지에 다른 선박이 포함된 경우 상기 한 쌍의 제2 포인트들 중 상기 다른 선박과 더 가까운 상기 하나의 제2 포인트에 기초하여 상기 선박과 상기 다른 선박 사이의 거리를 획득하는 단계를 포함하는 항만 모니터링 방법이 제공될 수 있다.
여기서, 상기 추출하는 단계는 상기 항만 이미지로부터 상기 선박에 대응하는 영역을 획득하는 단계, 상기 선박에 대응하는 영역이 상기 해수면과 접하는 선을 추출하는 단계 및 상기 해수면과 접하는 선의 양 단부를 한 쌍의 제1 포인트들로 결정하는 단계를 포함할 수 있다.
여기서, 상기 추출하는 단계는 상기 항만 이미지로부터 상기 선박에 대응하는 영역을 획득하는 단계, 상기 선박에 대응하는 영역에서 상기 선박의 선수측면에 대응하는 선수선 및 선미측면에 대응하는 선미선을 추출하는 단계 및 상기 선수선의 하나의 단부 및 상기 선미선의 하나의 단부를 한 쌍의 제2 포인트들로 결정하는 단계를 포함할 수 있다.
여기서, 상기 추출하는 단계는 상기 선박의 경계를 표시하는 경계 다각형을 결정하는 단계 및 상기 결정된 경계 다각형에 기초하여 상기 한 쌍의 제1 포인트들 및 상기 한 쌍의 제2 포인트들을 추출하는 단계를 포함할 수 있다.
여기서, 상기 한 쌍의 제1 포인트들은 상기 경계 다각형의 상기 선박의 하부에 대응하는 복수의 포인트 중 두 개의 포인트로 결정될 수 있다.
여기서, 상기 한 쌍의 제1 포인트들은 상기 경계 다각형의 상기 선박의 선수단부 및 선미단부에 대응하는 두 개의 포인트 각각과 가장 인접한 두 개의 포인트로 결정될 수 있다.
여기서, 상기 접안 관련 정보를 획득하는 단계는 상기 한 쌍의 제1 포인트들 중 하나의 제1 포인트에 기초하여 상기 선수 거리를 획득하는 단계 및 상기 한 쌍의 제1 포인트들 중 다른 하나의 제1 포인트에 기초하여 상기 선미 거리를 획득하는 단계를 포함할 수 있다.
여기서, 상기 선수 거리를 획득하는 단계는 상기 하나의 제1 포인트와 상기 안벽 사이의 상기 항만 이미지의 픽셀 개수에 기초하여 상기 선수 거리를 산출하는 단계를 포함하고, 상기 선미 거리를 획득하는 단계는 상기 다른 하나의 제1 포인트와 상기 안벽 사이의 상기 항만 이미지의 픽셀 개수에 기초하여 상기 선미 거리를 산출하는 단계를 포함할 수 있다.
여기서, 상기 접안 관련 정보를 획득하는 단계는 상기 선수 거리에 기초하여 상기 선박의 선수가 상기 안벽으로 접근하는 속도인 선수 속도를 획득하는 단계 및 상기 선미 거리에 기초하여 상기 선박의 선미가 상기 안벽으로 접근하는 속도인 선미 속도를 획득하는 단계를 포함할 수 있다.
여기서, 상기 선수 속도를 획득하는 단계는 상기 항만 이미지의 제1 선수 거리 및 상기 항만 이미지의 후속 프레임 이미지의 제2 선수 거리를 비교하여 상기 선수 속도를 획득하는 단계를 포함하고, 상기 선미 속도를 획득하는 단계는 상기 항만 이미지의 제1 선미 거리 및 상기 후속 프레임 이미지의 제2 선미 거리를 비교하여 상기 선미 속도를 획득하는 단계를 포함할 수 있다.
여기서, 상기 선수 속도를 획득하는 단계는 상기 항만 이미지와 상기 후속 프레임 이미지 간의 시간 간격 및 상기 제1 및 제2 선수 거리의 픽셀 개수의 차이에 기초하여 상기 선수 속도를 산출하는 단계를 포함하고, 상기 선미 속도를 획득하는 단계는 상기 시간 간격 및 상기 제1 및 제2 선미 거리의 픽셀 개수의 차이에 기초하여 상기 선미 속도를 산출하는 단계를 포함할 수 있다.
여기서, 상기 한 쌍의 제2 포인트들은 상기 경계 다각형의 상기 선박의 선수에 대응하는 복수의 선수 포인트 중 하나의 포인트 및 상기 경계 다각형의 상기 선박의 선미에 대응하는 복수의 선미 포인트 중 하나의 포인트로 결정될 수 있다.
여기서, 상기 한 쌍의 제2 포인트들은 상기 선수 포인트들 중 선수단부에 대응하는 하나의 포인트 및 상기 선미 포인트들 중 선미단부에 대응하는 하나의 포인트로 결정될 수 있다.
여기서, 상기 충돌 관련 정보를 획득하는 단계는 상기 하나의 제2 포인트와 상기 다른 선박 사이의 상기 항만 이미지의 픽셀 개수에 기초하여 상기 선박과 상기 다른 선박 사이의 거리를 산출하는 단계를 포함할 수 있다.
여기서, 상기 충돌 관련 정보를 획득하는 단계는 상기 선박과 상기 다른 선박 사이의 거리에 기초하여 상기 선박과 상기 다른 선박 사이의 상대속도를 획득하는 단계를 포함할 수 있다.
여기서, 상기 상대속도를 획득하는 단계는 상기 항만 이미지의 상기 선박과 상기 다른 선박 사이의 제1 거리 및 상기 항만 이미지의 후속 프레임 이미지의 상기 선박과 상기 다른 선박 사이의 제2 거리를 비교하여 상기 상대속도를 획득하는 단계를 포함할 수 있다.
여기서, 상기 상대속도를 획득하는 단계는 상기 항만 이미지와 상기 후속 프레임 이미지 간의 시간 간격 및 상기 제1 거리 및 상기 제2 거리의 픽셀 개수의 차이에 기초하여 상기 상대속도를 산출하는 단계를 포함할 수 있다.
여기서, 상기 충돌 관련 정보를 획득하는 단계는 상기 하나의 제2 포인트가 상기 선박이 해수면과 접하는 상기 밑면과 수직하게 접하는 위치의 제3 포인트를 추출하는 단계 및 상기 제3 포인트와 상기 다른 선박 사이의 이미지 픽셀 개수에 기초하여 상기 선박과 상기 다른 선박 사이의 거리를 산출하는 단계를 포함할 수 있다.
여기서, 상기 한 쌍의 제1 포인트들 및 상기 한 쌍의 제2 포인트들은 상기 경계 다각형의 일부에 기초하여 결정될 수 있다.
여기서, 상기 한 쌍의 제1 포인트들 및 한 쌍의 제2 포인트들을 추출하는 단계는 상기 항만 이미지의 시점을 변환하여 시점 변환 항만 이미지를 생성하는 단계 및 상기 시점 변환 항만 이미지에 기초하여 상기 한 쌍의 제1 포인트들 및 한 쌍의 제2 포인트들을 추출하는 단계를 포함할 수 있다.
여기서, 상기 한 쌍의 제1 포인트들 및 상기 한 쌍의 제2 포인트들을 추출하는 단계는 입력 이미지 및 상기 입력 이미지에 포함된 바다, 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 상기 항만 이미지로부터 상기 오브젝트들에 대한 세그멘테이션 이미지를 생성하는 단계 및 상기 세그멘테이션 이미지로부터 상기 한 쌍의 제1 포인트들 및 상기 한 쌍의 제2 포인트들을 추출하는 단계를 포함할 수 있다.
여기서, 상기 항만 모니터링 방법은 상기 항만 이미지와 대응하는 라이다 이미지를 획득하는 단계; 및 획득한 상기 라이다 이미지에 기초하여 상기 접안 관련 정보 및/또는 상기 충돌 관련 정보를 보정하는 단계를 더 포함할 수 있다.
여기서, 상기 항만 이미지는 복수의 항만 이미지가 정합된 파노라마 이미지를 포함할 수 있다.
여기서, 상기 항만 모니터링 방법은 상기 접안 관련 정보 및/또는 상기 충돌 관련 정보를 상기 항만 이미지와 함께 출력하는 단계; 를 더 포함할 수 있다.
여기서, 상기 항만 모니터링 방법은 상기 항만 이미지에 기초하여 상기 선박의 상기 선수 및 상기 선미를 결정하는 단계; 를 더 포함할 수 있다.
또한 본 명세어의 다른 일 양상에 따르면 컴퓨팅 수단에 의해 수행되는 선박의 항만 모니터링 방법으로, 항만에 설치되어 이미지를 촬상하는 카메라를 이용하여 바다 및 선박을 포함하는 항만 이미지를 획득하는 단계; 입력 이미지 및 상기 입력 이미지에 포함된 바다, 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 상기 항만 이미지로부터 상기 오브젝트들에 대한 세그멘테이션 이미지를 생성하는 단계; 상기 세그멘테이션 이미지의 선박을 지시하는 클래스 값이 할당된 선박의 영역이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 제1 포인트들을 추출하는 단계; 및 상기 한 쌍의 제1 포인트들에 기초하여 상기 선박의 선수와 안벽(pier) 사이의 거리인 선수 거리 및 상기 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 상기 선박의 접안 관련 정보를 획득하는 단계; 를 포함하고 상기 선박의 접안 관련 정보를 획득하는 단계는 상기 한 쌍의 제1 포인트들 중 하나의 제1 포인트에 기초하여 상기 선박의 상기 선수 거리를 획득하는 단계 및 상기 한 쌍의 제1 포인트들 중 다른 하나의 제1 포인트에 기초하여 상기 선박의 상기 선미 거리를 획득하는 단계를 포함하는 항만 모니터링 방법이 제공될 수 있다.
여기서, 상기 항만 모니터링 방법은 상기 선박의 선수 및 선미에 대응하는 한 쌍의 제2 포인트들을 추출하는 단계; 및 상기 한 쌍의 제2 포인트들에 기초하여 상기 선박과 다른 선박 사이의 거리를 포함하는 상기 선박의 충돌 관련 정보를 획득하는 단계; 를 더 포함하고, 상기 충돌 관련 정보를 획득하는 단계는 상기 항만 이미지에 다른 선박이 포함된 경우 상기 한 쌍의 제2 포인트들 중 상기 다른 선박과 더 가까운 상기 하나의 제2 포인트에 기초하여 상기 선박과 상기 다른 선박 사이의 거리를 획득하는 단계를 포함할 수 있다.
또 상술한 방법을 실행시키기 위한 프로그램을 기록한 기록매체가 제공될 수 있다.
또한 본 명세서의 다른 일 양상에 따르면 항만에 설치되어 이미지를 촬상하는 카메라; 상기 카메라가 촬상한 바다 및 선박을 포함하는 항만 이미지를 획득하고, 상기 항만 이미지로부터 상기 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 제1 포인트들 및 상기 선박의 선수 및 선미에 대응하는 한 쌍의 제2 포인트들을 추출하고, 상기 한 쌍의 제1 포인트들에 기초하여 상기 선박의 선수와 안벽(pier) 사이의 거리인 선수 거리 및 상기 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 상기 선박의 접안 관련 정보를 획득하고, 상기 한 쌍의 제2 포인트들에 기초하여 상기 선박과 다른 선박 사이의 거리를 포함하는 상기 선박의 충돌 관련 정보를 획득 - 상기 충돌 관련 정보의 획득은 상기 항만 이미지에 다른 선박이 포함된 경우 상기 한 쌍의 제2 포인트들 중 상기 다른 선박과 더 가까운 상기 하나의 제2 포인트에 기초하여 상기 선박과 상기 다른 선박 사이의 거리를 획득하는 것을 포함함 - 하는 제어 모듈; 및 상기 접안 관련 정보 및/또는 상기 충돌 관련 정보를 원격 위치한 단말기에 전송하는 통신 모듈; 을 포함하는 항만 모니터링 장치가 제공될 수 있다.
이하에서는 일 실시예에 따른 선박 및 항만 모니터링 장치 및 방법에 대하여 설명한다.
본 명세서에서 모니터링이란 주변 상황을 파악하거나 인식하는 것으로, 일정 영역이나 특정 오브젝트 등 감지 대상을 각종 센서를 이용하여 감지하고 그 감지 결과를 사용자에게 제공하는 것뿐만 아니라 감지 결과를 바탕으로 연산 등을 통해 추가적인 정보를 제공하는 것 등을 포함하도록 넓게 해석되어야 한다.
이미지 기반 모니터링이란 이미지에 기초하여 주변 상황을 파악하거나 인식하는 것을 의미할 수 있다. 예를 들어, 모니터링은 선박의 운항 시 선박 주변 이미지를 획득하여 이로부터 다른 선박이나 장애물 등을 인식하거나, 선박의 접안 또는 이안 시 접안 가이드 정보를 산출하기 위한 정보를 획득하는 것을 의미할 수 있다.
접안 가이드 정보란 다른 선박이나 장애물 등의 인식, 항만 상황 파악, 선석에 접근 가능한지 여부, 안벽과의 거리 및 속도, 다른 선박과의 거리 및 속도, 운항 경로 상 장애물 존재 여부 파악 등 환경에 대한 정보를 의미할 수 있다. 본 명세서에서는 주로 선박 및 항만에서 접안이 수행되는 경우의 모니터링에 대해 설명하나, 이에 한정되는 것은 아니고 차량의 주행, 비행체의 운항 등의 경우에도 적용될 수 있을 것이다.
도 1은 일 실시예에 따른 이미지 기반 모니터링에 관한 도면이다. 도 1을 참고하면, 이미지 기반 모니터링은 이미지 획득 단계(S10) 및 이미지 분석 단계(S20)를 포함할 수 있다.
이미지 획득 단계(S10)는 장치(10)가 이미지를 획득하는 단계를 의미할 수 있다. 여기서, 이미지의 종류는 RGB 이미지, IR 이미지, depth 이미지, 라이다(lidar) 이미지, 레이더(radar) 이미지 등 다양할 수 있고 제한이 있는 것은 아니다. 또한, 2차원 이미지뿐만 아니라 3차원 이미지 등도 가능하다.
이미지 분석 단계(S20)는 이미지에 기초하여 분석 결과를 획득하는 단계를 의미할 수 있다. 일 예로, 이미지 분석 단계(S20)는 이미지를 통해 접안 가이드 정보를 산출하는 단계를 포함할 수 있다. 또는, 이미지 분석 단계(S20)는 이미지에 포함된 오브젝트의 특성을 분석하는 단계를 의미할 수 있다. 또는, 이미지 분석 단계(S20)는 이미지가 나타내는 상황을 판단하는 단계를 포함할 수 있다. 또는,
이미지 획득 단계(S10) 및 이미지 분석 단계(S20)의 구체적인 내용은 후술하기로 한다. 이하에서는 이미지 획득 단계(S10) 또는 이미지 분석 단계(S20)를 통해 획득한 정보를 모니터링 정보라 한다.
도 2는 일 실시예에 따른 항만 모니터링 장치에 관한 도면이다.
도 2를 참고하면, 모니터링 장치(10)는 센서 모듈(100), 제어 모듈(200) 및 통신 모듈(300)을 포함할 수 있다.
센서 모듈(100)은 선박이나 선박 주변 및 항만에 대한 정보를 센싱할 수 있다. 센서 모듈(100)은 선박자동식별장치(automatic identification system, AIS), 이미지 생성 유닛, 위치 측정 유닛, 자세 측정 유닛, 케이싱 등을 포함할 수 있다.
이미지 생성 유닛은 이미지를 생성할 수 있다. 이미지 생성 유닛은 카메라, 라이다, 레이더, 초음파 탐지기 등을 포함할 수 있다. 카메라의 예로는 단안 카메라, 쌍안 카메라, 가시광선 카메라, IR 카메라, depth 카메라가 있지만 이에 한정되는 것은 아니다.
위치 측정 유닛은 센서 모듈이나 이미지 생성 유닛 등 센서 모듈에 포함된 구성의 위치를 측정할 수 있다. 일 예로, 위치 측정 유닛은 GPS(Global Positioning System)일 수 있다. 특히, 위치 측정의 정확도 향상을 위해 RTK-GPS(Real-Time Kinematic GPS)가 이용될 수도 있다.
위치 측정 유닛은 미리 정해진 시간 간격마다 위치 정보를 획득할 수 있다. 여기서, 상기 시간 간격은 센서 모듈의 설치 위치에 따라 달라질 수 있다. 예를 들어, 센서 모듈이 선박 등 이동체에 설치된 경우 위치 측정 유닛은 짧은 시간 간격마다 위치 정보를 획득할 수 있다. 반면, 센서 모듈이 항만 등 고정체에 설치된 경우 위치 측정 유닛은 긴 시간 간격마다 위치 정보를 획득할 수 있다. 위치 측정 유닛의 위치 정보 획득을 위한 시간 간격은 변경될 수 있다.
자세 측정 유닛은 센서 모듈이나 이미지 생성 유닛 등 센서 모듈에 포함된 구성의 자세를 측정할 수 있다. 일 예로, 자세 측정 유닛은 관성측정장비(Inertial Measurement Unit, IMU)일 수 있다.
자세 측정 유닛은 미리 정해진 시간 간격마다 자세 정보를 획득할 수 있다. 여기서, 상기 시간 간격은 센서 모듈의 설치 위치에 따라 달라질 수 있다. 예를 들어, 센서 모듈이 선박 등 이동체에 설치된 경우 자세 측정 유닛은 짧은 시간 간격마다 자세 정보를 획득할 수 있다. 반면, 센서 모듈이 항만 등 고정체에 설치된 경우 자세 측정 유닛은 긴 시간 간격마다 자세 정보를 획득할 수 있다. 자세 측정 유닛의 자세 정보 획득을 위한 시간 간격은 변경될 수 있다.
케이싱은 이미지 생성 유닛, 위치 측정 유닛, 자세 측정 유닛 등 센서 모듈을 보호할 수 있다.
케이싱의 내부에는 이미지 생성 유닛, 위치 측정 유닛, 자세 측정 유닛 중 적어도 하나가 존재할 수 있다. 케이싱은 내부에 존재하는 이미지 생성 유닛 등의 장비가 염수에 의해 부식되는 것을 방지할 수 있다. 또는, 케이싱은 내부에 존재하는 장비에 가해지는 충격을 방지하거나 완화시켜 이를 보호할 수 있다.
내부에 이미지 생성 유닛 등을 포함하기 위하여 케이싱의 내부에 공동이 형성될 수 있다. 예를 들어, 케이싱은 내부가 비어있는 직육면체 형상일 수 있지만, 이에 한정되는 것은 아니고 내부에 이미지 생성 유닛 등이 배치될 수 있는 다양한 형상으로 제공될 수 있다.
케이싱의 내부에 이미지 생성 유닛이 배치되는 경우, 이미지 생성 유닛의 시야 확보를 위해 케이싱의 일 영역에 개폐구가 형성되거나 케이싱의 일 영역을 유리 등 투명한 물질로 형성할 수 있다. 이미지 생성 유닛은 상기 개폐구 또는 투명한 영역을 통해 선박 주변 및 항만을 촬상할 수 있다.
케이싱은 이미지 생성 유닛 등을 외부 충격으로부터 보호하기 위해 강인한 소재로 제공될 수 있다. 또는, 케이싱은 염분으로 인한 부식을 방지하기 위하여 해수용 합금 등의 소재로 제공될 수 있다.
케이싱은 이미지 생성 유닛의 이물질을 제거하기 위한 장비를 포함할 수 있다. 일 예로, 케이싱에 포함된 와이퍼를 통해 이미지 생성 유닛의 표면에 달라붙은 이물질을 물리적으로 제거할 수 있다. 여기서, 상기 와이퍼는 이물질을 제거하려는 표면에 밀착할 수 있도록 상기 표면과 동일하거나 유사한 곡률을 갖는 선형 또는 판형으로 제공될 수 있다. 다른 예로, 케이싱에 포함된 액체 스프레이를 통해 물이나 워셔액을 도포하여 이물질을 제거하거나 도포 후 와이퍼를 이용하여 이물질을 물리적으로 제거할 수 있다.
이물질 제거 장비는 수동으로 가동될 수 있지만, 자동으로도 가동될 수 있다. 예를 들어, 미리 정해진 시간 간격으로 이물질 제거 장비가 동작할 수 있다. 또는, 이미지 생성 유닛에 이물질이 달라 붙었는지 여부를 감지하는 센서를 이용하여 이물질 제거 장비를 동작시킬 수 있다. 또는, 이미지 생성 유닛이 촬상한 이미지를 이용하여, 상기 이미지에 이물질이 촬상되었는지 여부를 판단한 후, 이물질이 존재한다고 판단되는 경우에 이물질 제거 장비를 동작시킬 수 있다. 여기서, 이미지에 이물질이 촬상되었는지 여부는 인공 신경망(artificial neural network)을 통하여 판단될 수도 있을 것이다.
하나의 센서 모듈(100)은 2개 이상의 동일한 카메라를 포함하는 등 복수의 동일한 장비를 포함할 수도 있다.
제어 모듈(200)은 이미지 분석을 수행할 수 있다. 또한, 센서 모듈(100)을 통해 각종 데이터를 수신하는 동작, 출력 장치를 통해 각종 출력을 출력하는 동작, 메모리에 각종 데이터를 저장하거나 메모리로부터 각종 데이터를 획득하는 동작 등이 제어 모듈(200)의 제어에 의해 수행될 수 있다. 이하에서는 본 명세서의 실시예로 개시되는 각종 동작이나 단계들은 별도의 언급이 없는 이상 제어 모듈(200)에 의해 수행되거나 제어 모듈(200)의 제어에 의해 수행되는 것으로 해석될 수 있다.
제어 모듈(200)의 예로는 중앙 처리 장치(Central Processing Unit, CPU), 그래픽 처리 장치(Graphics Processing Unit, GPU), 디지털 신호 처리 장치(Digital Signal Processor, DSP), 상태 기계(state machine), 주문형 반도체(Application Specific Integrated Circuit, ASIC), 무선 주파수 집적 회로(Radio-Frequency Integrated Circuit, RFIC) 및 이들의 조합 등이 있을 수 있다.
통신 모듈(300)은 장치(10)로부터 외부로 정보를 송신하거나 외부로부터 정보를 수신할 수 있다. 통신 모듈(300)은 유선 또는 무선 통신을 수행할 수 있다. 통신 모듈(300)은 양방향(bi-directional) 또는 단방향 통신을 수행할 수 있다. 예를 들어, 장치(10)는 통신 모듈(300)을 통해 외부 출력 장치로 정보를 전달하여 제어 모듈(200)이 수행한 제어 결과를 외부 출력 장치를 통해 출력할 수 있다. 또한, 통신 모듈(300)은 선박을 관제하는 해상교통관제시스템(VTS, Vessel Traffic Service)으로부터 선박과 관련된 VTS 정보 또는 CITS(Costal Intelligent Transport System) 정보를 수신할 수 있다.
센서 모듈(100), 제어 모듈(200) 및 통신 모듈(300)은 제어부를 포함할 수 있다. 제어부는 모듈 내에서 각종 정보의 처리와 연산을 수행하고, 모듈을 구성하는 다른 구성 요소를 제어할 수 있다. 제어부는 물리적으로는 전기 신호를 처리하는 전자 회로 형태로 제공될 수 있다. 모듈은 물리적으로 단일한 제어부만을 포함할 수도 있으나, 이와 달리 복수의 제어부를 포함할 수도 있다. 일 예로, 제어부는 하나의 컴퓨팅 수단에 탑재되는 하나 또는 복수의 프로세서(processor)일 수 있다. 다른 예로, 제어부는 물리적으로 이격된 서버(server)와 터미널(terminal)에 탑재되어 통신을 통해 협업하는 프로세서들로 제공될 수도 있다. 제어부의 예로는 중앙 처리 장치(Central Processing Unit, CPU), 그래픽 처리 장치(Graphics Processing Unit, GPU), 디지털 신호 처리 장치(Digital Signal Processor, DSP), 상태 기계(state machine), 주문형 반도체(Application Specific Integrated Circuit, ASIC), 무선 주파수 집적 회로(Radio-Frequency Integrated Circuit, RFIC) 및 이들의 조합 등이 있을 수 있다.
센서 모듈(100), 제어 모듈(200) 및 통신 모듈(300)은 통신부를 포함할 수 있다. 상기 모듈들은 통신부를 통해 정보를 송수신할 수 있다. 예를 들어, 센서 모듈(100)은 외부로부터 획득한 정보를 그 통신부를 통해 송신하고, 제어 모듈(200)은 그 통신부를 통해 센서 모듈(100)이 송신한 정보를 수신할 수 있다. 통신부는 유선 또는 무선 통신을 수행할 수 있다. 통신부는 양방향(bi-directional) 또는 단방향 통신을 수행할 수 있다.
센서 모듈(100), 제어 모듈(200) 및 통신 모듈(300)은 메모리를 포함할 수 있다. 메모리는 각종 프로세싱 프로그램, 프로그램의 프로세싱을 수행하기 위한 파라미터 또는 이러한 프로세싱 결과 데이터 등을 저장할 수 있다. 예를 들어, 메모리는 학습 및/또는 추론에 필요한 데이터, 학습이 진행중이거나 학습된 인공 신경망 등을 저장할 수 있다. 메모리는 비휘발성 반도체 메모리, 하드 디스크, 플래시 메모리, RAM(Random Access Memory), ROM(Read Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory) 또는 그 외에 유형의(tangible) 비휘발성의 기록 매체 등으로 구현될 수 있다.
모니터링 장치(10)는 2개 이상의 센서 모듈(100)을 포함하는 등 복수의 동일한 모듈을 포함할 수도 있다. 예를 들어, 하나의 장치(10)가 2개의 센서 모듈(100)을 포함하고, 각 센서 모듈(100)이 다시 2개의 카메라를 포함할 수도 있다.
도 3 및 도 4는 일 실시예에 따른 모니터링 장치의 실시예에 관한 도면이다.
도 3을 참고하면, 모니터링 장치(10)는 센서 모듈(100) 및 제어 모듈(200)을 포함할 수 있다. 센서 모듈(100)은 카메라(130)를 통해 이미지를 생성하고, 통신부(110)를 통해 이미지를 제어 모듈(200)로 송신할 수 있다. 또한, 센서 모듈(100)의 제어부(120)는 후술할 시점 변환을 수행하여 이미지의 시점을 변환시킬 수 있다. 제어 모듈(200)은 통신부(210)를 통해 센서 모듈(100)로부터 이미지를 수신하고, 제어부(220)를 통해 후술할 위치/이동 정보 추정 및 이미지 정합 등 이미지 분석을 수행할 수 있다. 또한, 제어 모듈(200)은 통신부(210)를 통해 클라우드 서버로 위치/이동 정보 및 정합된 이미지 등 분석 결과를 송신할 수 있다. 클라우드 서버는 제어 모듈(200)로부터 수신한 분석 결과를 스마트폰, 태블릿, PC 등 사용자 단말로 전송하거나 사용자 단말로부터 인스트럭션을 수신할 수 있다.
도 4를 참고하면, 모니터링 장치(10)는 센서 모듈(100)을 포함할 수 있다. 센서 모듈(100)은 카메라(130)를 통해 이미지를 생성하고, 통신부(110)를 통해 클라우드 서버로 이미지를 전송할 수 있다. 또한, 센서 모듈(100)의 제어부(120)는 후술할 시점 변환을 수행하여 이미지의 시점을 변환시킬 수 있다. 클라우드 서버는 센서 모듈(100)로부터 이미지를 수신하고, 후술할 위치/이동 정보 추정 및 이미지 정합 등 이미지 분석을 수행할 수 있다. 또한, 클라우드 서버는 이미지 분석의 결과를 스마트폰, 태블릿, PC 등 사용자 단말로 전송하거나 사용자 단말로부터 인스트럭션을 수신할 수 있다.
도 2 내지 도 4에서 도시하는 장치(10)는 예시에 불과하며 장치(10)의 구성이 이에 한정되지는 않는다.
일 예로, 장치(10)는 출력 모듈(400)을 포함할 수 있다. 출력 모듈(400)은 제어 모듈(200)에 의해 수행된 연산의 결과 등을 출력할 수 있다. 예를 들어, 출력 모듈(400)은 분석 결과를 출력할 수 있다. 출력 모듈(400)은 예시적으로 디스플레이, 스피커, 신호 출력 회로 등일 수 있으나 이에 한정되는 것은 아니다. 이 경우 정보를 사용자 단말 등 외부 출력 장치로 전달하여 외부 출력 장치가 정보를 출력하는 것 외에 출력 모듈(400)을 통해 정보를 출력할 수도 있을 것이다.
다른 예로, 장치(10)는 센서 모듈을 포함하지 않을 수도 있다. 이 경우 제어 모듈(200)은 외부 센서 장치로부터 정보를 전달받아 이미지 분석을 수행하는 등 이미지 기반 모니터링 동작을 수행할 수 있을 것이다. 예를 들어, 제어 모듈(200)은 선박이나 항만에 이미 설치된 AIS, 카메라, 라이다, 레이다 등으로부터 정보를 전달받아 이미지 분석을 수행할 수 있다.
또한, 도 2 내지 도 4의 각 구성이 수행하는 단계는 반드시 해당 구성이 수행해야 하는 것은 아니고 다른 구성에 의해 수행될 수 있다. 예를 들어, 위의 도 3에서는 센서 모듈(100)의 제어부(120)가 시점 변환을 수행하는 것으로 기재하였으나, 제어 모듈(200)의 제어부(220) 또는 클라우드 서버가 시점 변환을 수행할 수도 있다.
이하에서는 모니터링 장치(10) 및 방법에 대해 보다 구체적으로 살펴본다.
이미지 기반 모니터링을 위한 이미지 획득은 센서 모듈(100)을 통해 수행될 수 있다. 예를 들어, 센서 모듈(100)에 포함된 이미지 생성 유닛을 통해 이미지를 획득할 수 있다. 또는, 전술한 바와 같이 외부 센서 장치로부터 이미지를 획득할 수도 있다. 선박 및 항만 모니터링을 위한 이미지는 바다, 선박, 부표, 장애물, 지형, 항만, 하늘, 건물 등을 포함하는 것이 일반적일 것이다. 이하에서는 주로 가시광선 카메라를 통해 획득한 이미지를 분석하여 모니터링하는 것에 대해 설명하나 이에 한정되는 것은 아니다.
이미지 생성 유닛에 따라 시야각(field of view) 및 피사계 심도(depth of field)가 달라질 수 있다. 도 5는 일 실시예에 따른 시야각 및 피사계 심도에 관한 도면이다. 도 5를 참고하면, 시야각(FOV)은 좌우 또는 상하로 어느 정도의 범위까지 이미지에 포함되는지를 의미할 수 있고, 일반적으로는 각도(angle, degree)로 표현된다. 시야각이 더 크다는 의미는 좌우로 더 큰 폭의 영역을 포함하는 이미지를 생성하거나, 상하로 더 큰 폭의 영역을 포함하는 이미지를 생성하는 것을 의미할 수 있다. 피사계 심도는 이미지의 초점이 맞은 것으로 인식되는 거리 범위를 의미할 수 있고, 피사계 심도가 깊다는 의미는 이미지의 초점이 맞은 것으로 인식되는 거리 범위가 넓다는 것을 의미할 수 있다. 도 5를 참고하면, 피사계 심도(DOF)에 따라 이미지는 초점이 맞은 것으로 인식되는 영역(A1) 및 그 외의 영역(A2)을 포함할 수 있다. 이하에서는 이미지가 포함하고 있는 영역을 촬상 영역(A1 + A2), 초점이 맞은 것으로 인식되는 영역을 유효 영역(A1)이라 하고, 이미지 분석 및 모니터링은 유효 영역에 기초하여 수행될 수 있지만 촬상 영역 전체에 기초하여 수행되거나 촬상 영역의 일부에 기초하여 수행될 수도 있으므로, 이미지 분석 및 모니터링을 수행하기 위해 이용되는 영역을 모니터링 영역이라고 한다.
시야각이 크고 피사계 심도가 얕은 카메라의 예로 광각 카메라가 있다. 시야각이 작고 피사계 심도가 깊은 카메라의 예로는 고배율 카메라, 줌 카메라가 있다.
센서 모듈(100)은 항만 내의 조명탑, 크레인, 선박 등 그 위치나 자세에 제한이 없이 설치될 수 있고, 그 개수에도 제한이 없다. 다만, 센서 모듈(100)의 종류 및 성능 등 특성에 따라 그 설치 위치나 개수가 달라질 수 있다. 예를 들어, 센서 모듈(100)이 카메라인 경우, 센서 모듈(100)은 효율적인 모니터링을 위해 수면에서 15m 이상의 고도에 설치되거나, 서로 다른 촬상 영역을 갖도록 복수가 설치될 수 있다. 또한, 센서 모듈(100)의 위치 및 자세는 설치 시 또는 설치 후에 수동 또는 자동으로 조절될 수도 있다.
도 6 및 도 7은 일 실시예에 따른 센서 모듈의 설치 위치에 관한 도면이다. 도 6 및 도 7을 참고하면, 센서 모듈(100)은 항만 또는 육지와 같이 고정된 위치에 설치되거나, 선박 등과 같이 이동하는 물체에 설치될 수 있다. 여기서, 센서 모듈(100)이 선박에 설치되는 경우, 도 7과 같이 모니터링의 대상이 되는 선박(이하 “타겟 선박”이라 함)에 설치될 수 있고, 도 6과 같이 타겟 선박의 접안 또는 이안을 보조하는 예인선 등 모니터링의 대상이 아닌 제3의 선박에 설치될 수도 있다. 이 외에도, 센서 모듈(100)은 드론 등에 설치되어 타겟 선박을 모니터링할 수 있다.
모니터링 장치(10)의 다른 구성 요소는 센서 모듈(100)과 함께 또는 이와 별도의 장소에 설치될 수 있다.
전술한 바와 같이 이미지 기반 모니터링을 위한 이미지 분석은 오브젝트 특성을 획득하는 것을 포함할 수 있다. 오브젝트의 예로는 선박, 항만, 부표, 바다, 지형, 하늘, 건물, 사람, 동물, 불, 연기 등이 있을 수 있다. 오브젝트 특성의 예로는 오브젝트의 종류, 오브젝트의 위치, 오브젝트까지의 거리, 오브젝트의 절대적 및 상대적인 속력 및 속도 등이 있을 수 있다.
이미지 기반 모니터링을 위한 이미지 분석은 주변 상황을 인식/판단하는 것을 포함할 수 있다. 예를 들어, 이미지 분석은 항만에 불이 난 이미지로부터 화재 상황이 발생한 것을 판단하거나, 예정되지 않은 시간에 항만에 들어온 사람이 촬상된 이미지로부터 침입자가 들어온 것을 판단하는 것일 수 있다. 다른 예를 들어, 이미지 분석은 연기가 존재하는 이미지로부터 화재를 감지하는 것을 포함할 수 있다.
이미지 기반 모니터링을 위한 이미지 분석은 제어 모듈(200)이나 각 모듈(100, 200)에 포함된 제어부(120, 220)를 통해 수행될 수 있다.
도 8은 일 실시예에 따른 이미지 분석에 관한 도면이다. 도 8을 참고하면, 이미지 분석은 오브젝트 인식 단계(S210) 및 위치/이동 정보 추정 단계(S220)를 포함할 수 있다.
이미지 분석은 오브젝트 인식 단계(S210)를 포함할 수 있다. 오브젝트 인식 단계(S210)는 이미지에 포함된 오브젝트를 인식하는 것을 포함할 수 있다. 예를 들어, 오브젝트 인식은 이미지에 선박, 예인선, 바다, 항만 등의 오브젝트가 포함되어 있는지 여부를 판단하는 것일 수 있다. 더 나아가, 오브젝트 인식은 이미지의 어떤 위치에 오브젝트가 존재하는지를 판단하는 것일 수 있다.
도 9 내지 도 11은 일 실시예에 따른 오브젝트 인식 단계에 관한 도면이다.
도 9는 카메라가 촬상한 이미지이고, 오브젝트 인식 단계를 통해 도 10 또는 도 11과 같이 오브젝트를 인식할 수 있다.
구체적으로, 도 10은 이미지의 각 픽셀 별로 해당 픽셀이 어떠한 오브젝트에 대응되는지를 나타낸 것으로, 세그멘테이션(segmentation)이라고도 한다. 이 경우 오브젝트 인식 단계는 세그멘테이션 단계를 의미할 수 있을 것이다. 세그멘테이션을 통해 이미지로부터 이미지상의 픽셀에 대응되는 특성을 할당하거나 산출할 수 있다. 이는 픽셀에 특성이 할당 또는 라벨링(labelling)되었다고 얘기할 수도 있을 것이다. 도 9 및 도 10을 참고하면, 도 9 의 카메라로 촬상된 이미지에 기초한 세그멘테이션을 수행하여 도 10과 같은 세그멘테이션 이미지를 획득할 수 있다. 도 10에서, 제1 픽셀 영역(P1)은 선박에 대응되는 픽셀의 이미지상의 영역이고, 제2 픽셀 영역(P2)은 바다, 제3 픽셀 영역(P3)은 항만의 안벽, 제4 픽셀 영역(P4)은 지형, 제5 픽셀 영역(P5)은 하늘에 대응되는 픽셀의 이미지상의 영역이다.
도 10 에서는 세그멘테이션을 수행하여 이미지상의 각 픽셀에 대응되는 오브젝트의 종류에 대한 정보를 산출하는 것을 도시하였으나, 세그멘테이션을 통해 획득할 수 있는 정보가 이에 한정되는 것은 아니다. 예를 들어, 오브젝트의 위치, 좌표, 거리, 방향 등의 특성 또한 세그멘테이션을 통해 획득할 수 있을 것이다. 이 경우 서로 다른 특성은 독립적으로 표현될 수도 있고, 동시에 반영하여 표현될 수도 있다.
표 1은 일 실시예에 따른 오브젝트의 종류 및 거리에 대한 정보를 동시에 반영한 라벨링에 관한 표이다. 표 1을 참고하면, 오브젝트의 종류 및 거리에 대한 정보를 함께 고려하여 클래스를 설정하고, 각 클래스 별로 식별값을 할당할 수 있다. 예를 들어, 오브젝트의 종류에 대한 정보인 지형과 거리에 대한 정보인 근거리를 함께 고려하여 2번 식별값을 할당할 수 있다. 표 1은 종류에 대한 정보와 거리에 대한 정보를 함께 고려한 경우의 일 예이고, 이 외에 방향 정보, 장애물 이동 방향, 속도, 항로 표지 등 다른 정보 또한 함께 고려될 수 있다. 또한, 모든 식별값이 복수의 정보를 포함해야 하는 것은 아니고, 같은 종류의 정보를 포함해야 하는 것도 아니다. 예를 들어, 특정 식별값은 종류에 대한 정보만 포함하고(예를 들어, 식별값 1은 거리에 대한 정보를 포함하지 않음) 다른 식별값은 종류 및 거리에 대한 정보를 포함하는 등 경우에 따라 다양한 방식으로 표현될 수 있다.
식별값 클래스
0 하늘 및 기타
1 바다
2 지형 + 근거리
3 지형 + 중거리
4 지형 + 원거리
5 고정 장애물 + 근거리
6 고정 장애물 + 중거리
7 고정 장애물 + 원거리
8 동적 장애물 + 근거리
9 동적 장애물 + 중거리
10 동적 장애물 + 원거리
도 11은 이미지의 어떤 위치에 오브젝트가 존재하는지를 바운딩 박스(bounding box)로 표시한 것으로, 디텍션(detection)이라고도 한다. 이 경우 오브젝트 인식 단계는 디텍션 단계를 의미할 수 있을 것이다. 세그멘테이션과 비교하면, 디텍션은 이미지의 각 픽셀 별로 특성을 산출하는 것이 아닌 오브젝트가 어느 위치에 포함되어 있는지를 박스 형태로 검출하는 것으로 볼 수 있다. 도 9 및 도 11을 참고하면, 도 9 의 카메라로 촬상된 이미지에 기초한 디텍션을 수행하여 도 11과 같은 디텍션 이미지를 획득할 수 있다. 도 11에서, 이미지상에서 선박을 검출하고 선박의 위치를 사각형의 바운딩 박스(BB)로 표현한 것을 볼 수 있다. 도 11에는 하나의 오브젝트만을 디텍션하는 것으로 도시하였으나, 하나의 이미지로부터 2 이상의 오브젝트를 디텍션할 수도 있다.
세그멘테이션 및 디텍션은 인공 신경망을 이용하여 수행될 수 있다. 하나의 인공 신경망을 통해 세그멘테이션/디텍션을 수행할 수도 있고, 복수의 인공 신경망을 이용하여 각각의 인공 신경망이 세그멘테이션/디텍션을 수행하고 이 결과를 조합하여 최종 결과를 산출할 수도 있다.
인공 신경망이란 인간의 신경망 구조를 본떠 만든 알고리즘의 일종으로, 하나 이상의 노드 또는 뉴런(neuron)을 포함하는 하나 이상의 레이어를 포함할 수 있고 각각의 노드는 시냅스(synapse)를 통해 연결될 수 있다. 인공 신경망에 입력된 데이터(입력 데이터)는 시냅스를 통해 노드를 거쳐 출력(출력 데이터)될 수 있고, 이를 통해 정보를 획득할 수 있다.
인공 신경망의 종류로는 필터를 이용해 특징을 추출하는 합성곱신경망(convolution neural network, CNN) 및 노드의 출력이 다시 입력으로 피드백 되는 구조를 갖는 순환인공신경망(recurrent neural network, RNN)이 있고, 제한된 볼츠만 머신(restricted Boltzmann machine, RBM), 심층신뢰신경망(deep belief network, DBN), 생성대립신경망(generative adversarial network, GAN), 관계형 네트워크(relation networks, RN) 등 다양한 구조가 적용될 수 있고 제한이 있는 것은 아니다.
인공 신경망을 이용하기 전에 학습시키는 단계가 필요하다. 또는, 인공 신경망을 이용하며 학습시킬 수 있다. 이하에서는 인공신경망을 학습시키는 단계를 학습 단계, 이용하는 단계를 추론 단계로 표현하기로 한다.
인공 신경망은 지도 학습(supervised learning), 비지도 학습(unsupervised learning), 강화 학습(reinforcement learning), 모방 학습(imitation learning) 등 다양한 방법을 통해 학습될 수 있다.
도 12 및 도 13은 일 실시예에 따른 인공 신경망의 학습 단계 및 추론 단계에 관한 도면이다.
도 12는 인공 신경망의 학습 단계의 일 실시예로, 학습되지 않은 인공 신경망이 학습 데이터 또는 훈련 데이터(training data)를 입력 받아 출력 데이터를 출력하고, 출력 데이터와 라벨링 데이터(labelling data)를 비교하여 그 오차의 역전파를 통해 인공 신경망을 학습시킬 수 있다. 학습 데이터, 출력 데이터, 라벨링 데이터는 이미지일 수 있다. 라벨링 데이터는 실측 자료(ground truth)를 포함할 수 있다. 또는, 라벨링 데이터는 사용자 또는 프로그램을 통하여 생성된 자료일 수 있다.
도 13은 인공 신경망의 추론 단계의 일 실시예로, 학습된 인공 신경망이 입력 데이터를 입력 받아 출력 데이터를 출력할 수 있다. 학습 단계에서의 학습 데이터의 정보에 따라 추론 단계에서 추론 가능한 정보가 달라질 수 있다. 또한, 인공 신경망의 학습 정도에 따라 출력 데이터의 정확성이 달라질 수 있다.
이미지 분석은 위치/이동 정보 추정 단계(S220)를 포함할 수 있다. 위치/이동 정보 추정 단계(S220)는 오브젝트 인식 단계(S210)에서 인식된 오브젝트 중 적어도 일부에 대하여 그 위치 및/또는 이동에 관한 정보를 추정하는 것을 포함할 수 있다. 여기서, 위치 정보는 오브젝트의 좌표와 같은 절대적 위치, 특정 기준으로부터의 상대적 위치, 거리(임의의 지점으로부터의 거리, 거리 범위 등), 방향 등을 포함할 있고, 이동 정보는 절대적 속도, 상대적 속도, 속력 등 오브젝트의 이동에 관한 정보를 포함할 수 있다.
오브젝트의 위치/이동 정보는 선박의 접안 또는 이안 시 이용될 수 있다. 예를 들어, 선박 접안 또는 이안 시 선석 또는 안벽과의 거리, 이들을 기준으로 한 접근 속도, 다른 선박과의 간격 및 상대 속도 등을 이용하여 선박의 안전한 접안 또는 이안을 보조하거나 가이드 할 수 있다.
오브젝트의 위치/이동 정보는 선박의 운항 시 이용될 수 있다. 예를 들어, 다른 선박이나 선박 주변의 장애물을 감지하거나, 이들까지의 거리, 이들의 이동 속도 등을 이용하여 충돌을 경고하거나 경로 생성/추천을 하는 등 선박의 안전한 운항을 보조하거나 가이드 할 수 있다. 또는 이러한 정보를 바탕으로 자율 운항을 수행할 수도 있을 것이다.
오브젝트의 위치/이동 정보는 이미지에 기초하여 산출될 수 있다. 예를 들어, 오브젝트로써 선박, 바다 및 육지를 포함하는 이미지에 기초하여 선박의 위치/이동 정보를 산출할 수 있다. 이하에서는 위치/이동 정보를 추정하는 오브젝트를 타겟 오브젝트라 한다. 예를 들어, 위의 예에서는 선박이 타겟 오브젝트일 수 있다. 또한, 타겟 오브젝트는 복수일 수 있다. 예를 들어, 이미지에 포함된 복수의 선박 각각에 대해 그 위치나 속력 등을 추정하는 경우 복수의 선박이 타겟 오브젝트일 수 있다.
오브젝트의 위치/이동 정보는 일정 범위를 갖는 복수의 카테고리로 표현될 수 있다. 예를 들어, 거리 정보는 근거리, 중거리 및 원거리 등으로 표현될 수 있고, 방향 정보는 좌측 방향, 정면 방향 및 우측 방향 등으로 표현될 수 있다. 이를 조합하여 좌측 근거리, 우측 원거리 등으로 표현하는 것도 가능할 것이다. 이동 정보는 고속, 저속 등으로 표현될 수 있다.
오브젝트의 위치/이동 정보는 실제 거리값, 방향값 및 속도값 등으로 표현될 수 있다. 예를 들어, 거리 정보는 미터(m) 단위로 표현될 수 있고, 방향 정보는 도(degree) 단위로 표현될 수 있고, 이동 정보는 cm/s 단위로 표현될 수 있다.
오브젝트의 위치/이동 정보는 영역이나 포인트를 기준으로 추정될 수 있다. 일 예로, 선박과 안벽 사이의 거리는 선박의 일 포인트와 안벽의 일 포인트 사이의 거리를 산출함으로써 추정되거나, 선박의 일 포인트와 안벽과의 최단 거리를 산출함으로써 추정될 수 있다. 다른 예로, 선박 사이의 간격은 제1 선박의 일 포인트와 제2 선박의 일 포인트 사이의 거리를 산출함으로써 추정될 수 있다. 선박의 일 포인트는 바다와 접하는 선박의 일 지점에 대응되거나 선박의 선수 또는 선미에 대응될 수 있지만, 이에 한정되는 것은 아니다.
오브젝트의 위치/이동 정보는 이미지 픽셀을 기반으로 추정될 수 있다. 전술한 바와 같이 포인트를 기준으로 위치/이동 정보를 추정하는 경우, 이미지 상에서 포인트는 픽셀에 대응될 수 있다. 따라서, 오브젝트의 위치/이동 정보는 이미지 픽셀 사이의 간격에 기초하여 산출될 수 있다.
포인트 사이의 거리 정보는 픽셀 사이의 간격에 기초하여 산출될 수 있다. 일 예로, 하나의 픽셀 간격마다 일정 거리를 할당하고 픽셀 사이의 간격에 비례하여 포인트 사이의 거리를 산출할 수 있다. 다른 예로, 픽셀의 이미지상에서의 좌표값을 바탕으로 픽셀 사이의 거리를 산출하고 이에 기초하여 포인트 사이의 거리를 산출할 수 있다.
포인트 사이의 이동 정보는 포인트 사이의 거리 정보의 변화에 기초하여 산출될 수 있다. 이 경우 복수의 이미지 또는 영상 프레임에 기초하여 이동 정보를 산출할 수 있다. 예를 들어, 이전 프레임에서의 포인트 사이의 거리와 현재 프레임에서의 포인트 사이의 거리 및 프레임 사이의 시간 간격에 기초하여 포인트 사이의 이동 정보를 산출할 수 있다.
도 14 및 도 15는 일 실시예에 따른 오브젝트의 위치/이동 정보 추정에 관한 도면이다.
도 14를 참고하면, 위치/이동 정보 추정 단계는 선박(OBJ1)의 접안 또는 이안 시 안벽(OBJ2)과의 위치/이동 정보(f1, f2) 또는 다른 선박(OBJ3, OBJ4)과의 위치/이동 정보(f3, f4)를 추정하는 것을 포함할 수 있다. 도 14에 도시된 바와 같이, 선박(OBJ1)과 안벽(OBJ2) 사이의 위치/이동 정보(f1, f2)는 선박(OBJ1)의 2개의 포인트에 대해 산출될 수 있다. 이 경우 상기 2개의 포인트는 선박(OBJ1)이 바다와 접하는 지점에 대응될 수 있다. 또한, 선박(OBJ1)과 안벽(OBJ2) 사이의 거리는 상기 2개의 포인트와 안벽(OBJ2) 사이의 최단 거리일 수 있다. 선박(OBJ1)과 다른 선박(OBJ3, OBJ4) 사이의 위치/이동 정보(f3, f4)는 선박들(OBJ1, OBJ3, OBJ4)의 선수 또는 선미에 대응되는 포인트 사이의 위치/이동 정보일 수 있다. 이와 같이 위치/이동 정보가 선박의 접안 또는 이안에 이용되어 이를 보조하거나 가이드 하는 경우 접안 가이드 정보 또는 이안 가이드 정보라 지칭될 수 있다.
도 15를 참고하면, 위치/이동 정보 추정 단계는 선박(OBJ5)의 운항 시 다른 선박(OBJ6)이나 부표 등 장애물(OBJ7)과의 위치/이동 정보(f5, f6)를 추정하는 것을 포함할 수 있다.
위치/이동 정보 추정 단계에서 산출한 데이터에 기반하여 항만 운용이나 관리를 수행할 수 있다. 예를 들어, 선박이 방충제(fender)와 충돌하는 경우 선박의 속도 등 이동 정보로부터 충격량 등을 계산하여 방충제의 교체 시기를 예측할 수 있을 것이다.
이상에서는 오브젝트 인식 단계를 수행한 후 위치/이동 정보를 추정하는 방식의 이미지 분석의 실시예에 대해 살펴보았다. 이와 달리, 오브젝트 인식과 위치/이동 정보 추정이 하나의 단계로 수행될 수도 있다. 예를 들어, 세그멘테이션 또는 디텍션을 수행하여 오브젝트를 인식함과 동시에 오브젝트의 위치/이동 정보를 추정할 수 있다.
도 16은 일 실시예에 따른 항만 모니터링의 순서도이다.
일 실시예에 따르면, 항만 모니터링은 접안 모니터링 하는 단계(S230) 및 충돌 모니터링 하는 단계(S240)를 포함할 수 있다.
일 실시예에 따르면, 장치(10)는 이미지의 포함된 선박을 접안 모니터링할 수 있다(S230).
접안 모니터링은 선박이 안벽에 접안하는 과정을 모니터링하는 것을 의미할 수 있고, 접안 모니터링은 선박이 안벽에 접안할 때 접안에 필요한 정보를 제공하는 것일 수 있다. 예를 들어, 접안 모니터링은 안벽과 관련한 선박의 정보를 획득하고 제공하는 것일 수 있으며, 반대로 접안 모니터링은 선박과 관련하여 안벽의 정보를 획득하고 제공하는 것일 수도 있다.
구체적으로, 접안 모니터링은 선박이 안벽에 접안할 때 접안에 필요한 정보인 접안 관련 정보를 제공하는 것일 수 있다. 접안 관련 정보는 선박의 접안 상황과 관련되는 정보를 포함할 수 있으며, 예를 들어 선박과 안벽 사이의 거리, 선박이 안벽으로 접근하는 속도, 안벽의 상태, 수심, 풍속, 해류의 세기 등을 포함할 수 있다.
일 실시예에 따르면, 접안 모니터링은 선박의 선수 거리 및/또는 선미 거리를 획득하는 것일 수 있다. 선수 거리는 선박의 선수와 안벽 사이의 거리를 의미할 수 있고 선미 거리는 선박의 선미와 안벽 사이의 거리를 의미할 수 있다.
또한, 일 실시예에 따르면, 접안 모니터링은 선박의 선수 속도 및/또는 선미 속도를 획득하는 것일 수 있다. 선수 속도는 선박의 선수가 안벽으로 접근하는 속도를 의미할 수 있고, 선미 속도는 선박의 선미가 안벽으로 접근하는 속도를 의미할 수 있다.
선박의 선수 및 선미 각각에 대하여 접안 관련 정보를 제공하는 접안 모니터링을 통해 선박의 접안이 선박의 각 부분이 안벽에 부딪히지 않도록 안전하고 정확하게 가이드되는 장점이 있다.
이를 위해 접안 모니터링은 선박이 포함된 이미지로부터 2개의 포인트를 추출하고, 추출된 2개의 포인트에 기초하여 접안 관련 정보를 획득하는 것일 수 있다. 예를 들어, 접안 모니터링은 이미지에서 선박의 선수 및 선미에 대응하는 2개의 포인트를 획득하고, 추출된 2개의 포인트 중 하나의 포인트로부터 선박의 선수와 관련된 접안 관련 정보를 획득하고, 추출된 2개의 포인트 중 다른 하나의 포인트로부터 선박의 선미와 관련된 접안 관련 정보를 획득하는 것일 수 있다. 여기서, 선박의 선수와 관련된 접안 관련 정보는 선박의 선수 거리, 선수 속도 등을 포함할 수 있고, 선박의 선미와 관련된 접안 관련 정보는 선박의 선미 거리, 선미 속도 등을 포함할 수 있다. 후술하겠지만, 추출된 2개의 포인트는 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 2개의 포인트로 결정될 수 있다.
일 실시예에 따르면, 장치(10)는 이미지의 포함된 선박을 충돌 모니터링할 수 있다(S240).
충돌 모니터링은 선박이 인접 오브젝트와 충돌하는 것을 방지하기 위해 선박 및 주변을 모니터링하는 것을 의미할 수 있고, 충돌 모니터링은 선박이 인접 오브젝트(일 예로, 선박)와 충돌하는 것을 방지하기 위해 필요한 정보를 제공하는 것일 수 있다. 이하에서는, 설명의 편의를 위해 충돌 모니터링은 선박과 인접 선박이 충돌하는 것을 방지하기 위해 모니터링하는 것으로 설명하나 충돌 모니터링은 선박과 인접 오브젝트가 충돌하는 것을 방지하기 위해 모니터링하는 것으로 이해가 되어도 무방하다. 여기서, 인접 선박은 타겟 선박의 충돌 관련 정보 산출의 대상이 되는 것으로, 타겟 선박의 주변에 있는 선박을 의미한다. 일 예로, 인접 선박은 타겟 선박과 기설정된 거리 이하에 있는 선박일 수 있다. 다른 예로, 인접 선박은 여러 선박 중 타겟 선박에 가장 가까이 있는 선박 또는 이미지에 포함된 선박들 중 타겟 선박을 제외한 다른 선박일 수 있다.
예를 들어, 충돌 모니터링은 인접 선박과 관련한 모니터링 대상이 되는 타겟 선박의 정보를 획득하고 제공하는 것일 수 있으며, 반대로 충돌 모니터링은 타겟 선박과 관련하여 인접 선박의 정보를 획득하고 제공하는 것일 수도 있다. 구체적으로, 충돌 모니터링은 선박의 충돌 상황과 관련된 정보인 충돌 관련 정보를 제공할 수 있다. 충돌 관련 정보는 선박의 충돌 방지를 위한 정보를 포함할 수 있으며, 예를 들어 충돌 관련 정보는 인접 선박의 존재 여부, 선박과 인접 선박 사이의 거리, 선박과 인접 선박으로 접근하는 속도 등을 포함할 수 있다.
일 실시예에 따르면, 충돌 모니터링은 선박의 선수와 다른 선박 사이의 거리 및/또는 선박의 선미와 다른 선박 사이의 거리를 획득하는 것일 수 있다. 구체적으로, 충돌 모니터링은 타겟 선박의 선수와 선미 중 다른 선박과 더 가까운 하나와 다른 선박 사이의 거리를 획득하는 것일 수 있다. 이하, 선박의 선수와 다른 선박 사이의 거리 또는 선박의 선미와 다른 선박 사이의 거리는 편의상 선박간 거리로 지칭될 수 있다.
일 실시예에 따르면, 충돌 모니터링은 선박의 선수가 다른 선박으로 접근하는 속도(선박의 선수와 다른 선박 사이의 상대속도) 및/또는 선박의 선미가 다른 선박으로 접근하는 속도(선박의 선미와 다른 선박 사이의 상대 속도)를 획득하는 것일 수 있다. 구체적으로, 충돌 모니터링은 타겟 선박의 선수와 선미 중 다른 선박과 더 가까운 하나가 다른 선박으로 접근하는 속도를 획득하는 것일 수 있다.
선박의 선수 및 선미 각각에 대하여 충돌 관련 정보를 제공하는 충돌 모니터링을 통해 선박의 각 부분이 인접 선박과 충돌하지 않도록 안전하고 정확하게 선박의 접안이 가이드되는 장점이 있다.
이를 위해 충돌 모니터링은 선박이 포함된 이미지로부터 2개의 포인트를 추출하고, 추출된 2개의 포인트에 기초하여 충돌 관련 정보를 획득하는 것일 수 있다. 예를 들어, 충돌 모니터링은 이미지에서 선박의 선수 및 선미에 대응하는 2개의 포인트를 획득하고, 추출된 2개의 포인트 중 하나의 포인트로부터 선박의 선수와 관련된 충돌 관련 정보를 획득하고, 추출된 2개의 포인트 중 다른 하나의 포인트로부터 선박의 선미와 관련된 충돌 관련 정보를 획득하는 것일 수 있다. 여기서, 선박의 선수와 관련된 충돌 관련 정보는 선박의 선수와 다른 선박 사이의 거리, 선박의 선수가 다른 선박으로 접근하는 속도 등을 포함할 수 있고, 선박의 선미와 관련된 충돌 관련 정보는 선박의 선미와 다른 선박 사이의 거리, 선박의 선미가 다른 선박으로 접근하는 속도 등을 포함할 수 있다. 후술하겠지만, 추출된 2개의 포인트는 선박의 선수 및 선미에 대응하는 2개의 포인트로 또는 선박의 선수단부 및 선미단부에 대응하는 2개의 포인트로 결정될 수 있다.
다만, 이미지에 기반한 모니터링은 상술한 바와 같이 접안 모니터링을 위한 2개의 포인트 및 충돌 모니터링을 위한 2개의 포인트, 총 4개의 포인트에 기초하여 수행될 수 있으나, 예를 들어, 이미지에 기반한 모니터링은 접안 모니터링을 위한 1개의 포인트 및 충돌 모니터링을 위한 2개의 포인트에 기초하여 수행될 수 있는 등 더 적은 개수의 포인트 또는 더 많은 개수의 포인트에 기초하여 수행되어도 무방하다.
이하에서는, 일 실시예에 따른, 4개의 포인트에 기초하여 모니터링을 수행하는 방법에 대해서 상세히 설명하도록 한다.
도 17은 일 실시예에 따른 접안 모니터링 및 충돌 모니터링에 관한 순서도이다.
도 17을 참고하면, 일 실시예에 따른 항만 모니터링은 선박의 한 쌍의 제1 포인트들 및 한 쌍의 제2 포인트들을 추출하는 단계(S222), 한 쌍의 제1 포인트들에 기초하여 접안 관련 정보 획득하는 단계(S232) 및 한 쌍의 제2 포인트들에 기초하여 충돌 관련 정보 획득하는 단계(S242)를 포함할 수 있다. 여기서, 선박의 접안 관련 정보 및/또는 충돌 관련 정보는 접안 가이드 정보에 포함될 수 있다.
일 실시예에 따르면, 장치(10)는 선박이 포함된 이미지로부터 한 쌍의 제1 포인트들 및 한 쌍의 제2 포인트들을 추출할 수 있다(S222).
일 실시예에 따르면, 제어 모듈(200)은 선박의 접안 관련 정보를 획득하기 위한 한 쌍의 제1 포인트들을 추출할 수 있다. 예를 들어, 제어 모듈(200)은 선박의 선수 거리 및 선미 거리를 획득하기 위한 한 쌍의 제1 포인트들을 추출할 수 있다. 이를 위해 제어 모듈(200)은 이미지로부터 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 제1 포인트들을 추출할 수 있다. 다만, 제어 모듈(200)은 선박이 해수면과 접하는 밑면을 이루는 복수의 포인트들 중 2개의 포인트들을 한 쌍의 제1 포인트들로 추출하는 등 다른 방식으로 추출해도 무방하다.
일 실시예에 따르면, 제어 모듈(200)은 선박에 대응하는 영역에 기초하여 한 쌍의 제1 포인트들을 추출할 수 있다.
도 18은 일 실시예에 따른 접안 관련 정보의 획득을 위한 포인트 추출의 일 예에 관한 도면이다.
도 18을 참고하면 제어 모듈(200)은 상기 선박에 대응하는 영역이 해수면과 접하는 선(152)을 추출할 수 있다. 이를 위해, 제어 모듈(200)은 이미지로부터 선박에 대응하는 영역을 획득할 수 있다. 예를 들어, 제어 모듈(200)은 이미지 세그멘테이션을 수행하여 카메라로부터 획득한 이미지로부터 세그멘테이션 이미지를 생성하고, 세그멘테이션 이미지 중 픽셀의 클래스 값이 선박에 해당하는 영역을 획득할 수 있다.
또한, 제어 모듈(200)은 획득한 선박에 대응하는 영역이 해수면과 접하는 선(152)을 추출할 수 있다. 예를 들어, 제어 모듈(200)은 세그멘테이션 이미지 중 픽셀의 클래스 값이 선박에 해당하는 영역이 해수면과 접하는 선을 추출할 수 있다.
또한, 제어 모듈(200)은 상기 해수면과 접하는 선(152)을 이루는 복수의 포인트 중 임의의 2개의 포인트를 한 쌍의 제1 포인트들로 결정할 수 있다. 예를 들어, 제어 모듈(200)은 상기 해수면과 접하는 선의 양 단부를 한 쌍의 제1 포인트들(151-1, 151-2)로 결정할 수 있다. 다만, 제어 모듈(200)은 상기 해수면과 접하는 선의 양 단부와 기설정된 거리만큼 떨어진 위치에 있는 포인트들을 한 쌍의 제1 포인트들로 결정하는 등 다른 방식으로 한 쌍의 제1 포인트들을 결정하여도 무방하다.
물론, 반드시 그러한 것은 아니며, 제어 모듈(200)은 카메라로부터 획득된 촬영 영상 등의 이미지에 기초하여 한 쌍의 제1 포인트들(151-1, 151-2)을 추출해도 무방하다.
일 실시예에 따르면, 제어 모듈(200)은 이미지 상의 선박을 다각형화하는 방식으로 한 쌍의 제1 포인트들을 추출할 수 있다. 예를 들어, 제어 모듈(200)은 이미지 상의 선박의 경계를 표시하는 경계 다각형(boundary polygon)을 결정할 수 있고, 제어 모듈(200)은 결정된 경계 다각형에 기초하여 한 쌍의 제1 포인트들을 추출할 수 있다.
도 19는 일 실시예에 따른 접안 관련 정보의 획득을 위한 포인트 추출의 다른 예에 관한 도면이다.
도 19를 참고하면, 제어 모듈(200)은 이미지 상의 선박을 다각형화하여 선박의 경계를 표시하는 경계 다각형(161)을 결정할 수 있다. 예를 들어, 제어 모듈(200)은 이미지 세그멘테이션을 수행하여 카메라로부터 획득한 이미지로부터 세그멘테이션 이미지에 기초하여 선박의 경계를 표시하는 경계 다각형(161)을 생성할 수 있다. 구체적으로, 제어 모듈(200)은 세그멘테이션 이미지 중 픽셀의 클래스 값이 선박에 해당하는 영역을 다각형화하여 선박의 경계를 표시하는 경계 다각형(161)을 결정할 수 있다.
또한, 제어 모듈(200)은 결정된 경계 다각형(161)에 기초하여 선박의 접안 관련 정보를 획득하기 위한 한 쌍의 제1 포인트들(163)을 추출할 수 있다. 예를 들어, 제어 모듈(200)은 한 쌍의 제1 포인트들(163-1, 163-2)을 경계 다각형(161)의 복수의 포인트 중 임의의 두 개의 포인트로 결정할 수 있다. 구체적으로, 제어 모듈(200)은 한 쌍의 제1 포인트들(163-1, 163-2)을 경계 다각형(161)의 선박의 하부에 대응하는 복수의 포인트 중 임의의 두 개의 포인트로 결정할 수 있다. 여기서, 제어 모듈(200)은 한 쌍의 제1 포인트들(163-1, 163-2)을 경계 다각형(161)의 선박의 선수단부 및 선미단부에 대응하는 두 개의 포인트 각각과 가장 인접한 두 개의 포인트로 결정할 수 있다.
다만, 제어 모듈(200)은 경계 다각형(161)에 기초하여 한 쌍의 제1 포인트들(163-1, 163-2)을 다양한 방식으로 결정할 수 있으며, 제어 모듈(200)은 한 쌍의 제1 포인트들(163-1, 163-2)을 경계 다각형(161)의 포인트들 중 안벽과의 거리가 가장 작은 두 개의 포인트 또는 경계 다각형(161)의 선박의 선수단부 및 선미단부에 대응되는 두 개의 포인트 각각과 두 번째로 인접한 두 개의 포인트로 결정하는 등 상술한 방식에 한정되지 않고 다른 방식으로 한 쌍의 제1 포인트들(163-1, 163-2)을 결정해도 무방하다.
물론, 제어 모듈(200)은 한 쌍의 제1 포인트들(163-1, 163-2)의 추출을 경계 다각형(161)자체가 아니라 경계 다각형(161)을 포함하는 특정 영역에 기초하여 수행해도 무방하며, 경계 다각형(161)은 도 19에 도시된 다각형과는 달리 사각형, 오각형, 육각형, 칠각형 등 선박의 형태 및 크기에 따라 꼭지점의 개수가 달라져도 무방하다. 또한, 반드시 그러한 것은 아니며, 제어 모듈(200)은 카메라로부터 획득된 촬영 영상 등의 이미지에 기초하여 한 쌍의 제1 포인트들(163-1, 163-2)의 추출하는 것도 가능하다.
일 실시예에 따르면, 제어 모듈(200)은 이미지 상의 선박의 경계 다각형(161)의 일부에 기초하여 선박의 한 쌍의 제1 포인트들을 추출할 수 있다.
구체적으로, 제어 모듈(200)은 한 쌍의 제1 포인트들을 추출하기 위한 경계 다각형(161)의 기설정된 영역을 결정할 수 있다. 제어 모듈(200)은 상기 기설정된 영역에 기초하여 한 쌍의 제1 포인트들을 추출할 수 있다. 예를 들어, 제어 모듈(200)은 선박 하부에 대응하는 경계 다각형(161)의 하부 영역을 결정하고, 경계 다각형(161)의 하부 영역에 기초하여 한 쌍의 제1 포인트들을 추출할 수 있다. 여기서, 제어 모듈(200)은 경계 다각형의 기설정된 영역을 다양한 방식으로 결정할 수 있다. 예를 들어, 제어 모듈(200)은 선박의 크기 또는 형상에 기초하여 기설정된 영역을 결정할 수 있다. 구체적으로, 제어 모듈(200)은 경계 다각형의 기설정된 영역을 선박의 크기가 클수록 커지도록 결정할 수 있다. 다른 예를 들어, 제어 모듈(200)은 경계 다각형의 기설정된 영역을 선박의 형상에 따라 원형의 영역으로 결정할 수 있다.
또한, 제어 모듈(200)은 경계 다각형의 일부를 포함하는 기설정된 영역에 기초하여 한 쌍의 제1 포인트들을 추출해도 무방하며, 뿐만 아니라 2개의 포인트를 추출하여 선박의 접안 관련 정보를 획득하는 대신 영역의 외곽선, 또는 영역 자체에 기초하여 선박의 접안 관련 정보를 획득하여도 무방하다.
일 실시예에 따르면, 제어 모듈(200)은 선박의 충돌 관련 정보를 획득하기 위한 한 쌍의 제2 포인트들을 추출할 수 있다. 예를 들어, 제어 모듈(200)은 선박의 선박간 거리를 획득하기 위한 한 쌍의 제2 포인트들을 추출할 수 있다. 이를 위해 제어 모듈(200)은 이미지로부터 선박의 선수 및 선미에 대응하는 한 쌍의 제2 포인트들을 추출할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 선박에 대응하는 영역에 기초하여 한 쌍의 제2 포인트들을 추출할 수 있다.
도 20은 일 실시예에 따른 충돌 관련 정보의 획득을 위한 포인트 추출의 일 예에 관한 도면이다.
도 20을 참고하면 상기 선박에 대응하는 영역에서 선박의 선수측면에 대응하는 선수선(172) 및 선미측면에 대응하는 선미선(173)을 추출할 수 있다. 여기서, 선박의 선수측면은 선수의 단부로부터 선박이 해수면에 접하는 밑면의 선수쪽 단부까지에 해당하는 선박의 부분일 수 있고, 선박의 선미측면은 선미의 단부로부터 선박이 해수면에 접하는 밑면의 선미쪽 단부까지에 해당하는 선박의 부분일 수 있다. 이를 위해, 제어 모듈(200)은 이미지로부터 선박에 대응하는 영역을 획득할 수 있다. 예를 들어, 제어 모듈(200)은 이미지 세그멘테이션을 수행하여 카메라로부터 획득한 이미지로부터 세그멘테이션 이미지를 생성할 수 있고, 제어 모듈(200)은 세그멘테이션 이미지 중 픽셀의 클래스 값이 선박에 해당하는 영역을 획득할 수 있다.
또한, 제어 모듈(200)은 선박에 대응하는 영역에서 선박의 선수측면에 대응하는 선수선(172) 및 선미측면에 대응하는 선미선(173)을 추출할 수 있다. 예를 들어, 제어 모듈(200)은 세그멘테이션 이미지 중 픽셀의 클래스 값이 선박에 해당하는 영역에서 선박의 선수측면에 대응하는 선수선(172) 및 선미측면에 대응하는 선미선(173)을 추출할 수 있다.
또한, 제어 모듈(200)은 선수선(172)을 이루는 복수의 포인트 중 하나의 포인트 및 선미선(173)을 이루는 복수의 포인트 중 하나의 포인트를 한 쌍의 제2 포인트들로 결정할 수 있다. 예를 들어, 제어 모듈(200)은 선수선(172)의 하나의 단부 및 선미선(173)의 하나의 단부를 한 쌍의 제2 포인트들(171-1, 171-2)로 결정할 수 있다. 여기서, 선수선(172)의 하나의 단부는 선수 쪽의 단부일 수 있고, 선미선(173)의 하나의 단부는 선미 쪽의 단부일 수 있다.
다만, 제어 모듈(200)은 선수선(172)의 하나의 단부 및 선미선(173)의 하나의 단부와 기설정된 거리만큼 떨어진 위치에 있는 포인트들을 한 쌍의 제2 포인트들로 결정하는 등 다른 방식으로 한 쌍의 제2 포인트들을 결정하여도 무방하다.
물론, 반드시 그러한 것은 아니며, 제어 모듈(200)은 카메라로부터 획득된 촬영 영상 등의 이미지에 기초하여 한 쌍의 제2 포인트들(171-1, 171-2)을 추출하는 것도 가능하다.
일 실시예에 따르면, 제어 모듈(200)은 이미지 상의 선박을 다각형화하는 방식으로 한 쌍의 제2 포인트들을 추출할 수 있다.
구체적으로, 제어 모듈(200)은 이미지 상의 선박의 경계를 표시하는 경계 다각형을 결정할 수 있다. 제어 모듈(200)은 결정된 경계 다각형에 기초하여 한 쌍의 제2 포인트들을 추출할 수 있다.
도 21은 일 실시예에 따른 충돌 관련 정보의 획득을 위한 포인트 추출의 다른 예에 관한 도면이다.
도 21을 참고하면, 제어 모듈(200)은 이미지 상의 선박을 다각형화하여 선박의 경계를 표시하는 경계 다각형(181)을 결정할 수 있다. 제어 모듈(200)은 결정된 경계 다각형(181)에 기초하여 선박의 충돌 관련 정보를 획득하기 위한 한 쌍의 제2 포인트들(183-1, 183-2)을 추출할 수 있다. 구체적으로, 제어 모듈(200)은 선박의 선수 및 선미에 대응하는 한 쌍의 제2 포인트들(183-1, 183-2)을 경계 다각형(181)에 기초하여 추출할 수 있다. 예를 들어, 제어 모듈(200)은 한 쌍의 제2 포인트들(183-1, 183-2)을 경계 다각형(181)의 복수의 포인트 중 임의의 두 개의 포인트로 결정할 수 있다. 구체적으로, 제어 모듈(200)은 한 쌍의 제2 포인트들(183-1, 183-2)을 경계 다각형(181)의 선박의 제1 방향 부분(일 예로, 선수)에 대응하는 복수의 제1 방향 포인트(일 예로, 선수 포인트) 중 하나의 포인트 및 경계 다각형(181)의 선박의 제2 방향 부분(일 예로, 선미)에 대응하는 복수의 제2 방향 포인트(일 예로, 선미 포인트) 중 하나의 포인트로 결정할 수 있다. 여기서, 제어 모듈(200)은 한 쌍의 제2 포인트들(183-1, 183-2)을 선수 포인트들 중 선수단부에 대응하는 하나의 포인트 및 선미 포인트들 중 선미단부에 대응하는 하나의 포인트로 결정할 수 있다.
제어 모듈(200)은 한 쌍의 제2 포인트들(183-1, 183-2)을 경계 다각형(181)의 포인트들 중 제2 포인트(183-1. 183-2) 각각과 다른 오브젝트 사이의 거리의 합이 최소가 되는 2개의 포인트 또는 선수 포인트들 중 선수단부에 대응하는 포인트와 가장 인접한 하나의 포인트 및 선미 포인트들 중 선미단부에 대응하는 포인트와 가장 인접한 하나의 포인트로 결정하는 등 상술한 방식에 한정되지 않고 제어 모듈(200)은 경계 다각형(181)에 기초하여 한 쌍의 제2 포인트들(183-1, 183-2)을 다양한 방식으로 결정할 수 있다.
물론, 제어 모듈(200)은 한 쌍의 제2 포인트들(183-1, 183-2)의 추출을 경계 다각형(181)자체가 아니라 경계 다각형(181)을 포함하는 특정 영역에 기초하여 수행해도 무방하다. 또한, 경계 다각형(181)은 도 21에 도시된 다각형과는 달리 사각형, 오각형, 육각형, 칠각형 등 선박의 형태 및 크기에 따라 꼭지점의 개수가 달라져도 무방하다. 반드시 그러한 것은 아니며, 제어 모듈(200)은 카메라로부터 획득된 촬영 영상 등의 이미지에 기초하여 한 쌍의 제2 포인트들(183-1, 183-2)을 추출하는 것도 가능하다.
일 실시예에 따르면, 제어 모듈(200)은 이미지 상의 선박의 경계 다각형(181)의 일부에 기초하여 한 쌍의 제2 포인트들(183-1, 183-2)을 추출할 수 있다. 구체적으로, 제어 모듈(200)은 한 쌍의 제2 포인트들(183-1, 183-2)의 추출을 위한 경계 다각형(181)의 기설정된 영역을 결정할 수 있다. 예를 들어, 제어 모듈(200)은 선박 하부에 대응하는 경계 다각형(181)의 하부 영역을 결정할 수 있다. 제어 모듈(200)은 상기 기설정된 영역에 기초하여 한 쌍의 제2 포인트들(183-1, 183-2)을 추출할 수 있다. 예를 들어, 제어 모듈(200)은 경계 다각형(181)의 하부 영역에 기초하여 선박의 충돌 관련 정보를 획득하기 위한 한 쌍의 제2 포인트들(183-1, 183-2)을 추출할 수 있다.
제어 모듈(200)은 경계 다각형(181)의 기설정된 영역을 다양한 방식으로 결정할 수 있다. 예를 들어, 제어 모듈(200)은 기설정된 영역을 선박의 크기 또는 형상에 기초하여 결정할 수 있다. 구체적으로, 제어 모듈(200)은 경계 다각형(181)의 기설정된 영역을 선박의 크기가 클수록 커지도록 결정할 수 있다. 다른 예를 들어, 제어 모듈(200)은 경계 다각형(181)의 기설정된 영역을 선박의 형상에 따라 원형의 영역으로 결정할 수 있다.
물론, 제어 모듈(200)은 경계 다각형(181)의 일부를 포함하는 기설정된 영역에 기초하여 한 쌍의 제2 포인트들(183-1, 183-2)을 추출해도 무방하다. 또한, 제어 모듈(200)은 2개의 포인트를 추출하여 선박의 충돌 관련 정보를 획득하는 대신 영역의 외곽선, 또는 영역 자체에 기초하여 선박의 충돌 관련 정보를 획득하여도 무방하다.
또한 일 실시예에 따르면 선박의 한 쌍의 제1 포인트들 및 한 쌍의 제2 포인트들을 추출하는 단계(S222)는 제어 모듈(200)이 인공 신경망을 이용하여 선박의 접안 관련 정보를 획득하기 위한 한 쌍의 제1 포인트들 및/또는 선박의 충돌 관련 정보를 획득하기 위한 한 쌍의 제2 포인트들을 추출하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 인공 신경망을 이용하여 선박의 선수 거리 및 선미 거리를 획득하기 위한 한 쌍의 제1 포인트들을 추출할 수 있다. 다른 예를 들어, 제어 모듈(200)은 인공 신경망을 이용하여 선박의 선박간 거리를 획득하기 위한 한 쌍의 제2 포인트들을 추출할 수 있다.
도 22는 일 실시예에 따른 항만 모니터링을 위한 포인트들의 추출의 일 예에 관한 도면이다.
도 22를 참고하면, 제어 모듈(200)은 선박의 이미지로부터 이미지 세그멘테이션에 의해 선박의 접안 관련 정보를 획득하기 위한 한 쌍의 제1 포인트들(191-1, 191-2)을 추출할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 입력 이미지로부터 상기 입력 이미지에 포함된 오브젝트의 특징점을 출력하도록 학습된 인공 신경망을 이용한 이미지 세그멘테이션에 의해 선박의 접안 관련 정보를 획득하기 위한 한 쌍의 제1 포인트들(191-1, 191-2)을 추출할 수 있다. 예를 들어, 제어 모듈(200)은 입력 이미지 및 상기 입력 이미지에 포함된 선박 및 바다를 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박 및 선박의 해수면과 접하는 밑면의 양 단부를 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 이미지 세그멘테이션을 수행하여 한 쌍의 제1 포인트들(191-1, 191-2)을 추출할 수 있다. 여기서, 제어 모듈(200)은 이미지로부터 세그멘테이션 이미지를 생성할 수 있고, 세그멘테이션 이미지 중 픽셀의 클래스 값이 선박의 해수면과 접하는 밑면의 양 단부에 해당하는 픽셀을 획득할 수 있다.
물론, 제어 모듈(200)은 입력 이미지로부터 상기 입력 이미지에 포함된 오브젝트의 특징점을 출력하도록 학습된 인공 신경망을 이용한 이미지 디텍션에 의해 선박의 접안 관련 정보를 획득하기 위한 한 쌍의 제1 포인트들(191-1, 191-2)을 추출해도 무방하다. 또한, 제어 모듈(200)은 하나의 인공 신경망을 통해 세그멘테이션/디텍션을 수행할 수도 있고, 제어 모듈(200)은 복수의 인공 신경망을 이용하여 각각의 인공 신경망이 세그멘테이션/디텍션을 수행하여 한 쌍의 제1 포인트들(191-1, 191-2)을 추출할 수도 있다.
또한, 제어 모듈(200)은 선박의 이미지로부터 이미지 세그멘테이션에 의해 선박의 충돌 관련 정보를 획득하기 위한 한 쌍의 제2 포인트들(192-1, 192-2)을 추출할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 입력 이미지로부터 상기 입력 이미지에 포함된 오브젝트의 특징점을 출력하도록 학습된 인공 신경망을 이용한 이미지 세그멘테이션에 의해 선박의 충돌 관련 정보를 획득하기 위한 한 쌍의 제2 포인트들(192-1, 192-2)을 추출할 수 있다. 예를 들어, 제어 모듈(200)은 입력 이미지 및 상기 입력 이미지에 포함된 선박 및 바다를 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박, 선수의 하나의 포인트 및 선미의 하나의 포인트를 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 이미지 세그멘테이션을 수행하여 한 쌍의 제2 포인트들(192-1, 192-2)을 추출할 수 있다. 구체적으로, 제어 모듈(200)은 이미지로부터 세그멘테이션 이미지를 생성할 수 있고, 세그멘테이션 이미지 중 픽셀의 클래스 값이 선수 및 선미에 해당하는 픽셀을 획득할 수 있다. 여기서, 픽셀의 클래스 값은 선수단부 및 선미단부로 설정되는 값일 수도 있다.
물론 제어 모듈(200)은 입력 이미지로부터 상기 입력 이미지에 포함된 오브젝트의 특징점을 출력하도록 학습된 인공 신경망을 이용한 이미지 디텍션에 의해 선박의 충돌 관련 정보를 획득하기 위한 한 쌍의 제2 포인트들(192-1, 192-2)을 추출해도 무방하다. 또한, 제어 모듈(200)은 하나의 인공 신경망을 통해 세그멘테이션/디텍션을 수행할 수도 있고, 제어 모듈(200)은 복수의 인공 신경망을 이용하여 각각의 인공 신경망이 세그멘테이션/디텍션을 수행하여 한 쌍의 제2 포인트들(192-1, 192-2)을 추출할 수도 있다.
다만, 한 쌍의 제1 포인트들 및 한 쌍의 제2 포인트들의 추출(S222)은 상술한 방식에 의해 수행되는 것으로 한정될 필요는 없고 다양한 방식으로 수행될 수 있다.
일 실시예에 따르면, 장치(10)는 추출된 한 쌍의 제1 포인트들에 기초하여 접안 관련 정보를 획득할 수 있다(S232).
한 쌍의 제1 포인트들에 기초하여 접안 관련 정보 획득하는 단계(S232)는 제어 모듈(200)이 한 쌍의 제1 포인트들 각각과 관련된 접안 관련 정보를 획득하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 한 쌍의 제1 포인트들 중 하나의 제1 포인트와 안벽 사이의 거리 및 다른 하나의 제1 포인트와 안벽 사이의 거리를 획득할 수 있다. 즉, 제어 모듈(200)은 한 쌍의 제1 포인트들에 기초하여 선박의 선수 거리 및 선미 거리를 획득할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 이미지 픽셀을 기반으로 선박의 선수 거리 및/또는 선미 거리를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 이미지 픽셀을 기반으로 한 쌍의 제1 포인트들과 안벽 사이의 거리를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 한 쌍의 제1 포인트들 중 하나의 제1 포인트와 안벽 사이의 거리를 선수 거리로서 이미지 픽셀을 기반으로 획득할 수 있고, 제어 모듈(200)은 한 쌍의 제1 포인트들 중 다른 하나의 제1 포인트와 안벽 사이의 거리를 선미 거리로서 이미지 픽셀을 기반으로 획득할 수 있다. 여기서, 픽셀은 제어 모듈(200)이 이미지 분석을 수행하는 이미지 상의 픽셀일 수 있으나, 스크린 상에서 디스플레이 되는 이미지 상의 픽셀이 되는 등 이에 한정되지 않는다.
도 23은 일 실시예에 따른 접안 관련 정보 획득의 일 예에 관한 도면이다.
도 23을 참조하면, 제어 모듈(200)은 이미지 픽셀을 기반으로 한 쌍의 제1 포인트들(2001, 2002) 각각과 안벽 사이의 거리를 획득할 수 있다.
제어 모듈(200)은 이미지 픽셀을 기반으로 제1 포인트(2001)와 안벽 사이의 선수 거리(2003)를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 하나의 이미지 픽셀마다 일정 거리를 할당하고 제1 포인트(2001)와 안벽 사이의 픽셀 개수에 비례하여 선수 거리(2003)를 산출할 수 있다. 구체적으로, 제어 모듈(200)은 제1 포인트(2001)와 안벽 사이의 픽셀 개수와 이미지 픽셀마다 할당된 거리를 곱하여 선수 거리(2003)를 산출할 수 있다. 예를 들어, 도 23에서 각 픽셀마다 할당된 거리가 50m인 경우, 제1 포인트(2001)와 안벽 사이의 픽셀의 수가 5개이므로, 제어 모듈(200)은 선수 거리(2003)를 각 픽셀마다 할당된 거리 50m와 제1 포인트(2001)와 안벽 사이의 픽셀의 수 5개를 곱한 값인 250m로 산출할 수 있다. 여기서, 제어 모듈(200)은 카메라 각도에 의해 이미지 상에서 안벽으로부터 먼 픽셀일수록 픽셀에 할당되는 거리를 증가시킬 수 있다. 또는 제어 모듈(200)은 픽셀의 이미지상에서의 좌표값을 바탕으로 픽셀 사이의 거리를 산출하고 이에 기초하여 포인트 사이의 거리를 산출할 수도 있다.
또한, 제어 모듈(200)은 이미지 픽셀을 기반으로 제1 포인트(2002)와 안벽 사이의 선미 거리(2004)를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 하나의 이미지 픽셀마다 일정 거리를 할당하고 제1 포인트(2002)와 안벽 사이의 픽셀 개수에 비례하여 선미 거리(2004)를 산출할 수 있다. 구체적으로, 제어 모듈(200)은 제1 포인트(2002)와 안벽 사이의 픽셀 개수와 이미지 픽셀마다 할당된 거리를 곱하여 선미 거리(2004)를 산출할 수 있다. 예를 들어, 도 23에서 각 픽셀마다 할당된 거리가 50m인 경우, 제1 포인트(2002)와 안벽 사이의 픽셀의 수가 6.5개이므로, 제어 모듈(200)은 선미 거리(2004)를 각 픽셀마다 할당된 거리 50m와 제1 포인트(2002)와 안벽 사이의 픽셀의 수 6.5개를 곱한 값인 325m로 산출할 수 있다. 여기서, 제어 모듈(200)은 카메라 각도에 의해 이미지 상에서 안벽으로부터 먼 픽셀일수록 픽셀에 할당되는 거리를 증가시킬 수 있다. 또한 제어 모듈(200)은 픽셀의 이미지상에서의 좌표값을 바탕으로 픽셀 사이의 거리를 산출하고 이에 기초하여 포인트 사이의 거리를 산출할 수도 있다.
또한, 한 쌍의 제1 포인트들에 기초하여 접안 관련 정보 획득하는 단계(S232)는 제어 모듈(200)이 한 쌍의 제1 포인트들 각각의 안벽으로 접근하는 속도를 획득하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 한 쌍의 제1 포인트들 중 하나의 제1 포인트와 안벽 사이의 거리에 기초하여 상기 하나의 제1 포인트가 안벽으로 접근하는 속도를 획득할 수 있다. 또한, 제어 모듈(200)은 한 쌍의 제1 포인트들 중 다른 하나의 제1 포인트와 안벽 사이의 거리에 기초하여 상기 다른 하나의 제1 포인트가 안벽으로 접근하는 속도를 획득할 수 있다. 즉, 제어 모듈(200)은 한 쌍의 제1 포인트들에 기초하여 선박의 선수 속도 및 선미 속도를 획득할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 이미지 픽셀을 기반으로 선박의 선수 속도 및/또는 선미 속도를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 이미지 픽셀을 기반으로 한 쌍의 제1 포인트들 각각이 안벽으로 접근하는 속도를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 한 쌍의 제1 포인트들 중 하나의 제1 포인트가 안벽으로 접근하는 속도를 선수 속도로서 이미지 픽셀을 기반으로 획득할 수 있다. 또한, 제어 모듈(200)은 한 쌍의 제1 포인트들 중 다른 하나의 제1 포인트가 안벽으로 접근하는 속도를 선미 속도로서 이미지 픽셀을 기반으로 획득할 수 있다.
도 23을 참조하면, 제어 모듈(200)은 이미지 픽셀을 기반으로 한 쌍의 제1 포인트들(2001, 2002) 각각이 안벽으로 접근하는 속도를 획득할 수 있다.
제어 모듈(200)은 이미지 픽셀을 기반으로 제1 포인트(2001)가 안벽으로 접근하는 속도를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 이미지 픽셀을 기반으로 획득한 제1 포인트(2001)와 안벽 사이의 거리인 선수 거리(2003)에 기초하여 선수 속도를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 획득한 선수 거리(2003)의 변화에 기초하여 선수 속도를 산출할 수 있다. 이 경우 제어 모듈(200)은 복수의 이미지 또는 영상 프레임에서의 선수 거리(2003)를 비교하여 선수 속도를 산출할 수 있다. 예를 들어, 제어 모듈(200)은 현재 프레임에서의 선수 거리(2003)와 후속 프레임에서의 선수 거리의 픽셀 개수의 차이 및 프레임 사이의 시간 간격에 기초하여 선수 속도를 산출할 수 있다. 구체적으로, 제어 모듈(200)은 현재 프레임에서의 선수 거리(2003)와 후속 프레임에서의 선수 거리의 픽셀 개수의 차이에 픽셀에 할당된 거리를 곱한 값에서 각 프레임 사이의 시간 간격을 나눈 값을 선수 속도로 산출할 수 있다. 예를 들어, 도 23에서 각 픽셀마다 할당된 거리가 50m인 경우, 프레임 사이의 시간 간격이 1분이고, 현재 프레임에서의 선수 거리(2003) 및 후속 프레임에서의 선수 거리 사이의 픽셀 개수 차이가 1개이면 제어 모듈(200)은 상술한 바에 따라 선수 속도는 50m/min로 산출될 수 있다. 여기서, 제어 모듈(200)은 현재 프레임에서의 선수 거리보다 후속 프레임에서의 선수 거리의 픽셀 개수가 많은 경우 선수가 안벽으로부터 멀어지는 것으로 선수 속도의 방향을 결정할 수 있다.
또한, 제어 모듈(200)은 이미지 픽셀을 기반으로 제1 포인트(2002)가 안벽으로 접근하는 선미 속도를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 이미지 픽셀을 기반으로 획득한 제1 포인트(2002)와 안벽 사이의 거리인 선미 거리(2004)에 기초하여 선미 속도를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 획득한 선미 거리(2004)의 변화에 기초하여 선미 속도를 산출할 수 있다. 이 경우 제어 모듈(200)은 복수의 이미지 또는 영상 프레임에서의 선미 거리(2004)를 비교하여 선미 속도를 산출할 수 있다. 예를 들어, 제어 모듈(200)은 현재 프레임에서의 선미 거리(2004)와 후속 프레임에서의 선미 거리의 픽셀 개수의 차이 및 프레임 사이의 시간 간격에 기초하여 선미 속도를 산출할 수 있다. 구체적으로, 제어 모듈(200)은 현재 프레임에서의 선미 거리(2004)와 후속 프레임에서의 선미 거리의 픽셀 개수의 차이에 픽셀에 할당된 거리를 곱한 값에서 각 프레임 사이의 시간 간격을 나눈 값을 선미 속도로 산출할 수 있다. 예를 들어, 도 23에서 각 픽셀마다 할당된 거리가 50m인 경우, 프레임 사이의 시간 간격이 1분이고, 현재 프레임에서의 선미 거리(2004) 및 후속 프레임에서의 선미 거리 사이의 픽셀 개수 차이가 2개이면 제어 모듈(200)은 상술한 바에 따라 선미 속도는 100m/min로 산출될 수 있다. 여기서, 제어 모듈(200)은 현재 프레임에서의 선미 거리보다 후속 프레임에서의 선미 거리의 픽셀 개수가 많은 경우 선미가 안벽으로부터 멀어지는 것으로 선미 속도의 방향을 결정할 수 있다.
또한, 제어 모듈(200)은 카메라 각도에 의해 이미지 상에서 안벽으로부터 먼 픽셀일수록 픽셀에 할당되는 거리를 증가시킬 수 있다. 또한 제어 모듈(200)은 픽셀의 이미지상에서의 좌표값을 바탕으로 픽셀 사이의 거리를 산출하고 픽셀 사이의 거리에 기초하여 포인트 사이의 상대 속도를 산출할 수도 있다.
일 실시예에 따르면, 장치(10)는 추출된 한 쌍의 제2 포인트들에 기초하여 충돌 관련 정보를 획득할 수 있다(S242).
일 실시예에 따르면, 한 쌍의 제2 포인트들에 기초하여 충돌 관련 정보 획득하는 단계(S242)는 제어 모듈(200)이 한 쌍의 제2 포인트들 각각과 관련된 충돌 관련 정보를 획득하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 인접 선박이 있는 경우 한 쌍의 제2 포인트들에 기초하여 선박의 선박간 거리를 획득할 수 있다. 여기서, 제어 모듈(200)은 인접 선박이 있는 경우 한 쌍의 제2 포인트들 중 하나의 제2 포인트에 기초하여 선박의 선박간 거리를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 인접 선박과 더 가까운 하나의 제2 포인트에 기초하여 선박의 선박간 거리를 획득할 수 있다. 또는, 제어 모듈(200)은 한 쌍의 제2 포인트들 각각과 인접 선박 사이의 거리를 획득하고 획득한 양 거리 중 더 낮은 거리 값을 선박간 거리로 결정할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 인접 선박이 있는 경우, 선박의 선박간 거리를 이미지 픽셀을 기반으로 획득할 수 있다. 예를 들어, 제어 모듈(200)은 한 쌍의 제2 포인트들 각각과 다른 선박 사이의 거리를 이미지 픽셀을 기반으로 획득할 수 있다. 여기서, 제어 모듈(200)은 인접 선박과 더 가까운 제2 포인트와 인접 선박 사이의 거리를 이미지 픽셀을 기반으로 획득할 수 있다.
도 24는 일 실시예에 따른 충돌 관련 정보 획득의 일 예에 관한 도면이다.
도 24를 참조하면, 제어 모듈(200)은 이미지 픽셀을 기반으로 한 쌍의 제2 포인트들(2101, 2102)과 다른 선박(2105) 사이의 거리를 획득할 수 있다.
제어 모듈(200)은 선박의 선박간 거리(2103)를 이미지 픽셀 기반으로 획득할 수 있다. 예를 들어, 제어 모듈(200)은 선박의 한 쌍의 제2 포인트들(2101, 2102) 중 다른 선박(2105)과 더 가까운 하나의 제2 포인트(2101)사이의 거리를 이미지 픽셀 기반으로 획득할 수 있다. 여기서, 제어 모듈(200)은 하나의 이미지 픽셀마다 일정 거리를 할당하고 다른 선박(2105)과 더 가까운 제2 포인트(2101)와 다른 선박(2105) 사이의 픽셀 개수에 비례하여 선박간 거리(2103)를 산출할 수 있다. 구체적으로, 제어 모듈(200)은 제2 포인트(2101)와 다른 선박(2105) 사이의 픽셀 개수와 이미지 픽셀마다 할당된 거리를 곱하여 선박간 거리(2103)를 산출할 수 있다. 예를 들어, 도 24에서 각 픽셀마다 할당된 거리가 50m인 경우, 제2 포인트(2101)와 다른 선박(2105) 사이의 픽셀의 수가 7개이므로, 제어 모듈(200)은 선박간 거리(2103)를 각 픽셀마다 할당된 거리 50m와 제2 포인트(2101)와 다른 선박(2105) 사이의 픽셀의 수 7개를 곱한 값인 350m로 산출할 수 있다. 여기서, 제어 모듈(200)은 카메라 각도에 의해 이미지 상에서 안벽으로부터 먼 픽셀일수록 픽셀에 할당되는 거리를 증가시킬 수 있다. 또는 제어 모듈(200)은 픽셀의 이미지상에서의 좌표값을 바탕으로 픽셀 사이의 거리를 산출하고 이에 기초하여 포인트 사이의 거리를 산출할 수도 있다.
일 실시예에 따르면, 한 쌍의 제2 포인트들에 기초하여 충돌 관련 정보 획득하는 단계(S242)는 제어 모듈(200)이 인접 선박이 있는 경우 한 쌍의 제2 포인트들에 기초하여 선박과 인접 선박 사이의 상대 속도를 획득하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 인접 선박이 있는 경우 한 쌍의 제2 포인트들 중 하나에 기초하여 선박과 인접 선박 사이의 상대 속도를 획득할 수 있다. 여기서, 제어 모듈(200)은 한 쌍의 제2 포인트들 중 인접 선박에 더 가까운 하나의 제2 포인트에 기초하여 선박과 인접 선박 사이의 상대 속도를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 한 쌍의 제2 포인트들 중 하나의 제2 포인트와 다른 선박 사이의 거리에 기초하여 상기 하나의 제2 포인트가 다른 선박으로 접근하는 속도를 획득할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 이미지 픽셀을 기반으로 선박과 다른 선박 사이의 상대 속도를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 이미지 픽셀을 기반으로 선박의 선수가 다른 선박으로 접근하는 속도 및/또는 선박의 선미가 다른 선박으로 접근하는 속도를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 한 쌍의 제2 포인트들 각각이 다른 선박으로 접근하는 속도를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 한 쌍의 제2 포인트들 중 다른 선박과 더 가까운 하나의 제2 포인트가 다른 선박으로 접근하는 속도를 이미지 픽셀을 기반으로 획득할 수 있다.
도 24를 참조하면, 제어 모듈(200)은 이미지 픽셀을 기반으로 한 쌍의 제2 포인트들(2101, 2102) 각각이 다른 선박(2105)으로 접근하는 속도를 획득할 수 있다.
제어 모듈(200)은 이미지 픽셀을 기반으로 제2 포인트(2101)가 다른 선박(2105)으로 접근하는 속도를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 이미지 픽셀을 기반으로 획득한 제2 포인트(2101)와 다른 선박(2105) 사이의 거리인 선박간 거리에 기초하여 선박과 다른 선박(2105) 사이의 상대 속도를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 획득한 선박간 거리의 변화에 기초하여 선박과 다른 선박(2105) 사이의 상대 속도를 산출할 수 있다. 이 경우 제어 모듈(200)은 복수의 이미지 또는 영상 프레임에서의 선박간 거리를 비교하여 선박과 다른 선박(2105) 사이의 상대 속도를 산출할 수 있다. 예를 들어, 제어 모듈(200)은 현재 프레임에서의 선박간 거리와 후속 프레임에서의 선박간 거리의 픽셀 개수의 차이 및 프레임 사이의 시간 간격에 기초하여 선박과 다른 선박(2105) 사이의 상대 속도를 산출할 수 있다. 구체적으로, 제어 모듈(200)은 현재 프레임에서의 선박간 거리와 후속 프레임에서의 선박간 거리의 픽셀 개수의 차이에 픽셀에 할당된 거리를 곱한 값에서 각 프레임 사이의 시간 간격을 나눈 값을 선박과 다른 선박(2105) 사이의 상대 속도로 산출할 수 있다. 예를 들어, 도 24에서 각 픽셀마다 할당된 거리가 50m인 경우, 프레임 사이의 시간 간격이 1분이고, 현재 프레임에서의 선박간 거리 및 후속 프레임에서의 선박간 거리 사이의 픽셀 개수 차이가 3개이면 제어 모듈(200)은 상술한 바에 따라 선박과 다른 선박(2105) 사이의 상대 속도는 150m/min로 산출될 수 있다. 여기서, 제어 모듈(200)은 현재 프레임에서의 선박간 거리보다 후속 프레임에서의 선박간 거리의 픽셀 개수가 많은 경우 선박이 다른 선박(2105)으로부터 멀어지는 것으로 선박과 다른 선박(2105) 사이의 상대 속도의 방향을 결정할 수 있다.
이미지에 존재하는 물체는 수평면(해수면) 상에 존재하는 것으로 취급된다. 즉, 선박의 아래 부분보다 윗부분이 더 멀리 있는 것으로 취급된다. 따라서, 선박과 다른 오브젝트 사이의 거리/상대속도 계산 시 선박의 윗부분을 기준으로 계산하는 경우 오차가 생길 수 있으며 특히 선박이 기울어져 들어오는 경우 오차가 더 커질 수 있다.
이러한 오차를 보정하기 위해, 일 실시예에 따른 한 쌍의 제2 포인트들에 기초하여 충돌 관련 정보 획득하는 단계(S242)는 제어 모듈(200)이 한 쌍의 제2 포인트들과 선박이 해수면과 접하는 밑면과 수직하게 접하는 위치의 한 쌍의 제3 포인트들에 기초하여 선박과 다른 선박 사이의 충돌 관련 정보를 획득하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 한 쌍의 제2 포인트들과 선박이 해수면과 접하는 밑면과 수직하게 접하는 위치의 한 쌍의 제3 포인트들에 기초하여 선박의 선박간 거리 및/또는 선박과 인접 선박 사이의 상대 속도를 획득할 수 있다. 여기서, 제어 모듈(200)은 한 쌍의 제3 포인트들 중 인접 선박과 더 가까운 하나의 제3 포인트에 기초하여 선박의 선박간 거리 및/또는 선박과 인접 선박 사이의 상대 속도를 획득할 수 있다.
도 25는 일 실시예에 따른 충돌 관련 정보 획득의 다른 예에 관한 도면이다.
도 25를 참고하면, 제어 모듈(200)은 S222 단계를 통해 추출된 한 쌍의 제2 포인트들(2201-1, 2201-2)에 기초하여 선박의 충돌 관련 정보 획득을 위한 한 쌍의 제3 포인트들(2203-1, 2203-2)을 추출할 수 있다. 예를 들어, 제어 모듈(200)은 한 쌍의 제3 포인트들(2203-1, 2203-2)을 한 쌍의 제2 포인트들(2201-1, 2201-2)과 선박이 해수면과 접하는 밑면과 수직하게 접하는 2개의 포인트로 결정할 수 있다. 여기서, 제어 모듈(200)은 한 쌍의 제3 포인트들(2203-1, 2203-2) 중 다른 선박(2204)과 더 가까운 제3 포인트(2203)에 기초하여 선박의 충돌 관련 정보를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 한 쌍의 제3 포인트들(2203-1, 2203-2) 중 다른 선박(2204)과 더 가까운 제3 포인트(2203-2)와 다른 선박(2204) 사이의 거리를 획득할 수 있다.
다만, 제어 모듈(200)은 제3 포인트(2203-1, 2203-2)를 한 쌍의 제2 포인트들(2201-1, 2201-2)과 선박이 해수면과 접하는 밑면 사이의 임의의 포인트로 결정하는 등 상술한 방식에 한정되지 않고 한 쌍의 제2 포인트들(2201-1, 2201-2)에 기초하여 한 쌍의 제3 포인트들(2203-1, 2203-2)을 다양하게 결정할 수 있다. 또한, 제어 모듈(200)은 선박의 충돌 관련 정보를 획득하기 위한 2개의 제3 포인트(2203-1, 2203-2)를 추출하는 대신 1개 또는 2개 이상의 포인트를 추출하여도 무방하다.
일 실시예에 따르면, 제어 모듈(200)은 인접 선박이 있는 경우, 선박의 선박간 거리를 이미지 픽셀을 기반으로 획득할 수 있다. 예를 들어, 제어 모듈(200)은 한 쌍의 제3 포인트들 각각과 다른 선박 사이의 거리를 이미지 픽셀을 기반으로 획득할 수 있다. 여기서, 제어 모듈(200)은 다른 선박과 더 가까운 제3 포인트와 다른 선박 사이의 거리를 이미지 픽셀을 기반으로 획득할 수 있다.
도 25를 참조하면, 제어 모듈(200)은 이미지 픽셀을 기반으로 한 쌍의 제3 포인트들(2203-1, 2203-2)과 다른 선박(2204) 사이의 거리를 획득할 수 있다.
제어 모듈(200)은 선박의 선박간 거리(2205)를 이미지 픽셀 기반으로 획득할 수 있다. 예를 들어, 제어 모듈(200)은 선박의 한 쌍의 제3 포인트들(2203-1, 2203-2) 중 다른 선박(2204)과 더 가까운 하나의 제3 포인트(2203-2)와 다른 선박(2204)사이의 거리를 이미지 픽셀 기반으로 획득할 수 있다. 여기서, 제어 모듈(200)은 하나의 이미지 픽셀마다 일정 거리를 할당하고 다른 선박(2204)과 더 가까운 제3 포인트(2203-2)와 다른 선박(2204) 사이의 픽셀 개수에 비례하여 선박간 거리(2205)를 산출할 수 있다. 구체적으로, 제어 모듈(200)은 제3 포인트(2203-2)와 다른 선박(2204) 사이의 픽셀 개수와 이미지 픽셀마다 할당된 거리를 곱하여 선박간 거리(2205)를 산출할 수 있다. 예를 들어, 도 25에서 각 픽셀마다 할당된 거리가 50m인 경우, 제3 포인트(2203-2)와 다른 선박(2204) 사이의 픽셀의 수가 11개이므로, 제어 모듈(200)은 선박간 거리(2205)를 각 픽셀마다 할당된 거리 50m와 제3 포인트(2203-2)와 다른 선박 사이의 픽셀의 수 11개를 곱한 값인 550m로 산출할 수 있다. 여기서, 제어 모듈(200)은 카메라 각도에 의해 이미지 상에서 안벽으로부터 먼 픽셀일수록 픽셀에 할당되는 거리를 증가시킬 수 있다. 또는 제어 모듈(200)은 픽셀의 이미지상에서의 좌표값을 바탕으로 픽셀 사이의 거리를 산출하고 이에 기초하여 포인트 사이의 거리를 산출할 수도 있다.
일 실시예에 따르면, 제어 모듈(200)은 이미지 픽셀을 기반으로 선박과 인접 선박 사이의 상대 속도를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 한 쌍의 제3 포인트들 각각이 다른 선박으로 접근하는 속도를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 한 쌍의 제3 포인트들 중 다른 선박과 더 가까운 하나의 제3 포인트가 다른 선박으로 접근하는 속도를 이미지 픽셀을 기반으로 획득할 수 있다.
도 25를 참조하면 제어 모듈(200)은 이미지 픽셀을 기반으로 한 쌍의 제3 포인트들(2203-1, 2203-2) 각각이 다른 선박(2204)으로 접근하는 속도를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 선박의 한 쌍의 제3 포인트들(2203-1, 2203-2) 중 다른 선박(2204)과 더 가까운 하나의 제3 포인트(2203-2)가 다른 선박(2204)으로 접근하는 속도를 이미지 픽셀 기반으로 획득할 수 있다.
구체적으로, 제어 모듈(200)은 이미지 픽셀을 기반으로 획득한 제3 포인트(2203-2)와 다른 선박(2204) 사이의 선박간 거리(2205)에 기초하여 선박과 다른 선박(2204) 사이의 상대 속도를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 획득한 선박간 거리(2205)의 변화에 기초하여 선박과 다른 선박(2204) 사이의 상대 속도를 산출할 수 있다. 이 경우 제어 모듈(200)은 복수의 이미지 또는 영상 프레임에서의 선박간 거리(2205)를 비교하여 선박과 다른 선박(2204) 사이의 상대 속도를 산출할 수 있다. 예를 들어, 제어 모듈(200)은 현재 프레임에서의 선박간 거리(2205)와 후속 프레임에서의 선박간 거리의 픽셀 개수의 차이 및 프레임 사이의 시간 간격에 기초하여 선박과 다른 선박(2204) 사이의 상대 속도를 산출할 수 있다. 구체적으로, 제어 모듈(200)은 현재 프레임에서의 선박간 거리(2205)와 후속 프레임에서의 선박간 거리의 픽셀 개수의 차이에 픽셀에 할당된 거리를 곱한 값에서 각 프레임 사이의 시간 간격을 나눈 값을 선박과 다른 선박(2204) 사이의 상대 속도로 산출할 수 있다. 예를 들어, 도 25에서 각 픽셀마다 할당된 거리가 50m인 경우, 프레임 사이의 시간 간격이 1분이고, 현재 프레임에서의 선박간 거리(2205) 및 후속 프레임에서의 선박간 거리 사이의 픽셀 개수 차이가 3개이면 제어 모듈(200)은 상술한 바에 따라 선박과 다른 선박(2204) 사이의 상대 속도는 150m/min로 산출될 수 있다. 여기서, 제어 모듈(200)은 현재 프레임에서의 선박간 거리보다 후속 프레임에서의 선박간 거리의 픽셀 개수가 많은 경우 선박이 다른 선박(2204)으로부터 멀어지는 것으로 선박과 다른 선박(2204) 사이의 상대 속도의 방향을 결정할 수 있다.
선박과 다른 선박 사이의 거리/속도를 추정함에 있어서, 다른 선박에 대응하는 포인트는 다양한 방식으로 결정될 수 있다. 예를 들어, 다른 선박에 대응하는 포인트는 S222 단계에 따라 추출된 선박의 제2 포인트 중 하나일 수 있다. 다른 예를 들어, 다른 오브젝트(선박)에 대응하는 포인트는 S222 단계에 따라 추출된 제2 포인트가 선박이 해수면과 접하는 밑면과 수직하게 접하는 지점인 제3 포인트일 수도 있다.
항만 모니터링은 선박의 선수/선미를 구별하는 단계를 더 포함할 수 있다. 선박의 선수/선미를 구별하는 것은 선박의 전면과 후면을 결정하는 것을 의미할 수 있다.
선박의 형태는 다양하지만, 이미지 상에서 선박의 선수 및 선미를 구별하기 위한 일반적인 특징들이 나타날 수 있다. 예를 들어, 선박의 전진 항해 시 해수가 선수 위로 들어오는 것을 방지하기 위해 선박의 선수는 선미보다 일반적으로 높게 형성될 수 있다. 또한, 선박은 추진 시 저항을 줄이기 위해 유선형으로 형성되어 선수가 선미보다 날렵한 구조를 가질 수 있다.
이러한 선박의 구조적 특징들을 이용하여 선박의 선수 및 선미는 이미지 상에서 구별될 수 있다. 따라서, 제어 모듈(200)은 이미지에 기초하여 선박의 선수/선미를 결정할 수 있다. 예를 들어, 제어 모듈(200)은 선박에 대응하는 영역에 기초하여 선박의 선수/선미를 결정할 수 있다. 구체적으로 제어 모듈(200)은 세그멘테이션 이미지 중 픽셀의 클래스 값이 선박에 해당하는 영역에 기초하여 선박의 선수/선미를 결정할 수 있다. 다른 예를 들어, 제어 모듈(200)은 이미지의 선박을 폴리곤화하여 선박의 경계 다각형을 생성하고, 선박의 경계 다각형에 기초하여 선박의 선수/선미를 결정할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 추출한 한 쌍의 제1 포인트들(2301-1, 2301-2) 및/또는 한 쌍의 제2 포인트들(2302-1, 2302-2)에 기초하여 선박의 선수/선미를 결정할 수 있다.
도 26 및 도 27은 일 실시예에 따른 선박의 선수/선미 구별에 관한 도면이다.
도 26 및 도 27을 참고하면, 제어 모듈(200)은 추출한 한 쌍의 제1 포인트들(2301-1, 2301-2) 및/또는 한 쌍의 제2 포인트들(2302-1, 2302-2)에 기초하여 선박의 선수/선미를 결정할 수 있다.
도 26을 참고하면, 제어 모듈(200)은 추출된 제1 포인트 및 제2 포인트 사이의 기울기에 기초하여 선박의 선수/선미를 결정할 수 있다. 예를 들어, 제어 모듈(200)은 선박의 한쪽에 위치하는 하나의 제1 포인트(2301-1) 및 하나의 제2 포인트(2302-1)의 제1 기울기와 선박의 다른 한쪽에 위치하는 다른 하나의 제1 포인트(2301-2) 및 다른 하나의 제2 포인트(2302-2)의 제2 기울기 차이에 기초하여 선박의 선수/선미를 결정할 수 있다. 구체적으로, 제어 모듈(200)은 제1 포인트(2301-1)에서 시작하는 제1 수직선과 제1 포인트(2301-1) 및 제2 포인트(2302-1)를 연결하는 제1 선이 이루는 각도(2303)가 제1 포인트(2301-2)에서 시작하는 제2 수직선과 제1 포인트(2301-2) 및 제2 포인트(2302-2)를 연결하는 제2 선이 이루는 각도(2304)보다 큰 경우 제1 포인트(2301-1) 및 제2 포인트(2302-1)가 위치하는 부분을 선박의 선수로 결정할 수 있다. 여기서, 제어 모듈(200)은 제1 포인트(2301-2) 및 제2 포인트(2302-2)가 위치하는 부분을 선박의 선미로 결정할 수 있다.
도 27을 참고하면, 제어 모듈(200)은 추출된 제1 포인트 및 제2 포인트 사이의 위치에 기초하여 선박의 선수/선미를 결정할 수 있다. 예를 들어, 제어 모듈(200)은 선박의 한쪽에 위치하는 하나의 제1 포인트(2301-1) 및 하나의 제2 포인트(2302-1) 사이의 제1 높이와 선박의 다른 한쪽에 위치하는 다른 하나의 제1 포인트(2301-2) 및 다른 하나의 제2 포인트(2302-2) 사이의 제2 높이 차이에 기초하여 선박의 선수/선미를 결정할 수 있다. 구체적으로, 제어 모듈(200)은 제1 포인트(2301-1)와 제2 포인트(2302-1) 사이의 수직 방향으로의 거리(2305)가 제1 포인트(2301-2)와 제2 포인트(2302-2) 사이의 수직 방향으로의 거리(2306)가 보다 큰 경우 제1 포인트(2301-1) 및 제2 포인트(2302-1)가 위치하는 부분을 선박의 선수로 결정할 수 있다. 여기서, 제어 모듈(200)은 제1 포인트(2301-2) 및 제2 포인트(2302-2)가 위치하는 부분을 선박의 선미로 결정할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 입력 이미지로부터 상기 입력 이미지에 포함된 선박의 선수/선미를 출력하도록 인공 신경망을 이용하여 선박의 선수/선미를 결정할 수 있다. 예를 들어, 제어 모듈(200)은 입력 이미지 및 상기 입력 이미지에 포함된 선박 및 바다를 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박, 선박의 선수 및 선박의 선미를 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 이미지 세그멘테이션을 수행하여 선박의 선수/선미를 결정할 수 있다. 구체적으로, 제어 모듈(200)은 이미지로부터 세그멘테이션 이미지를 생성할 수 있고, 세그멘테이션 이미지 중 픽셀의 클래스 값이 선박의 선수 및 선미에 해당하는 픽셀을 획득할 수 있다.
물론, 제어 모듈(200)은 입력 이미지로부터 상기 입력 이미지에 포함된 선박의 선수/선미를 출력하도록 학습된 인공 신경망을 이용한 이미지 디텍션에 의해 선박의 선수/선미를 결정해도 무방하다. 또한, 제어 모듈(200)은 하나의 인공 신경망을 통해 세그멘테이션/디텍션을 수행할 수도 있고, 제어 모듈(200)은 복수의 인공 신경망을 이용하여 각각의 인공 신경망이 세그멘테이션/디텍션을 수행하여 선박의 선수/선미를 결정할 수도 있다.
다만, 선박의 선수 및 선미의 결정은 상술한 방식에 의해 수행되는 것으로 한정될 필요는 없고 다양한 방식으로 수행될 수 있다.
이미지 기반 모니터링은 시점 변환 단계를 더 포함할 수 있다.
일반적으로 카메라 등 이미지 생성 유닛이 생성하는 이미지는 원근 시점(perspective view)로 나타날 수 있다. 이를 탑 뷰(top view, 평면 시점), 측면 시점(side view), 다른 원근 시점 등으로 변환하는 것을 시점 변환이라 할 수 있다. 물론, 탑 뷰나 측면 시점 이미지를 다른 시점으로 변환할 수도 있으며, 이미지 생성 유닛이 탑 뷰 이미지나 측면 시점 이미지 등을 생성할 수도 있고 이 경우 시점 변환이 수행될 필요가 없을 수도 있다.
도 28 및 도 29는 일 실시예에 따른 시점 변환에 관한 도면이다.
도 28을 참고하면, 원근 시점 이미지의 시점 변환을 통해 다른 원근 시점 이미지를 획득할 수 있다. 여기서, 안벽(OBJ8)이 이미지 상에서 수평 방향(이미지 상에서 좌우 방향)을 따라 위치하도록 시점 변환을 수행할 수 있다. 도 29를 참고하면, 원근 시점 이미지의 시점 변환을 통해 탑 뷰 이미지를 획득할 수 있다. 여기서, 탑 뷰 이미지는 해수면과 수직한 방향에서 해수면을 내려다 본 뷰일 수 있다. 또한, 도 28과 마찬가지로 안벽(OBJ9)이 이미지 상에서 수평 방향을 따라 위치하도록 시점 변환을 수행할 수 있다.
이미지 획득 후 시점 변환을 수행한 뒤에 선박의 접안 가이드에 필요한 정보를 획득하기 위한 이미지 분석을 할 수 있다. 일 예에 따르면, 접안 가이드 정보의 획득은 시점이 변환된 세그멘테이션된 이미지에 기초하여 수행될 수 있다. 구체적으로, 원근 시점의 세그멘테이션 이미지를 탑 뷰 세그멘테이션 이미지로 시점을 변환하고, 탑 뷰 세그멘테이션된 이미지 중 픽셀의 클래스 값이 선박에 해당하는 영역에 기초하여 선박의 위치/이동 정보를 획득할 수 있다. 예를 들어, 탑 뷰 세그멘테이션된 이미지의 선박에 해당하는 영역에서 선박의 접안 관련 정보를 획득하기 위한 한 쌍의 제1 포인트들 및 선박의 충돌 관련 정보를 획득하기 위한 한 쌍의 제2 포인트들을 추출하고, 추출된 한 쌍의 제1 포인트들 및 한 쌍의 제2 포인트들에 기초하여 선박과 안벽 사이의 거리/속도 및 선박과 다른 오브젝트(선박) 사이의 거리/속도를 획득할 수 있다. 이 때, 한 쌍의 제1 포인트들이 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 경우 한 쌍의 제1 포인트들에 기초하여 선수 거리/속도 및 선미 거리/속도를 획득할 수 있고, 한 쌍의 제2 포인트들이 선박의 선수 및 선미에 대응하는 경우 한 쌍의 제2 포인트들에 기초하여 선박간 거리/속도를 획득할 수 있다. 물론, 시점 변환된 세그멘테이션이미지는 탑 뷰가 아니라 측면 시점 등 다양한 시점으로 시점이 변환된 세그멘테이션 이미지여도 무방하며, 뿐만 아니라 4개의 포인트를 추출하여 선박의 위치/이동 정보를 획득하는 대신 영역의 외곽선, 또는 영역 자체에 기초하여 선박의 위치/이동 정보를 획득하여도 무방하다.
물론, 반드시 그러한 것은 아니며, 시점이 변환된 촬영 영상 등의 이미지에 기초하여 수행되는 것도 가능하다.
또한 이미지 획득 후 시점 변환을 수행한 뒤에 사용자에게 이미지를 디스플레이하는 등 모니터링 정보를 출력할 수 있다. 이 경우 시점 변환을 통해 사용자에게 주변 상황에 대한 정보를 보다 용이하게 제공할 수 있다.
이미지의 시점 변환은 다양한 방식으로 수행될 수 있다.
시점 변환의 일 예로 역투영 변환(Inverse Projective Mapping, IPM)을 수행할 수 있다. 2차원 이미지는 3차원 공간 상의 피사체에서 반사된 빛이 카메라의 렌즈를 통해 이미지 센서에 입사되어 생성되고, 2차원과 3차원의 관계는 이미지 센서와 렌즈에 의존하며, 예를 들어 수학식 1과 같이 표현될 수 있다.
Figure 112020002558309-pat00001
여기서, 좌변의 행렬은 2차원 이미지 좌표, 우변의 첫 번째 행렬은 내부 파라미터(intrinsic parameter), 두 번째 행렬은 외부 파라미터(extrinsic parameter), 세 번째 행렬은 3차원 좌표를 의미한다. 구체적으로, fx 및 fy는 초점 거리(focal length), cx 및 cy는 주점(principal point), r 및 t는 각각 회전 및 평행이동 변환 파라미터를 의미한다.
2차원 이미지를 역투영 변환을 통해 3차원 상의 임의의 평면에 투영시켜 그 시점을 변경시킬 수 있다. 예를 들어, 원근 시점 이미지를 역투영 변환을 통해 탑 뷰 이미지로 변환하거나, 다른 원근 시점 이미지로 변환할 수 있다.
시점 변환을 위해서 내부 파라미터가 필요할 수 있다. 내부 파라미터를 구하는 방법의 일 예로 Zhang 방법을 이용할 수 있다. Zhang 방법은 다항식 모델(polynomial model)의 일종으로 격자의 크기를 알고 있는 격자판을 다양한 각도와 거리에서 촬영하여 내부 파라미터를 획득하는 방법이다.
시점 변환을 위해서 이미지를 촬상한 이미지 생성 유닛/센서 모듈의 위치 및/또는 자세에 대한 정보가 필요할 수 있다. 이러한 정보는 위치 측정 유닛 및 자세 측정 유닛으로부터 획득될 수 있다.
또는, 이미지에 포함된 고정체의 위치에 기초하여 위치 및/또는 자세에 대한 정보를 획득할 수 있다. 예를 들어, 제1 시점에 이미지 생성 유닛은 제1 위치 및/또는 제1 자세로 배치되고, 지형이나 건물 등과 같이 고정된 객체인 타겟 고정체를 포함하는 제1 이미지를 생성할 수 있다. 이 후, 제2 시점에 이미지 생성 유닛은 상기 타겟 고정체를 포함하는 제2 이미지를 생성할 수 있다. 제1 이미지 상에서의 타겟 고정체의 위치 및 제2 이미지 상에서의 타겟 고정체의 위치를 비교하여 제2 시점에서의 이미지 생성 유닛의 위치 및/또는 자세인 제2 위치 및/또는 제2 자세를 산출할 수 있다.
또한, 시점 변환 시 기준 평면의 선택에 따라 이미지 분석의 정확도가 달라질 수 있다. 예를 들어, 원근 시점 이미지를 탑 뷰 이미지로 변환하는 경우, 기준 평면의 높이에 따라 탑 뷰 이미지에 기초한 이미지 분석의 정확도가 달라질 수 있다. 해수면 상에서의 오브젝트 사이의 거리를 정확히 산출하기 위해서는 시점 변환 시 기준 평면이 해수면인 것이 바람직할 수 있다. 해수면의 높이는 시간에 따라 변화할 수 있으므로 해수면의 높이를 고려하여 시점 변환을 수행하는 것이 이미지 분석의 정확도 향상에 바람직할 수 있다.
전술한 시점 변환 방법은 예시에 불과하고 이와 다른 방법으로 시점 변환을 수행할 수도 있으며, 시점 변환 정보는 전술한 수학식 1의 행렬, 파라미터, 좌표, 위치 및/또는 자세에 대한 정보 등 시점 변환을 위해 필요한 정보를 포함한다.
선박 등의 모니터링을 위해 이미지 기반 모니터링은 모니터링 정보(일 예로, 접안 가이드 정보)를 출력하는 단계를 포함할 수 있다. 모니터링 정보 출력 단계에서 출력되는 정보는 선박 주변이나 해양, 항만의 이미지, 이미지에 포함된 오브젝트의 종류 및 거리/속도 등 그 특성과 같이 이미지 기반 모니터링에 관련된 정보라면 제한이 없다.
모니터링 정보는 시각적으로 출력될 수 있다. 예를 들어, 모니터링 정보는 디스플레이 등의 출력 모듈을 통해 출력될 수 있다.
모니터링 정보 출력 단계는 이미지 획득 단계에서 이미지 생성 유닛을 이용하여 획득한 이미지를 디스플레이하는 것을 포함할 수 있다. 이 외에도 전처리 단계를 거친 이미지, 세그멘테이션 또는 디텍션 후의 이미지, 후술할 시점 변환 후의 이미지 등 이미지 기반 모니터링에 관련된 다양한 이미지를 디스플레이하는 것을 포함할 수 있다.
모니터링 정보 출력 단계는 이미지 분석 단계에서 추정한 위치/이동 정보(접안 가이드 정보)를 디스플레이하는 것을 포함할 수 있다. 예를 들어, 이미지와 접안 가이드 정보는 함께 디스플레이 될 수 있다. 구체적으로 디스플레이되는 접안 가이드 정보는 타겟 선박의 선수 거리, 선수 속도, 선미 거리 및 선미 속도 등을 포함할 수 있다.
모니터링 정보 출력 단계는 시각적인 디스플레이 외에 소리나 진동을 출력하는 등 다른 방식으로 사용자에게 정보를 제공하는 것을 포함할 수 있다. 예를 들어, 타겟 선박이 안벽이나 다른 선박, 장애물 등과 충돌할 위험이 있거나 접안 시 안벽으로의 접근 속도가 기준 속도 이상인 경우, 선박이 경로를 이탈하여 운항하는 경우 등에 경고음을 출력할 수 있다.
이미지 기반 모니터링은 서베일런스(surveillance)를 포함할 수 있다. 여기서, 서베일런스란 침입자를 감시하거나 등록되지 않은 선박의 항만 접근을 감시하는 등의 보안 관련 정보 및 화재 발생 등 긴급 상황 발생에 대한 정보를 사용자에게 제공하는 것을 의미할 수 있다.
침입자 감시는 이미지에 사람이 포함되었는지 여부 및 이미지가 촬상된 시점에 기초하여 수행될 수 있다. 예를 들어, 항만에서 작업이 진행되지 않는 시점에 촬상된 항만 이미지에 사람이 포함되는 경우 침입자가 존재하는 것으로 판단할 수 있다.
선박 감시는 이미지에 선박이 포함되었는지 여부에 기초하여 수행될 수 있다. 예를 들어, AIS에 등록되지 않은 선박이 감지되는 경우 이에 대한 정보를 사용자에게 제공할 수 있다.
서베일런스는 세그멘테이션이나 디텍션을 통해 이미지에 기초하여 사람이나 선박을 감지함으로써 수행될 수 있다.
이미지 기반 모니터링은 전처리(pre-processing) 단계를 포함할 수 있다. 전처리는 이미지에 행하여지는 모든 종류의 가공을 의미하고, 이미지 정규화(normalization), 이미지 밝기 평준화(image equalization, histogram equalization), 이미지 리사이즈(resize), 이미지의 해상도/크기를 변경하는 업스케일링(upscaling) 및 다운스케일링(downscaling), 잘라내기(crop), 노이즈 제거 등을 포함할 수 있다. 여기서, 노이즈는 안개, 비, 물방울, 해무(sea clutter), 미세먼지, 직사광선, 염분 및 이들의 조합 등을 포함할 수 있고, 노이즈를 제거한다는 것은 이미지에 포함된 노이즈 성분을 없애거나 감소시키는 것을 포함할 수 있다.
전처리의 일 예로 정규화에 대해 살펴보면, 정규화는 RGB 이미지의 전체 픽셀의 RGB 값의 평균을 구하고 이를 RGB 이미지로부터 차감하는 것을 의미할 수 있다.
전처리의 다른 예로 안개 제거(defogging)에 대해 살펴보면, 안개 제거는 안개 낀 지역을 촬영한 이미지를 전처리를 통해 맑은 지역을 촬영한 이미지처럼 보이도록 변환하는 것을 의미할 수 있다. 도 13은 일 실시예에 따른 안개 제거에 관한 도면이다. 도 13을 참고하면, 안개 제거를 통해 도 13의 (a)와 같이 안개 낀 지역을 촬영한 이미지를 도 13의 (b)와 같은 안개가 제거된 이미지로 변환할 수 있다.
전처리의 또 다른 예로 물방울 제거에 대해 살펴보면, 물방울 제거는 카메라 전면에 맺힌 물방울이 촬영된 이미지에서 전처리를 통해 물방울이 제거된 것처럼 보이도록 변환하는 것을 의미할 수 있다.
일 실시예에 따르면, 이미지 획득 단계(S10) 후 전처리 단계를 거쳐 이미지 분석 단계(S20)를 수행할 수 있다. 예를 들어, 이미지 생성 유닛을 이용하여 획득한 이미지에 전처리를 수행한 후 이미지 분석을 수행할 수 있다. 이미지 전처리를 통해 이미지 분석이 용이해지거나 정확도가 향상될 수 있다.
이미지 전처리는 인공 신경망을 통해 수행될 수 있다. 예를 들어, 안개 낀 지역을 촬영한 이미지를 인공 신경망에 입력하여 맑은 지역을 촬영한 이미지처럼 보이도록 변환할 수 있는 등 노이즈를 포함하는 이미지를 인공 신경망에 입력하여 노이즈가 제거된 이미지를 획득할 수 있다. 인공 신경망의 예로는 GAN 등이 있으나 이에 한정되는 것은 아니다.
또는, 이미지 전처리는 이미지 마스크를 이용하여 수행될 수 있다. 예를 들어, 안개 낀 지역을 촬영한 이미지에 이미지 마스크를 적용하여 맑은 지역을 촬영한 이미지처럼 보이도록 변환할 수 있다. 여기서, 이미지 마스크의 예로는 역 컨볼루션(deconvolution) 필터, 샤픈(sharpen) 필터 등이 있고, GAN 등의 인공 신경망을 통해 이미지 마스크를 생성할 수도 있지만 이에 한정되는 것은 아니다.
이상에서는 이미지를 전처리한 후에 이미지 분석을 수행하는 경우에 대해 살펴보았다. 이와 달리, 전처리 과정을 포함한 이미지 분석 수행이 가능할 수도 있다. 예를 들어, 이미지 분석 단계가 세그멘테이션 또는 디텍션을 포함하는 경우, 노이즈를 포함하는 이미지의 세그멘테이션 또는 디텍션 수행 결과가 노이즈를 포함하지 않는 이미지의 세그멘테이션 또는 디텍션 수행 결과와 동등하도록 구현할 수도 있을 것이다.
이상에서는 단일 이미지에 기초한 접안 모니터링에 대해 살펴보았다. 이 외에도 복수의 이미지에 기초하여 접안 모니터링 할 수 있다. 복수에 이미지에 기초하여 이미지 분석을 수행하는 경우 장치(10)의 총 모니터링 영역이 증가하거나 모니터링의 정확도가 향상될 수 있다.
도 30은 일 실시예에 따른 복수의 이미지에 기초한 이미지 기반 모니터링에 관한 도면이다.
도 30을 참고하면, 이미지 획득 단계는 제1 이미지 획득 단계(S11) 및 제2 이미지 획득 단계(S12)를 포함할 수 있고, 이미지 분석 단계(S20)는 제1 이미지 획득 단계(S11)에서 획득한 제1 이미지 및 제2 이미지 획득 단계(S12)에서 획득한 제2 이미지에 기초하여 이미지 분석을 수행할 수 있다.
복수의 이미지에 기초하여 하나의 이미지를 생성한 후 이미지 분석을 수행할 수 있다. 예를 들어, 제어 모듈(200)은 복수의 이미지가 정합된 파노라마 이미지를 생성하고, 상기 파노라마 이미지의 이미지 분석을 수행할 수 있다. 구체적으로, 제어 모듈(200)은 제1 이미지 및 제2 이미지를 정합하거나 융합하여 정합 이미지 또는 융합 이미지를 생성하고, 생성된 정합 이미지 또는 융합 이미지에 기초하여 이미지 분석을 수행할 수 있다.
또는, 복수의 이미지 각각에 기초하여 이미지 분석을 수행한 결과를 바탕으로 최종 분석 결과를 산출할 수 있다. 예를 들어, 제1 이미지로부터 이미지 분석을 수행하여 제1 모니터링 정보를 획득하고 제2 이미지로부터 이미지 분석을 수행하여 제2 모니터링 정보를 획득한 후 제1 모니터링 정보와 제2 모니터링 정보에 기초하여 최종 모니터링 정보를 획득할 수 있다.
복수의 모니터링 정보로부터 최종 모니터링 정보를 획득하는 방법의 일 예로, 복수의 모니터링 정보를 가중치별로 고려하여 최종 모니터링 정보를 산출하는 방법이 있을 수 있다.
또는, 복수의 모니터링 정보가 서로 일치하지 않거나 그 차이가 특정 값과 같은 임계치(threshold) 이상인지 여부(이하 “에러 발생 여부”라 함)에 기초하여 최종 모니터링 정보를 산출할 수 있다. 예를 들어, 에러 발생 여부에 기초하여 복수의 모니터링 정보를 가중치별로 고려하여 최종 모니터링 정보를 산출하거나, 복수의 모니터링 정보 중 특정 모니터링 정보를 우선시하여 최종 모니터링 정보를 산출하거나, 특정 모니터링 정보를 다른 모니터링 정보로 보정하거나, 해당 모니터링 정보를 무시하는 방법 등이 있을 수 있지만, 이에 한정되는 것은 아니다.
복수의 이미지는 동일한 종류의 이미지일 수 있다. 예를 들어, 센서 모듈이 동일한 이미지 생성 유닛을 2개 포함하거나, 하나의 이미지 생성 유닛을 포함하는 동일한 센서 모듈이 2개 배치되어 이미지 기반 모니터링을 수행하는 경우 제1 이미지 및 제2 이미지는 동일한 종류일 수 있다.
복수의 이미지의 모니터링 영역은 서로 다를 수 있다. 예를 들어, 제1 이미지는 이미지 생성 유닛으로부터 근거리를 모니터링하고, 제2 이미지는 원거리를 모니터링할 수 있다. 또는, 제1 이미지는 이미지 생성 유닛으로부터 좌측을 모니터링하고, 제2 이미지는 우측을 모니터링할 수 있다.
도 31은 일 실시예에 따른 이미지 융합에 관한 도면이다.
도 31을 참고하면, 제어 모듈(200)은 RGB 이미지(IMG1) 및 라이다 이미지(IMG2)를 융합하여 이미지 분석(S20)을 수행할 수 있다. 예를 들어, 제어 모듈(200)은 카메라 및 라이다를 통해 동일한 영역을 나타내는 RGB 이미지 및 라이다 이미지를 획득하고 획득한 양 이미지를 서로 맵핑할 수 있다. 여기서, RGB 이미지에서 거리/속도 산출에 이용되는 픽셀 당 거리는 맵핑된 라이다 이미지에서의 거리에 기초하여 결정될 수 있다.
제어 모듈(200)가 이미지를 융합하여 이미지 분석을 수행하는 경우, 전술한 바와 같이 제어 모듈(200)은 제1 이미지 및 제2 이미지를 융합하여 하나의 융합 이미지를 생성한 후에 이미지 분석을 수행하여 모니터링 정보를 획득하거나(예를 들어, RGB 이미지(IMG1) 및 라이다 이미지(IMG2)를 융합하여 하나의 융합 이미지를 생성하고 이에 기반하여 이미지 분석(S20)을 수행), 제1 이미지로부터 이미지 분석을 수행하여 제1 모니터링 정보를 획득하고 제2 이미지로부터 이미지 분석을 수행하여 제2 모니터링 정보를 획득한 후 제1 모니터링 정보와 제2 모니터링 정보를 융합하여 최종 모니터링 정보를 획득(예를 들어, RGB 이미지(IMG1)에 기초한 이미지 분석을 통해 제1 모니터링 정보를 획득하고 라이다 이미지(IMG2)에 기초한 이미지 분석을 통해 제2 모니터링 정보를 획득한 후 이를 융합하여 최종 모니터링 정보 획득)할 수 있다.
도 32는 일 실시예에 따른 RGB 이미지의 위치/이동 정보 보정에 관한 도면이다.
도 32를 참고하면, 모니터링하는 선박의 위치/이동 정보의 정확도를 향상시키기 위해 장치(10)는 센서 모듈(100)를 통해 획득한 다른 데이터를 통해 RGB 이미지로부터 획득한 선박의 위치/이동 정보를 보정할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 센서 모듈(100)를 통해 획득한 라이다 이미지에 기초하여 RGB 이미지 상에서 획득한 선박의 거리/속도를 보정할 수 있다. 예를 들어, 장치(10)는 RGB 이미지 상에서 획득한 선박의 거리/속도 및 라이다 이미지 상에서 획득한 선박의 거리/속도에 기초하여 보정된 선박의 거리/속도를 획득할 수 있다. 구체적으로, 장치(10)는 RGB 이미지 상에서 획득한 선박의 거리/속도 및 라이다 이미지 상에서 획득한 선박의 거리/속도를 비교하여 보정된 선박의 거리/속도를 획득할 수 있다.
물론, 모니터링하는 선박의 위치/이동 정보의 보정은 라이다 이미지뿐만 아니라 종래에 사용되는 radar, 초음파 탐지기 등의 다양한 종류의 센서 데이터를 이용하여 수행되어도 무방하다.
도 33은 일 실시예에 따른 라이다 이미지에 기초한 위치/이동 정보 보정에 관한 순서도이다.
도 33을 참고하면, 이미지 기반 모니터링은 제어 모듈(200)이 라이다 이미지 획득하는 단계(S252) 및 라이다 이미지에 기초하여 위치/이동 정보 보정하는 단계(S254)를 수행하는 것을 포함할 수 있다.
장치(10)는 이미지 생성 유닛으로부터 라이다 이미지를 획득할 수 있다(S252).
예를 들어, 제어 모듈(200)은 센서 모듈(100)로부터 RGB 이미지와 실시간으로 동기화된 라이다 이미지를 획득할 수 있다. 여기서 라이다 이미지는 2차원 이미지뿐만 아니라 3차원 이미지 등도 가능하다.
장치(10)는 획득한 라이다 이미지에 기초하여 RGB 이미지에서 획득된 선박의 위치/이동 정보를 보정할 수 있다(S254).
라이다 이미지에 기초하여 위치/이동 정보 보정하는 단계(S254)는 제어 모듈(200)이 라이다 이미지에서 선박의 위치/이동 정보를 획득하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 라이다 이미지에서 선박과 안벽 사이의 거리/속도를 획득하거나 선박과 다른 선박 사이의 거리/속도를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 라이다 이미지로부터 선박의 선수 거리/속도, 선박의 선미 거리/속도, 선박간 거리, 선박과 인접 선박 사이의 상대 속도 등을 획득할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 RGB 이미지와 실시간으로 동기화된 라이다 이미지에 기초하여 선박의 위치/이동 정보를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 RGB 이미지와 실시간으로 동기화된 라이다 이미지에 기초하여 선박의 접안 관련 정보 및/또는 충돌 관련 정보를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 RGB 이미지와 실시간으로 동기화된 라이다 이미지에서 선석 평면에 대하여 수직 관계에 있는 포인트들을 일정 간격으로 샘플링하여 추정된 선박의 옆면에 기초하여 선박의 위치/이동 정보를 획득할 수 있다. 제어 모듈(200)은 라이다 이미지에서 샘플링을 통해 추정된 선박의 옆면의 양끝을 선박의 선수/선미로 결정할 수 있다.
제어 모듈(200)은 라이다 이미지에서 결정된 선수/선미에 기초하여 선박과 안벽 사이의 거리/속도를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 라이다 이미지에서 결정된 선수/선미에 기초하여 선박의 선수 거리, 선미 거리, 선수 속도, 선미 속도 등을 획득할 수 있다.
또한 제어 모듈(200)은 라이다 이미지에서 결정된 선수/선미에 기초하여 선박과 다른 선박 사이의 거리/속도를 획득할 수 있다. 예를 들어, 제어 모듈(200)은 라이다 이미지에서 결정된 선수/선미에 기초하여 선박의 선박간 거리, 선박과 인접 선박 사이의 상대 속도 등을 획득할 수 있다.
물론, 제어 모듈(200)은 라이다 이미지에서 선박의 선수/선미를 선박의 옆면의 양끝이 아닌 다른 위치로 결정해도 무방하며, 뿐만 아니라 제어 모듈(200)은 라이다 이미지에서 하나의 포인트를 선정하여 선박의 위치/이동 정보를 획득하는 대신 영역 자체를 선정하여 선박의 위치/이동 정보를 획득하여도 무방하다. 또한 반드시 그러한 것은 아니며, 라이다 이미지에서의 선박의 위치/이동 정보의 획득은 다양한 방식으로 수행될 수 있다.
또한, 라이다 이미지에 기초하여 위치/이동 정보 보정하는 단계(S254)는 제어 모듈(200)이 RGB 이미지에서 획득한 위치/이동 정보를 라이다 이미지에서 획득한 선박의 위치/이동 정보를 이용하여 보정하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 RGB 이미지에서 획득한 접안 관련 정보 및/또는 충돌 관련 정보를 라이다 이미지에서 획득한 선박의 접안 관련 정보 및/또는 충돌 관련 정보를 이용하여 보정할 수 있다. 여기서, RGB 이미지와 라이다 이미지는 동일한 영역을 촬상한 이미지이고, 서로 맵핑된 이미지일 수 있다. 또한, RGB 이미지와 라이다 이미지는 실시간으로 동기화될 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 RGB 이미지로부터 획득된 거리/속도와 라이다 이미지로부터 획득된 거리/속도의 차이가 기설정된 임계값 이상이 되는 경우, 해당 프레임에서의 선박의 거리/속도를 라이다 이미지로부터 획득된 기반 거리/속도로 결정할 수 있다. 예를 들어, 제어 모듈(200)은 RGB 이미지로부터 획득된 선수 거리 및 선미 거리와 라이다 이미지로부터 획득된 선수 거리 및 선미 거리의 차이가 기설정된 값 이상이 되는 경우, 선박의 선수 거리 및 선미 거리를 라이다 이미지로부터 획득된 선수 거리 및 선미 거리로 결정할 수 있다. 다른 예를 들어, 제어 모듈(200)은 RGB 이미지로부터 획득된 선박간 거리와 라이다 이미지로부터 획득된 선박간 거리의 차이가 기설정된 값 이상이 되는 경우, 선박의 선박간 거리를 라이다 이미지로부터 획득된 선박간 거리로 결정할 수 있다. 물론, 제어 모듈(200)은 선박의 속도를 RGB 이미지로부터 획득된 속도가 아닌 라이다 이미지로부터 획득된 속도로 결정하는 것도 가능하다.
또한 일 실시예에 따르면, 제어 모듈(200)은 선박의 거리/속도를 해당 프레임에서의 RGB 이미지로부터 획득된 거리/속도와 라이다 이미지로부터 획득된 거리/속도가 일정 비율로 반영된 값으로 결정할 수 있다.
예를 들어, 제어 모듈(200)은 선박의 선수 거리 및 선미 거리를 RGB 이미지로부터 획득된 선수 거리 및 선미 거리와 라이다 이미지로부터 획득된 선수 거리 및 선미 거리가 일정 비율로 반영된 값으로 결정할 수 있다. 다른 예를 들어, 제어 모듈(200)은 선박의 선박간 거리를 RGB 이미지로부터 획득된 선박간 거리와 라이다 이미지로부터 획득된 선박간 거리가 일정 비율로 반영된 값으로 결정할 수 있다. 물론, 제어 모듈(200)은 선박의 속도를 RGB 이미지로부터 획득된 속도와 라이다 이미지로부터 획득된 속도가 일정 비율로 반영된 값으로 결정하는 것도 가능하다.
다만, 라이다 이미지에 기초한 위치/이동 정보 보정은 상술한 방식에 의해 수행되는 것으로 한정될 필요는 없고 제어 모듈(200)은 라이다 이미지에 기초하여 RGB 이미지에서 획득한 선박의 위치/이동 정보를 다양한 방식으로 보정할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
상기에서는 실시예를 기준으로 본 발명의 구성과 특징을 설명하였으나 본 발명은 이에 한정되지 않으며, 본 발명의 사상과 범위 내에서 다양하게 변경 또는 변형할 수 있음은 본 발명이 속하는 기술 분야의 당업자에게 명백한 것이며, 따라서 이와 같은 변경 또는 변형은 첨부된 특허청구범위에 속함을 밝혀둔다.
10: 모니터링 장치
100: 센서 모듈
110: 통신부
120: 제어부
130: 카메라
200: 제어 모듈
210: 통신부
220: 제어부
300: 통신 모듈

Claims (29)

  1. 컴퓨팅 수단에 의해 수행되는 항만 모니터링 방법으로,
    항만에 설치되어 이미지를 촬상하는 카메라를 이용하여 바다, 제1 선박의 적어도 일부 및 제2 선박의 적어도 일부를 포함하는 항만 이미지를 획득하는 단계;
    상기 항만 이미지로부터 상기 제1 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 제1 포인트들 및 상기 제1 선박의 선수 및 선미에 대응하는 한 쌍의 제2 포인트들을 추출하는 단계;
    상기 한 쌍의 제1 포인트들에 기초하여 상기 제1 선박의 선수와 안벽(pier) 사이의 거리인 선수 거리 및 상기 제1 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 상기 제1 선박의 접안 관련 정보를 획득하는 단계; 및
    상기 한 쌍의 제2 포인트들에 기초하여 상기 제1 선박의 제2 선박과의 거리를 포함하는 상기 제1 선박의 충돌 관련 정보를 획득하는 단계; 를 포함하고,
    상기 충돌 관련 정보를 획득하는 단계는,
    상기 한 쌍의 제2 포인트들 중 상기 제2 선박과 더 가까운 하나의 제2 포인트에 기초하여 상기 제1 선박과 상기 제2 선박 사이의 거리를 획득하는 단계를 포함하는
    항만 모니터링 방법.
  2. 제1항에 있어서,
    상기 추출하는 단계는,
    상기 항만 이미지로부터 상기 제1 선박에 대응하는 영역을 획득하는 단계,
    상기 제1 선박에 대응하는 영역이 상기 해수면과 접하는 선을 추출하는 단계 및
    상기 해수면과 접하는 선의 양 단부를 한 쌍의 제1 포인트들로 결정하는 단계를 포함하는
    항만 모니터링 방법.
  3. 제1 항에 있어서,
    상기 추출하는 단계는,
    상기 항만 이미지로부터 상기 제1 선박에 대응하는 영역을 획득하는 단계,
    상기 제1 선박에 대응하는 영역에서 상기 제1 선박의 선수측면에 대응하는 선수선 및 선미측면에 대응하는 선미선을 추출하는 단계 및
    상기 선수선의 하나의 단부 및 상기 선미선의 하나의 단부를 한 쌍의 제2 포인트들로 결정하는 단계를 포함하는
    항만 모니터링 방법.
  4. 제1항에 있어서,
    상기 추출하는 단계는,
    상기 제1 선박의 경계를 표시하는 경계 다각형(boundary polygon)을 결정하는 단계 및
    상기 결정된 경계 다각형에 기초하여 상기 한 쌍의 제1 포인트들 및 상기 한 쌍의 제2 포인트들을 추출하는 단계를 포함하는
    항만 모니터링 방법.
  5. 제4 항에 있어서,
    상기 한 쌍의 제1 포인트들은 상기 경계 다각형의 상기 제1 선박의 하부에 대응하는 복수의 포인트 중 두 개의 포인트로 결정되는
    항만 모니터링 방법.
  6. 제5 항에 있어서,
    상기 한 쌍의 제1 포인트들은 상기 경계 다각형의 상기 제1 선박의 선수단부 및 선미단부에 대응하는 두 개의 포인트 각각과 가장 인접한 두 개의 포인트로 결정되는
    항만 모니터링 방법.
  7. 제1항에 있어서,
    상기 접안 관련 정보를 획득하는 단계는,
    상기 한 쌍의 제1 포인트들 중 하나의 제1 포인트에 기초하여 상기 선수 거리를 획득하는 단계 및
    상기 한 쌍의 제1 포인트들 중 다른 하나의 제1 포인트에 기초하여 상기 선미 거리를 획득하는 단계를 포함하는
    항만 모니터링 방법.
  8. 제7항에 있어서,
    상기 선수 거리를 획득하는 단계는
    상기 하나의 제1 포인트와 상기 안벽 사이의 상기 항만 이미지의 픽셀 개수에 기초하여 상기 선수 거리를 산출하는 단계를 포함하고,
    상기 선미 거리를 획득하는 단계는,
    상기 다른 하나의 제1 포인트와 상기 안벽 사이의 상기 항만 이미지의 픽셀 개수에 기초하여 상기 선미 거리를 산출하는 단계를 포함하는
    항만 모니터링 방법.
  9. 제8항에 있어서,
    상기 접안 관련 정보를 획득하는 단계는,
    상기 선수 거리에 기초하여 상기 제1 선박의 선수가 상기 안벽으로 접근하는 속도인 선수 속도를 획득하는 단계 및
    상기 선미 거리에 기초하여 상기 제1 선박의 선미가 상기 안벽으로 접근하는 속도인 선미 속도를 획득하는 단계 를 포함하는
    항만 모니터링 방법.
  10. 제9항에 있어서,
    상기 선수 속도를 획득하는 단계는,
    상기 항만 이미지의 제1 선수 거리 및 상기 항만 이미지의 후속 프레임 이미지의 제2 선수 거리를 비교하여 상기 선수 속도를 획득하는 단계를 포함하고
    상기 선미 속도를 획득하는 단계는,
    상기 항만 이미지의 제1 선미 거리 및 상기 후속 프레임 이미지의 제2 선미 거리를 비교하여 상기 선미 속도를 획득하는 단계를 포함하고
    항만 모니터링 방법.
  11. 제10항에 있어서,
    상기 선수 속도를 획득하는 단계는,
    상기 항만 이미지와 상기 후속 프레임 이미지 간의 시간 간격 및 상기 제1 및 제2 선수 거리의 픽셀 개수의 차이에 기초하여 상기 선수 속도를 산출하는 단계를 포함하고,
    상기 선미 속도를 획득하는 단계는,
    상기 시간 간격 및 상기 제1 및 제2 선미 거리의 픽셀 개수의 차이에 기초하여 상기 선미 속도를 산출하는 단계를 포함하는
    항만 모니터링 방법.
  12. 제4항에 있어서,
    상기 한 쌍의 제2 포인트들은 상기 경계 다각형의 상기 제1 선박의 선수에 대응하는 복수의 선수 포인트 중 하나의 포인트 및 상기 경계 다각형의 상기 제1 선박의 선미에 대응하는 복수의 선미 포인트 중 하나의 포인트로 결정되는
    항만 모니터링 방법.
  13. 제12항에 있어서,
    상기 한 쌍의 제2 포인트들은 상기 선수 포인트들 중 선수단부에 대응하는 하나의 포인트 및 상기 선미 포인트들 중 선미단부에 대응하는 하나의 포인트로 결정되는
    항만 모니터링 방법.
  14. 제1항에 있어서,
    상기 충돌 관련 정보를 획득하는 단계는,
    상기 하나의 제2 포인트와 상기 제2 선박 사이의 상기 항만 이미지의 픽셀 개수에 기초하여 상기 제1 선박과 상기 제2 선박 사이의 거리를 산출하는 단계를 포함하는
    항만 모니터링 방법.
  15. 제14항에 있어서,
    상기 충돌 관련 정보를 획득하는 단계는,
    상기 제1 선박과 상기 제2 선박 사이의 거리에 기초하여 상기 제1 선박과 상기 제2 선박 사이의 상대속도를 획득하는 단계를 포함하는
    항만 모니터링 방법.
  16. 제15항에 있어서,
    상기 상대속도를 획득하는 단계는,
    상기 항만 이미지의 상기 제1 선박과 상기 제2 선박 사이의 제1 거리 및 상기 항만 이미지의 후속 프레임 이미지의 상기 제1 선박과 상기 제2 선박 사이의 제2 거리를 비교하여 상기 상대속도를 획득하는 단계를 포함하는
    항만 모니터링 방법.
  17. 제16항에 있어서,
    상기 상대속도를 획득하는 단계는,
    상기 항만 이미지와 상기 후속 프레임 이미지 간의 시간 간격 및 상기 제1 거리 및 상기 제2 거리의 픽셀 개수의 차이에 기초하여 상기 상대속도를 산출하는 단계를 포함하는
    항만 모니터링 방법.
  18. 제1항에 있어서,
    상기 충돌 관련 정보를 획득하는 단계는,
    상기 하나의 제2 포인트가 상기 제1 선박이 해수면과 접하는 상기 밑면과 수직하게 접하는 위치의 제3 포인트를 추출하는 단계 및
    상기 제3 포인트와 상기 제2 선박 사이의 이미지 픽셀 개수에 기초하여 상기 제1 선박과 상기 제2 선박 사이의 거리를 산출하는 단계를 포함하는
    항만 모니터링 방법.
  19. 제4항에 있어서,
    상기 한 쌍의 제1 포인트들 및 상기 한 쌍의 제2 포인트들은,
    상기 경계 다각형의 일부에 기초하여 결정되는,
    항만 모니터링 방법.
  20. 제1항에 있어서,
    상기 한 쌍의 제1 포인트들 및 한 쌍의 제2 포인트들을 추출하는 단계는,
    상기 항만 이미지의 시점을 변환하여 시점 변환 항만 이미지를 생성하는 단계 및
    상기 시점 변환 항만 이미지에 기초하여 상기 한 쌍의 제1 포인트들 및 한 쌍의 제2 포인트들을 추출하는 단계를 포함하는
    항만 모니터링 방법.
  21. 제1항에 있어서,
    상기 한 쌍의 제1 포인트들 및 상기 한 쌍의 제2 포인트들을 추출하는 단계는,
    입력 이미지 및 상기 입력 이미지에 포함된 바다, 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 상기 항만 이미지로부터 상기 오브젝트들에 대한 세그멘테이션 이미지를 생성하는 단계 및
    상기 세그멘테이션 이미지로부터 상기 한 쌍의 제1 포인트들 및 상기 한 쌍의 제2 포인트들을 추출하는 단계를 포함하는
    항만 모니터링 방법.
  22. 제1항에 있어서,
    상기 항만 이미지와 대응하는 라이다 이미지를 획득하는 단계; 및
    획득한 상기 라이다 이미지에 기초하여 상기 접안 관련 정보 및/또는 상기 충돌 관련 정보를 보정하는 단계를 더 포함하는
    항만 모니터링 방법.
  23. 제1항에 있어서,
    상기 항만 이미지는
    복수의 항만 이미지가 정합된 파노라마 이미지를 포함하는
    항만 모니터링 방법.
  24. 제1항에 있어서,
    상기 접안 관련 정보 및/또는 상기 충돌 관련 정보를 상기 항만 이미지와 함께 출력하는 단계; 를 더 포함하는
    항만 모니터링 방법.
  25. 제1항에 있어서,
    상기 항만 이미지에 기초하여 상기 제1 선박의 상기 선수 및 상기 선미를 결정하는 단계; 를 더 포함하는
    항만 모니터링 방법.
  26. 컴퓨팅 수단에 의해 수행되는 항만 모니터링 방법으로,
    항만에 설치되어 이미지를 촬상하는 카메라를 이용하여 바다 및 타겟 선박의 적어도 일부를 포함하는 항만 이미지를 획득하는 단계;
    입력 이미지 및 상기 입력 이미지에 포함된 바다, 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 상기 항만 이미지로부터 상기 오브젝트들에 대한 세그멘테이션 이미지를 생성하는 단계;
    상기 세그멘테이션 이미지의 선박을 지시하는 클래스 값이 할당된 선박의 영역 중 상기 타겟 선박에 대응되는 영역이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 제1 포인트들을 추출하는 단계; 및
    상기 한 쌍의 제1 포인트들에 기초하여 상기 타겟 선박의 선수와 안벽(pier) 사이의 거리인 선수 거리 및 상기 타겟 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 상기 타겟 선박의 접안 관련 정보를 획득하는 단계; 를 포함하고
    상기 타겟 선박의 접안 관련 정보를 획득하는 단계는,
    상기 한 쌍의 제1 포인트들 중 하나의 제1 포인트에 기초하여 상기 타겟 선박의 상기 선수 거리를 획득하는 단계 및
    상기 한 쌍의 제1 포인트들 중 다른 하나의 제1 포인트에 기초하여 상기 타겟 선박의 상기 선미 거리를 획득하는 단계를 포함하는
    항만 모니터링 방법.
  27. 제26항에 있어서,
    상기 항만 이미지가 다른 선박의 적어도 일부를 포함하는 경우,
    상기 타겟 선박의 선수 및 선미에 대응하는 한 쌍의 제2 포인트들을 추출하는 단계; 및
    상기 한 쌍의 제2 포인트들에 기초하여 상기 타겟 선박과 상기 다른 선박 사이의 거리를 포함하는 상기 타겟 선박의 충돌 관련 정보를 획득하는 단계; 를 더 포함하고,
    상기 충돌 관련 정보를 획득하는 단계는,
    상기 한 쌍의 제2 포인트들 중 상기 다른 선박과 더 가까운 하나의 제2 포인트에 기초하여 상기 타겟 선박과 상기 다른 선박 사이의 거리를 획득하는 단계를 포함하는
    항만 모니터링 방법.

  28. 제1항 내지 제27항 중 어느 하나의 항에 따른 방법을 실행시키기 위한 프로그램을 기록한 기록매체.
  29. 항만에 설치되어 이미지를 촬상하는 카메라;
    상기 카메라가 촬상한 바다, 제1 선박의 적어도 일부 및 제2 선박의 적어도 일부를 포함하는 항만 이미지를 획득하고,
    상기 항만 이미지로부터 상기 제1 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 제1 포인트들 및 상기 제1 선박의 선수 및 선미에 대응하는 한 쌍의 제2 포인트들을 추출하고, 상기 한 쌍의 제1 포인트들에 기초하여 상기 제1 선박의 선수와 안벽(pier) 사이의 거리인 선수 거리 및 상기 제1 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 상기 제1 선박의 접안 관련 정보를 획득하고, 상기 한 쌍의 제2 포인트들에 기초하여 상기 제1 선박과 상기 제2 선박 사이의 거리를 포함하는 상기 선박의 충돌 관련 정보를 획득하는 제어 모듈 - 상기 충돌 관련 정보의 획득은 상기 한 쌍의 제2 포인트들 중 상기 제2 선박과 더 가까운 하나의 제2 포인트에 기초하여 상기 제1 선박과 상기 제2 선박 사이의 거리를 획득하는 것을 포함함 - ; 및
    상기 접안 관련 정보 및/또는 상기 충돌 관련 정보를 원격 위치한 단말기에 전송하는 통신 모듈; 을 포함하는
    항만 모니터링 장치.

KR1020200003190A 2020-01-09 2020-01-09 선박 및 항만 모니터링 장치 및 방법 KR102265980B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200003190A KR102265980B1 (ko) 2020-01-09 2020-01-09 선박 및 항만 모니터링 장치 및 방법

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020200003190A KR102265980B1 (ko) 2020-01-09 2020-01-09 선박 및 항만 모니터링 장치 및 방법
PCT/KR2021/000036 WO2021141338A1 (ko) 2020-01-09 2021-01-04 선박 및 항만 모니터링 장치 및 방법
KR1020210075563A KR20210090574A (ko) 2020-01-09 2021-06-10 선박 및 항만 모니터링 장치 및 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210075563A Division KR20210090574A (ko) 2020-01-09 2021-06-10 선박 및 항만 모니터링 장치 및 방법

Publications (1)

Publication Number Publication Date
KR102265980B1 true KR102265980B1 (ko) 2021-06-17

Family

ID=76603505

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020200003190A KR102265980B1 (ko) 2020-01-09 2020-01-09 선박 및 항만 모니터링 장치 및 방법
KR1020210075563A KR20210090574A (ko) 2020-01-09 2021-06-10 선박 및 항만 모니터링 장치 및 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020210075563A KR20210090574A (ko) 2020-01-09 2021-06-10 선박 및 항만 모니터링 장치 및 방법

Country Status (1)

Country Link
KR (2) KR102265980B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110059206A (ko) * 2009-11-27 2011-06-02 김영복 터그보트를 이용한 접안선박 유도시스템
KR20170133010A (ko) * 2016-05-25 2017-12-05 (주)주인정보시스템 카메라 영상을 이용한 선박의 안전접안 시스템 및 그 방법
KR102005559B1 (ko) * 2018-09-04 2019-08-07 씨드로닉스(주) 이미지 세그멘테이션을 이용한 주변 환경 감지 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110059206A (ko) * 2009-11-27 2011-06-02 김영복 터그보트를 이용한 접안선박 유도시스템
KR20170133010A (ko) * 2016-05-25 2017-12-05 (주)주인정보시스템 카메라 영상을 이용한 선박의 안전접안 시스템 및 그 방법
KR102005559B1 (ko) * 2018-09-04 2019-08-07 씨드로닉스(주) 이미지 세그멘테이션을 이용한 주변 환경 감지 방법

Also Published As

Publication number Publication date
KR20210090574A (ko) 2021-07-20

Similar Documents

Publication Publication Date Title
KR102231286B1 (ko) 선박 주변 모니터링 장치 및 선박 주변 모니터링 방법
KR102112935B1 (ko) 장애물 지도를 이용한 경로 생성 방법
KR102109941B1 (ko) 라이다 센서 및 카메라를 이용한 객체 검출 방법 및 그를 위한 장치
JP2009064410A (ja) 車両の死角における移動物体を検知するための方法、および死角検知装置
US20200334843A1 (en) Information processing apparatus, control method for same, non-transitory computer-readable storage medium, and vehicle driving support system
US10803360B2 (en) Situation awareness method and device using image segmentation
US20220024549A1 (en) System and method for measuring the distance to an object in water
EP3238173B1 (en) Method and device for detecting an overhead cable from an aerial vessel
US20210019521A1 (en) Method and Device for Situation Awareness
KR20200095888A (ko) 무인 선박 시스템의 상황인지 방법 및 장치
CN111338382B (zh) 一种安全态势引导的无人机路径规划方法
KR20200039588A (ko) 선박 및 항만 실시간 모니터링 장치 및 방법
Kim et al. Artificial intelligence vision-based monitoring system for ship berthing
KR102265980B1 (ko) 선박 및 항만 모니터링 장치 및 방법
CN112733678A (zh) 测距方法、装置、计算机设备和存储介质
KR102235787B1 (ko) 접안 모니터링 장치 및 방법
WO2021096629A1 (en) Geometry-aware instance segmentation in stereo image capture processes
KR102278674B1 (ko) 해수면을 고려한 항만 및 선박 모니터링 방법 및 장치
Nomura et al. Study of 3D measurement of ships using dense stereo vision: towards application in automatic berthing systems
CN111611853A (zh) 一种传感信息融合方法、装置及存储介质
KR20220055556A (ko) 선박 및 항만 모니터링 장치 및 방법
KR20220055555A (ko) 항만 및 선박 모니터링 방법 및 장치
Petković et al. Target Detection for Visual Collision Avoidance System
Kennedy Development of an exteroceptive sensor suite on unmanned surface vessels for real-time classification of navigational markers
CN114359714A (zh) 基于事件相机的无人体避障方法、装置及智能无人体

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant