KR102623124B1 - 접안 모니터링 장치 및 방법 - Google Patents
접안 모니터링 장치 및 방법 Download PDFInfo
- Publication number
- KR102623124B1 KR102623124B1 KR1020230058018A KR20230058018A KR102623124B1 KR 102623124 B1 KR102623124 B1 KR 102623124B1 KR 1020230058018 A KR1020230058018 A KR 1020230058018A KR 20230058018 A KR20230058018 A KR 20230058018A KR 102623124 B1 KR102623124 B1 KR 102623124B1
- Authority
- KR
- South Korea
- Prior art keywords
- image
- ship
- information
- distance
- ships
- Prior art date
Links
- 238000012544 monitoring process Methods 0.000 title claims abstract description 120
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000011218 segmentation Effects 0.000 claims abstract description 56
- 238000013528 artificial neural network Methods 0.000 claims abstract description 39
- 238000013459 approach Methods 0.000 claims description 32
- 238000004891 communication Methods 0.000 claims description 31
- 238000012806 monitoring device Methods 0.000 claims description 21
- 238000002372 labelling Methods 0.000 claims description 6
- 101150080778 INPP5D gene Proteins 0.000 description 418
- 238000010191 image analysis Methods 0.000 description 47
- 238000010586 diagram Methods 0.000 description 43
- 238000006243 chemical reaction Methods 0.000 description 25
- 238000005259 measurement Methods 0.000 description 22
- 238000001514 detection method Methods 0.000 description 18
- 238000007781 pre-processing Methods 0.000 description 15
- 239000000284 extract Substances 0.000 description 11
- 238000012545 processing Methods 0.000 description 9
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 9
- 239000000126 substance Substances 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 6
- 238000009434 installation Methods 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 5
- 238000003384 imaging method Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000003709 image segmentation Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000003032 molecular docking Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 150000003839 salts Chemical class 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 239000000779 smoke Substances 0.000 description 2
- 210000000225 synapse Anatomy 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 239000000956 alloy Substances 0.000 description 1
- 229910045601 alloy Inorganic materials 0.000 description 1
- 230000007797 corrosion Effects 0.000 description 1
- 238000005260 corrosion Methods 0.000 description 1
- QTCANKDTWWSCMR-UHFFFAOYSA-N costic aldehyde Natural products C1CCC(=C)C2CC(C(=C)C=O)CCC21C QTCANKDTWWSCMR-UHFFFAOYSA-N 0.000 description 1
- 239000000428 dust Substances 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000003704 image resize Methods 0.000 description 1
- 239000000077 insect repellent Substances 0.000 description 1
- ISTFUJWTQAMRGA-UHFFFAOYSA-N iso-beta-costal Natural products C1C(C(=C)C=O)CCC2(C)CCCC(C)=C21 ISTFUJWTQAMRGA-UHFFFAOYSA-N 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000013535 sea water Substances 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
- 239000007921 spray Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 239000012780 transparent material Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G3/00—Traffic control systems for marine craft
- G08G3/02—Anti-collision systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B63—SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
- B63B—SHIPS OR OTHER WATERBORNE VESSELS; EQUIPMENT FOR SHIPPING
- B63B49/00—Arrangements of nautical instruments or navigational aids
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Ocean & Marine Engineering (AREA)
- Multimedia (AREA)
- Mechanical Engineering (AREA)
- Combustion & Propulsion (AREA)
- Chemical & Material Sciences (AREA)
- Signal Processing (AREA)
- Traffic Control Systems (AREA)
- Image Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Burglar Alarm Systems (AREA)
Abstract
본 발명은 컴퓨팅 수단에 의해 수행되는 접안 모니터링 방법에 관한 것으로 일 실시예에 따른 항만에 설치되어 이미지를 촬상하는 카메라를 이용하여 바다 및 복수의 선박을 포함하는 항만 이미지를 획득하는 단계, 입력 이미지 및 상기 입력 이미지에 포함된 바다, 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 상기 항만 이미지로부터 상기 오브젝트들에 대한 세그멘테이션 이미지를 생성하는 단계, 상기 세그멘테이션 이미지의 선박을 지시하는 클래스 값이 할당된 제1 픽셀들에 기초하여 상기 복수의 선박을 트래킹하여 상기 복수의 선박 각각을 나타내는 대표 포인트들의 위치 정보가 포함된 트래킹 정보를 획득하는 단계, 상기 트래킹 정보에 기초하여 상기 트래킹되는 선박 중 접안 가이드되는 타겟 선박을 결정하는 단계 및 상기 세그멘테이션 이미지에 기초하여 상기 타겟 선박의 선수와 안벽 사이의 거리인 선수 거리 및 상기 타겟 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 접안 가이드 정보를 획득하는 단계를 포함하는 접안 모니터링 방법을 개시한다.
Description
본 발명은 접안 모니터링 장치 및 방법에 관한 것으로, 구체적으로 이미지에 기초한 접안 모니터링을 수행하는 장치 및 방법에 관한 것이다.
최근 선박의 운항 및 항만 내에서의 접안, 이안에 있어 많은 사고가 발생하고 있다. 주로 접안 시, 선박 주변이나 항만 내의 상황을 영상을 통해서 정확하게 확인하지 못하는 점에 의해 발생하는 사고가 많다.
이에 종래에는 ECDIS, radar 등의 다양한 종류의 센서를 이용해 접안을 지원하고 있으나, ECDIS의 경우 GPS의 부정확성, AIS의 업데이트 주기 및 AIS 미등록 이동체 등으로 인한 한계가 존재하고, radar의 경우 비탐색영역의 존재 및 노이즈로 인한 한계가 존재한다.
따라서, 실질적으로 접안 시 선박 주변이나 항만 내의 상황을 영상을 통해 모니터링 하는 기술에 대한 기술 개발이 필요한 실정이다.
본 명세서의 해결하고자 하는 일 과제는, 선박 주변 및 항만을 모니터링하기 위한 접안 모니터링 장치 및 방법을 제공하는 것에 있다.
본 명세서의 해결하고자 하는 다른 일 과제는 모니터링의 대상인 선박을 결정하고, 모니터링 대상에 관한 정보를 산출 및 출력하는 접안 모니터링 장치 및 방법을 제공하는 것이다.
본 명세서의 해결하고자 하는 다른 일 과제는 이미지 세그멘테이션을 이용하는 접안 모니터링 장치 및 방법을 제공하는 것이다.
본 발명이 해결하고자 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세서의 일 양상에 따르면, 컴퓨팅 수단에 의해 수행되는 접안 모니터링 방법에 있어서, 항만에 설치되어 이미지를 촬상하는 카메라를 이용하여 바다 및 복수의 선박을 포함하는 항만 이미지를 획득하는 단계, 입력 이미지 및 상기 입력 이미지에 포함된 바다, 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 상기 항만 이미지로부터 상기 오브젝트들에 대한 세그멘테이션 이미지를 생성하는 단계, 상기 세그멘테이션 이미지의 선박을 지시하는 클래스 값이 할당된 제1 픽셀들에 기초하여 상기 복수의 선박을 트래킹하여 상기 복수의 선박 각각을 나타내는 대표 포인트들의 위치 정보가 포함된 트래킹 정보를 획득하는 단계, 상기 트래킹 정보에 기초하여 상기 트래킹되는 선박 중 접안 가이드되는 타겟 선박을 결정하는 단계 및 상기 세그멘테이션 이미지에 기초하여 상기 타겟 선박의 선수와 안벽사이의 거리인 선수 거리 및 상기 타겟 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 접안 가이드 정보를 획득하는 단계를 포함하는 접안 모니터링 방법이 제공될 수 있다.
또한, 본 명세서의 다른 일 양상에 따르면, 항만에 설치되어 이미지를 촬상하는 카메라, 상기 카메라가 촬상한 바다 및 선박을 포함하는 항만 이미지를 획득하고, 입력 이미지 및 상기 입력 이미지에 포함된 바다, 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 상기 항만 이미지로부터 상기 오브젝트들에 대한 세그멘테이션 이미지를 생성하고, 상기 세그멘테이션 이미지의 선박을 지시하는 클래스 값이 할당된 제1 픽셀들에 기초하여 상기 복수의 선박을 트래킹하여 상기 복수의 선박 각각을 나타내는 대표 포인트들의 위치 정보가 포함된 트래킹 정보를 획득하고, 상기 트래킹 정보에 기초하여 상기 트래킹되는 선박 중 접안 가이드되는 타겟 선박을 결정하고, 상기 세그멘테이션 이미지에 기초하여 상기 타겟 선박의 선수와 안벽 사이의 거리인 선수 거리 및 상기 타겟 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 접안 가이드 정보를 획득하는 제어 모듈, 및 상기 타겟 선박의 접안 가이드 정보를 원격 위치한 단말기에 전송하는 통신 모듈을 포함하는 접안 모니터링 장치가 제공될 수 있다.
본 명세서의 과제의 해결 수단이 상술한 해결 수단들로 제한되는 것은 아니며, 언급되지 아니한 해결 수단들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세서의 일 실시예에 의하면, 선박 주변 및 항만을 모니터링하기 위한 접안 가이드 정보를 산출함으로써, 선박 및 항만에 대한 모니터링을 수행할 수 있다.
본 명세서의 일 실시예에 의하면, 모니터링의 대상인 선박을 결정하고, 결정된 모니터링 대상에 관한 정보를 산출 및 출력하여 접안 모니터링을 효율적으로 수행할 수 있다.
본 명세서의 일 실시예에 의하면, 이미지 세그멘테이션을 이용하여 선박을 인식하고, 이에 기초하여 모니터링 대상을 결정할 수 있다.
본 발명의 효과가 상술한 효과들로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
도 1은 일 실시예에 따른 이미지 기반 모니터링에 관한 도면이다.
도 2는 일 실시예에 따른 접안 모니터링 장치에 관한 도면이다.
도 3 및 도 4는 일 실시예에 따른 접안 모니터링 장치의 실시예에 관한 도면이다.
도 5는 일 실시예에 따른 시야각 및 피사계 심도에 관한 도면이다.
도 6 및 도 7은 일 실시예에 따른 센서 모듈의 설치 위치에 관한 도면이다.
도 8은 일 실시예에 따른 이미지 분석에 관한 도면이다.
도 9 내지 도 11은 일 실시예에 따른 오브젝트 인식 단계에 관한 도면이다.
도 12 및 도 13은 일 실시예에 따른 인공 신경망의 학습 단계 및 추론 단계에 관한 도면이다.
도 14 및 도 15는 일 실시예에 따른 오브젝트의 위치/이동 정보 추정에 관한 도면이다.
도 16은 일 실시예에 따른 타겟 선박 결정에 관한 순서도이다.
도 17은 일 실시예에 따른 선박의 트래킹의 일 예에 관한 도면이다.
도 18은 일 실시예에 따른 위치 정보에 기초한 타겟 선박 결정의 일 예에 관한 도면이다.
도 19는 일 실시예에 따른 이동 정보에 기초한 타겟 선박 결정의 일 예에 관한 도면이다.
도 20은 일 실시예에 따른 항해 정보에 기초한 타겟 선박 결정의 일 예에 관한 도면이다.
도 21은 일 실시예에 따른 사용자 입력 정보에 기초한 타겟 선박 결정의 일 예에 관한 도면이다.
도 22는 일 실시예에 따른 타겟 선박의 접안 가이드 정보 획득에 관한 도면이다.
도 23은 일 실시예에 따른 모니터링 정보 출력에 관한 순서도이다.
도 24는 일 실시예에 따른 모니터링 정보 출력의 일 예에 관한 도면이다.
도 25 내지 도 27은 일 실시예에 따른 모니터링 정보 출력의 다른 예에 관한 도면이다.
도 28은 일 실시예에 따른 복수의 이미지에 기초한 이미지 기반 모니터링에 관한 도면이다.
도 29 및 도 30은 일 실시예에 따른 모니터링 정보 출력의 다른 예에 관한 도면이다.
도 31 및 도 32는 일 실시예에 따른 모니터링 정보 출력의 다른 예에 관한 도면이다.
도 33 및 도 34는 일 실시예에 따른 시점 변환에 관한 도면이다.
도 35는 일 실시예에 따른 접안 모니터링의 순서도이다.
도 2는 일 실시예에 따른 접안 모니터링 장치에 관한 도면이다.
도 3 및 도 4는 일 실시예에 따른 접안 모니터링 장치의 실시예에 관한 도면이다.
도 5는 일 실시예에 따른 시야각 및 피사계 심도에 관한 도면이다.
도 6 및 도 7은 일 실시예에 따른 센서 모듈의 설치 위치에 관한 도면이다.
도 8은 일 실시예에 따른 이미지 분석에 관한 도면이다.
도 9 내지 도 11은 일 실시예에 따른 오브젝트 인식 단계에 관한 도면이다.
도 12 및 도 13은 일 실시예에 따른 인공 신경망의 학습 단계 및 추론 단계에 관한 도면이다.
도 14 및 도 15는 일 실시예에 따른 오브젝트의 위치/이동 정보 추정에 관한 도면이다.
도 16은 일 실시예에 따른 타겟 선박 결정에 관한 순서도이다.
도 17은 일 실시예에 따른 선박의 트래킹의 일 예에 관한 도면이다.
도 18은 일 실시예에 따른 위치 정보에 기초한 타겟 선박 결정의 일 예에 관한 도면이다.
도 19는 일 실시예에 따른 이동 정보에 기초한 타겟 선박 결정의 일 예에 관한 도면이다.
도 20은 일 실시예에 따른 항해 정보에 기초한 타겟 선박 결정의 일 예에 관한 도면이다.
도 21은 일 실시예에 따른 사용자 입력 정보에 기초한 타겟 선박 결정의 일 예에 관한 도면이다.
도 22는 일 실시예에 따른 타겟 선박의 접안 가이드 정보 획득에 관한 도면이다.
도 23은 일 실시예에 따른 모니터링 정보 출력에 관한 순서도이다.
도 24는 일 실시예에 따른 모니터링 정보 출력의 일 예에 관한 도면이다.
도 25 내지 도 27은 일 실시예에 따른 모니터링 정보 출력의 다른 예에 관한 도면이다.
도 28은 일 실시예에 따른 복수의 이미지에 기초한 이미지 기반 모니터링에 관한 도면이다.
도 29 및 도 30은 일 실시예에 따른 모니터링 정보 출력의 다른 예에 관한 도면이다.
도 31 및 도 32는 일 실시예에 따른 모니터링 정보 출력의 다른 예에 관한 도면이다.
도 33 및 도 34는 일 실시예에 따른 시점 변환에 관한 도면이다.
도 35는 일 실시예에 따른 접안 모니터링의 순서도이다.
본 명세서에 기재된 실시예는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 본 발명의 사상을 명확히 설명하기 위한 것이므로, 본 발명이 본 명세서에 기재된 실시예에 의해 한정되는 것은 아니며, 본 발명의 범위는 본 발명의 사상을 벗어나지 아니하는 수정예 또는 변형예를 포함하는 것으로 해석되어야 한다.
본 명세서에서 사용되는 용어는 본 발명에서의 기능을 고려하여 가능한 현재 널리 사용되고 있는 일반적인 용어를 선택하였으나 이는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자의 의도, 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 다만, 이와 달리 특정한 용어를 임의의 의미로 정의하여 사용하는 경우에는 그 용어의 의미에 관하여 별도로 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가진 실질적인 의미와 본 명세서의 전반에 걸친 내용을 토대로 해석되어야 한다.
본 명세서에 첨부된 도면은 본 발명을 용이하게 설명하기 위한 것으로 도면에 도시된 형상은 본 발명의 이해를 돕기 위하여 필요에 따라 과장되어 표시된 것일 수 있으므로 본 발명이 도면에 의해 한정되는 것은 아니다.
본 명세서에서 본 발명에 관련된 공지의 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에 이에 관한 자세한 설명은 필요에 따라 생략하기로 한다.
본 명세서에서 사용되는 '항만 이미지' 라는 용어는 항만과 관련된 이미지로 이해될 수 있으며, 예를 들어, 항만 이미지는 항만에 설치된 카메라를 통해 촬상된 이미지, 항만의 적어도 일부가 포함된 이미지 등을 포함할 수 있다.
본 명세서의 일 양상에 따르면 컴퓨팅 수단에 의해 수행되는 접안 모니터링 방법에 있어서, 항만에 설치되어 이미지를 촬상하는 카메라를 이용하여 바다 및 복수의 선박을 포함하는 항만 이미지를 획득하는 단계; 입력 이미지 및 상기 입력 이미지에 포함된 바다, 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 상기 항만 이미지로부터 상기 오브젝트들에 대한 세그멘테이션 이미지를 생성하는 단계; 상기 세그멘테이션 이미지의 선박을 지시하는 클래스 값이 할당된 제1 픽셀들에 기초하여 상기 복수의 선박을 트래킹하여 상기 복수의 선박 각각을 나타내는 대표 포인트들의 위치 정보가 포함된 트래킹 정보를 획득하는 단계; 상기 트래킹 정보에 기초하여 상기 트래킹되는 선박 중 접안 가이드되는 타겟 선박을 결정하는 단계; 및 상기 세그멘테이션 이미지에 기초하여 상기 타겟 선박의 선수와 안벽 사이의 거리인 선수 거리 및 상기 타겟 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 접안 가이드 정보를 획득하는 단계; 를 포함하는 접안 모니터링 방법이 제공될 수 있다.
여기서, 상기 대표 포인트는 상기 세그멘테이션 이미지의 상기 복수의 선박 각각의 세그멘테이션 영역 상의 하나의 포인트일 수 있다.
여기서, 상기 대표 포인트는 상기 복수의 선박 각각의 세그멘테이션 영역의 중심에 위치하는 포인트일 수 있다.
여기서, 상기 트래킹 정보를 획득하는 단계는 상기 대표점과 상기 안벽 사이의 거리를 획득하는 단계를 포함하고 상기 타겟 선박은 상기 대표 포인트와 상기 안벽 사이의 거리에 기초하여 결정될 수 있다.
여기서, 상기 타겟 선박은 상기 복수의 선박 중 상기 대표 포인트와 상기 안벽 사이의 거리가 기설정된 값 미만인 선박으로 결정될 수 있다.
여기서, 상기 타겟 선박은 상기 복수의 선박 중 상기 대표 포인트가 기설정된 영역 상에 위치하는 선박으로 결정될 수 있다.
여기서, 상기 트래킹 정보를 획득하는 단계는 상기 대표 포인트의 위치 정보에 기초하여 상기 대표 포인트의 이동 정보를 획득하는 단계를 포함하고, 상기 타겟 선박은 상기 대표 포인트의 이동 정보에 기초하여 결정될 수 있다.
여기서, 상기 타겟 선박은 상기 복수의 선박 중 상기 대표 포인트의 상기 안벽으로의 접근 속도의 크기에 기초하여 결정될 수 있다.
여기서, 상기 트래킹 정보를 획득하는 단계는 상기 복수의 선박의 VTS 정보 및 AIS 정보 중 적어도 하나를 획득하는 단계를 포함하고, 상기 타겟 선박은 상기 VTS 정보 및 AIS 정보 중 적어도 하나에 기초하여 결정될 수 있다.
여기서, 상기 타겟 선박은 상기 복수의 선박 중 상기 VTS 정보 및 AIS 정보 중 적어도 하나에 따른 도착지에 기초하여 결정될 수 있다.
여기서, 상기 트래킹 정보를 획득하는 단계는 사용자 단말로부터 상기 복수의 선박에 대한 사용자 입력 정보를 획득하는 단계를 포함하고, 상기 타겟 선박은 상기 복수의 선박에 대한 사용자 입력 정보에 기초하여 결정될 수 있다.
여기서, 상기 타겟 선박은 상기 복수의 선박 중 상기 사용자 입력 정보에 따라 선택된 선박으로 결정될 수 있다.
여기서, 상기 타겟 선박은 상기 타겟 선박 결정에 이용되는 조건에 부합하는 선박이 복수인 경우 상기 조건에 더 늦게 부합한 하나의 선박으로 결정될 수 있다.
여기서, 상기 인공 신경망은 입력 이미지 및 상기 입력 이미지에 포함된 바다, 예인선, 예인선을 제외한 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 예인선, 예인선이 제외된 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습될 수 있다.
여기서, 상기 접안 가이드 정보를 획득하는 단계는 상기 타겟 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 포인트를 추출하는 단계 및 상기 한 쌍의 포인트에 기초하여 상기 선수 거리 및 상기 선미 거리를 획득하는 단계를 포함할 수 있다.
여기서, 상기 접안 가이드 정보를 획득하는 단계는 상기 선수 거리 및 상기 선미 거리에 기초하여 상기 타겟 선박의 선수가 상기 안벽으로 접근하는 속도인 선수 속도 및 상기 타겟 선박의 선미가 상기 안벽으로 접근하는 속도인 선미 속도를 획득하는 단계를 포함할 수 있다.
여기서, 상기 접안 가이드 정보를 획득하는 단계는 상기 세그멘테이션 이미지에 기초하여 상기 타겟 선박과 상기 다른 선박 사이의 거리를 획득하는 단계를 포함할 수 있다.
여기서, 상기 접안 가이드 정보를 획득하는 단계는 상기 타겟 선박과 다른 선박 사이의 거리에 기초하여 상기 타겟 선박과 상기 다른 선박 사이의 상대 속도를 획득하는 단계를 포함할 수 있다.
여기서, 상기 접안 가이드 정보를 획득하는 단계는 상기 선박의 다른 선박 또는 상기 안벽과의 충돌 위험과 관련된 정보를 획득하는 단계를 포함할 수 있다.
여기서, 상기 접안 모니터링 방법은 상기 접안 가이드 정보를 상기 항만 이미지와 함께 출력하는 단계; 를 더 포함할 수 있다.
여기서, 상기 항만 이미지는 복수의 항만 이미지가 정합된 파노라마 이미지를 포함할 수 있다.
또한 상술한 방법을 실행시키기 위한 프로그램을 기록한 기록매체가 제공될 수 있다.
또한 본 명세서의 일 양상에 따르면 항만에 설치되어 이미지를 촬상하는 카메라; 상기 카메라가 촬상한 바다 및 선박을 포함하는 항만 이미지를 획득하고, 입력 이미지 및 상기 입력 이미지에 포함된 바다, 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 상기 항만 이미지로부터 상기 오브젝트들에 대한 세그멘테이션 이미지를 생성하고, 상기 세그멘테이션 이미지의 선박을 지시하는 클래스 값이 할당된 제1 픽셀들에 기초하여 상기 복수의 선박을 트래킹하여 상기 복수의 선박 각각을 나타내는 대표 포인트들의 위치 정보가 포함된 트래킹 정보를 획득하고, 상기 트래킹 정보에 기초하여 상기 트래킹되는 선박 중 접안 가이드되는 타겟 선박을 결정하고, 상기 세그멘테이션 이미지에 기초하여 상기 타겟 선박의 선수와 안벽(pier) 사이의 거리인 선수 거리 및 상기 타겟 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 접안 가이드 정보를 획득하는 제어 모듈; 및 상기 타겟 선박의 접안 가이드 정보를 원격 위치한 단말기에 전송하는 통신 모듈; 을 포함하는 접안 모니터링 장치가 제공될 수 있다.
이하에서는 일 실시예에 따른 접안 모니터링 장치 및 방법에 대하여 설명한다.
본 명세서에서 모니터링이란 주변 상황을 파악하거나 인식하는 것으로, 일정 영역이나 특정 오브젝트 등 감지 대상을 각종 센서를 이용하여 감지하고 그 감지 결과를 사용자에게 제공하는 것뿐만 아니라 감지 결과를 바탕으로 연산 등을 통해 추가적인 정보를 제공하는 것 등을 포함하도록 넓게 해석되어야 한다.
이미지 기반 모니터링이란 이미지에 기초하여 주변 상황을 파악하거나 인식하는 것을 의미할 수 있다. 예를 들어, 모니터링은 선박의 운항 시 선박 주변 이미지를 획득하여 이로부터 다른 선박이나 장애물 등을 인식하거나, 선박의 접안 또는 이안 시 접안 가이드 정보를 산출하기 위한 정보를 획득하는 것을 의미할 수 있다.
접안 가이드 정보란 다른 선박이나 장애물 등의 인식, 항만 상황 파악, 선석에 접근 가능한지 여부, 안벽과의 거리 및 속도, 다른 선박과의 거리 및 속도, 운항 경로 상 장애물 존재 여부 파악 등 접안에 필요한 주변 환경에 대한 정보를 의미할 수 있다. 본 명세서에서는 주로 선박 및 항만에서 접안이 수행되는 경우의 모니터링에 대해 설명하나, 이에 한정되는 것은 아니고 차량의 주행, 비행체의 운항 등의 경우에도 적용될 수 있을 것이다.
도 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은 일 실시예에 따른 센서 모듈(100)의 설치 위치에 관한 도면이다. 도 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)와 충돌하는 경우 선박의 속도 등 이동 정보로부터 충격량 등을 계산하여 방충제의 교체 시기를 예측할 수 있을 것이다.
이상에서는 오브젝트 인식 단계를 수행한 후 위치/이동 정보를 추정하는 방식의 이미지 분석의 실시예에 대해 살펴보았다. 이와 달리, 오브젝트 인식과 위치/이동 정보 추정이 하나의 단계로 수행될 수도 있다. 예를 들어, 세그멘테이션 또는 디텍션을 수행하여 오브젝트를 인식함과 동시에 오브젝트의 위치/이동 정보를 추정할 수 있다.
이미지 상의 모든 선박을 모니터링하는 경우 선박의 접안 가이드 정보를 획득하기 위한 데이터 연산량이 많아져 장치(10)의 처리 속도가 저하될 수 있다. 또한, 모니터링의 대상이 되는 타겟 선박을 결정하여 타겟 선박만의 접안 가이드 정보를 획득하고(일 예로, 선수 거리, 선미 거리 등), 획득한 접안 가이드 정보를 출력함으로써 사용자는 다른 불필요한 정보가 제외된 접안에 필요한 정보를 제공받을 수 있다. 이를 위해, 제어 모듈(200)은 이미지 생성 유닛을 이용하여 획득한 적어도 하나의 이미지에 복수의 선박이 포함된 경우 타겟 선박을 결정하는 이미지 분석을 수행할 수 있다.
도 16은 일 실시예에 따른 타겟 선박 결정에 관한 순서도이다.
도 16을 참고하면, 이미지 기반 모니터링은 선박 트래킹 단계(S213), 트래킹 정보 획득 단계(S216) 및 타겟 선박 결정 단계(S219)를 포함할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 이미지 상의 선박을 트래킹할 수 있다(S213).
트래킹(tracking)은 이미지 상에서 시공간적으로 변화하는 특징점(오브젝트, 트래킹 대상)을 추적하는 행위를 의미한다. 예를 들어, 트래킹은 이미지 상에서 시공간적으로 변화하는 특징점의 위치, 형태, 움직임, 궤도, 정보 등을 추적하는 것을 포함할 수 있다. 또한, 트래킹은 이미지 상에 특징점의 화상을 계속 보존하도록 하는 것을 포함할 수도 있다.
일 실시예에 따르면, 제어 모듈(200)은 세그멘테이션된 이미지에 기초하여 선박의 트래킹을 수행할 수 있다. 구체적으로, 제어 모듈(200)은 세그멘테이션된 이미지 중 픽셀의 클래스 값이 선박에 해당하는 영역에 기초하여 선박을 트래킹할 수 있다. 예를 들어, 제어 모듈(200)은 연속 촬영된 이미지의 세그멘테이션된 이미지들(연속)의 클래스 값이 선박에 해당하는 픽셀에 기초하여 트래킹할 수 있다. 여기서, 제어 모듈(200)은 클래스 값이 선박에 해당하는 픽셀에 의해 형성되는 선박 에어리어 내부의 선박의 대표 포인트(픽셀)를 연속되는 프레임들 간에 트래킹할 수 있다.
도 17은 일 실시예에 따른 선박의 트래킹의 일 예에 관한 도면이다.
도 17을 참조하면, 제어 모듈(200)은 연속 촬영된 이미지에서 선박을 나타내는 대표 포인트들(141, 142, 143)을 추적함으로써 이미지의 선박들을 트래킹할 수 있다. 예를 들어, 제어 모듈(200)은 세그멘테이션 이미지의 각각의 선박들에 대응하는 영역 상의 하나의 포인트를 트래킹할 수 있다.
선박의 대표 포인트(141, 142, 143)는 어떠한 특징점이어도 무방하나, 세그멘테이션된 이미지는 단일한 클래스 값을 가지므로, 예시적으로 제어 모듈(200)은 선박에 대응하는 영역의 중앙에 위치하는 포인트(141)를 대표 포인트로 결정할 수 있다.
물론, 제어 모듈(200)은 선박의 대표 포인트(141, 142, 143)를 선박 영역의 최상단 포인트, 최하단 포인트(142), 최좌단 포인트, 최우단 포인트(143) 등 다른 위치의 포인트로 결정해도 무방하며, 뿐만 아니라 제어 모듈(200)은 하나의 픽셀을 선박의 대표 포인트로 결정하여 이를 트래킹하는 대신 선박에 대응하는 영역의 외곽선, 또는 영역 자체를 트래킹하는 것도 가능하다.
트래킹에는 다양한 기법이 활용될 수 있으며, 그 예시로 칼만 필터(Kalman filter), 확장 칼만 필터(Extended Kalman filter), 무향 칼만 필터(Unscented Kalman filter), 파티클 필터(Particle filter), 인포메이션 필터(Information filter), 히스토그람 필터(Histogram Filter) 등을 포함하고, 트래킹은 이들 중 적어도 하나가 적용될 수 있다.
물론, 반드시 그러한 것은 아니며, 제어 모듈(200)은 배경영상과 차영상을 이용하여 선박을 트래킹하는 등 촬상 영상 등의 이미지에 기초하여 선박을 트래킹할 수 있는 등 제어 모듈(200)은 다양한 방식으로 선박을 트래킹할 수 있다.
또한, 트래킹하는 단계(S213)는 제어 모듈(200)이 이미지 상에 포함된 선박 중 예인선이 아닌 선박을 트래킹하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 세그멘테이션 이미지에 기초하여 선박 중 예인선이 아닌 선박을 트래킹할 수 있다. 구체적으로, 제어 모듈(200)은 입력 이미지 및 상기 입력 이미지에 포함된 바다, 예인선, 예인선을 제외한 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 예인선, 예인선을 제외한 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 이미지 세그멘테이션을 수행하고, 예인선을 제외한 선박을 트래킹할 수 있다. 여기서, 생성된 세그멘테이션 이미지는 예인선을 제외한 선박에 대응되도록 라벨링된 픽셀을 포함할 수 있고, 제어 모듈(200)은 예인선을 제외한 선박에 대응하는 픽셀을 트래킹할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 이미지 상의 트래킹되는 선박의 트래킹 정보를 획득할 수 있다(S216).
트래킹 정보는 트래킹되는 선박에 대한 정보를 의미할 수 있고, 트래킹 정보는 타겟 선박을 결정하기 위해 이용될 수 있다. 한정되지 않는 예를 들어, 트래킹 정보는 선박의 위치 정보, 선박의 이동 정보, 선박의 VTS 정보, 선박의 AIS 정보, 사용자 입력 정보 등을 포함할 수 있다.
일 실시예에 따르면, 트래킹 정보를 획득하는 단계(S216)는 제어 모듈(200)이 이미지로부터 선박의 위치 정보를 획득하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 연속 촬영된 이미지에서 트래킹되는 선박의 대표 포인트의 위치 정보를 획득할 수 있다. 여기서, 선박의 대표 포인트의 위치 정보는 대표 포인트와 안벽 사이의 거리, 대표 포인트와 다른 오브젝트 사이의 거리, 대표 포인트의 이미지 상의 좌표 등에 관한 정보 등일 수 있다.
일 실시예에 따르면, 트래킹 정보를 획득하는 단계(S216)는 제어 모듈(200)이 이미지로부터 선박의 이동 정보를 획득하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 연속 촬영된 이미지에서 트래킹되는 선박의 대표 포인트의 이동 정보를 획득할 수 있다. 여기서, 제어 모듈(200)은 대표 포인트의 이동 정보를 대표 포인트의 위치 정보에 기초하여 획득할 수 있다. 여기서, 선박의 대표 포인트의 이동 정보는 대표 포인트의 안벽으로의 접근 속도, 대표 포인트의 다른 오브젝트로의 접근 속도, 대표 포인트의 속도 변화 등에 관한 정보 등일 수 있다.
일 실시예에 따르면, 트래킹 정보를 획득하는 단계(S216)는 제어 모듈(200)이 트래킹되는 선박의 VTS 정보 및 AIS 정보 등의 항해 정보를 획득하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 VTS 정보 및 AIS 정보 중 적어도 하나를 획득할 수 있다. 여기서 제어 모듈(200)은 항해 정보에 따른 선박의 도착지에 관한 정보, 선박의 접안 예정 시간 등을 획득할 수 있다.
일 실시예에 따르면, 트래킹 정보를 획득하는 단계(S216)는 제어 모듈(200)이 트래킹되는 선박에 대한 사용자 입력 정보를 획득하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 사용자 단말기로부터 타겟 선박의 결정에 이용되는 사용자 입력 정보를 획득할 수 있다.
다만, 트래킹 정보의 획득은 상술한 방식에 의해 수행되는 것으로 한정될 필요는 없고 다양한 방식으로 수행될 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 획득된 트래킹 정보에 기초하여 타겟 선박을 결정할 수 있다(S219).
일 실시예에 따르면, 제어 모듈(200)은 획득한 선박의 위치 정보에 기초하여 타겟 선박을 결정할 수 있다. 예를 들어, 제어 모듈(200)은 선박과 안벽 사이의 거리에 기초하여 타겟 선박을 결정할 수 있다.
도 18은 일 실시예에 따른 위치 정보에 기초한 타겟 선박 결정의 일 예에 관한 도면이다.
도 18을 참고하면, 제어 모듈(200)은 이미지 상에 복수의 선박이 있는 경우 위치 정보에 기초하여 모니터링의 대상이 되는 타겟 선박을 결정할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 트래킹되는 선박의 안벽으로부터의 거리에 기초하여 타겟 선박을 결정할 수 있다. 여기서, 트래킹되는 선박의 안벽으로부터의 거리는 트래킹되는 선박의 대표 포인트와 안벽 사이의 거리일 수 있다.
예를 들어, 제어 모듈(200)은 트래킹되는 선박 중 안벽으로부터의 거리가 임계거리 미만인 선박을 타겟 선박으로 결정할 수 있다. 도 18을 참고하면 제어 모듈(200)은 트래킹되는 선박 중 안벽과의 거리가 기설정된 임계거리(d0)보다 작은 선박을 타겟 선박으로 결정할 수 있다. 제어 모듈(200)은 타겟 선박으로 결정된 선박(151)이 움직여 안벽과의 거리가 d0 보다 먼 장소에 위치하는 경우 선박(151)은 타겟 선박이 아닌 것으로 결정할 수 있다. 또한, 제어 모듈(200)은 선박(152)이 움직여 안벽과의 거리가 d0 보다 가까운 장소에 위치하는 경우 선박(152)을 타겟 선박으로 결정할 수 있다.
제어 모듈(200)은 타겟 선박 결정에 이용되는 임계거리를 다양하게 설정할 수 있다. 예를 들어, 제어 모듈(200)은 임계거리를 인식된 선박의 크기에 기초하여 설정할 수 있다. 구체적으로, 제어 모듈(200)은 선박의 크기가 클수록 임계거리를 크게 설정할 수 있다. 뿐만 아니라, 제어 모듈(200)은 이미지 상의 선박 중 안벽이 아닌 특정 물체(구조물 등)와의 거리가 임계거리 보다 작은 선박을 타겟 선박으로 결정하는 것도 가능하다.
일 실시예에 따르면, 제어 모듈(200)은 트래킹되는 선박의 이미지 상의 위치에 기초하여 타겟 선박을 결정할 수 있다. 여기서, 트래킹되는 선박의 이미지 상의 위치는 트래킹되는 선박의 대표 포인트의 이미지 상의 위치일 수 있다. 예를 들어, 제어 모듈(200)은 이미지 상의 선박 중 이미지의 기설정된 특정 영역 상에 위치하는 선박을 타겟 선박으로 결정할 수 있다. 도 18을 참고하면 제어 모듈(200)은 트래킹되는 선박 중 이미지 상의 기설정된 정사각형 형태의 영역(153) 내에 위치하는 선박(151)을 타겟 선박으로 결정할 수 있다. 제어 모듈(200)은 선박(152)이 움직여 영역(153) 내에 위치하는 경우 선박(152)을 타겟 선박으로 결정할 수 있다. 또한, 제어 모듈(200)은 타겟 선박으로 결정된 선박(151)이 움직여 영역(153) 밖에 위치하는 경우 선박(151)을 타겟 선박에서 제외할 수 있다.
제어 모듈(200)은 영역(153)을 다양한 방식으로 설정할 수 있다. 예를 들어, 제어 모듈(200)은 영역(153)의 크기, 모양, 개수 등을 다양하게 결정할 수 있다. 구체적으로, 제어 모듈(200)은 영역(153)을 이미지가 촬상된 선석에서 선박이 주로 들어오는 경로 주위의 영역, 선박이 주로 접안하는 구역 등으로 결정할 수 있다. 또한 반대로, 제어 모듈(200)은 이미지 상의 선박 중 기설정된 특정 영역(153)을 제외한 영역에 위치한 선박을 타겟 선박으로 결정하는 것도 가능하다.
일 실시예에 따르면, 제어 모듈(200)은 획득한 선박의 이동 정보에 기초하여 타겟 선박을 결정할 수 있다. 예를 들어, 제어 모듈(200)은 선박이 안벽으로 접근하는 속도에 기초하여 타겟 선박을 결정할 수 있다.
도 19는 일 실시예에 따른 이동 정보에 기초한 타겟 선박 결정의 일 예에 관한 도면이다.
도 19를 참고하면, 제어 모듈(200)은 이미지 상에 복수의 선박이 있는 경우 이동 정보에 기초하여 타겟 선박을 결정할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 트래킹되는 선박의 속도에 기초하여 타겟 선박을 결정할 수 있다. 예를 들어, 제어 모듈(200)은 이미지 상의 선박 중 속도의 크기(속도의 절대값)가 임계속도보다 큰 선박을 타겟 선박으로 결정할 수 있다. 도 16을 참고하면 제어 모듈(200)은 트래킹되는 선박 중 임계속도 값보다 큰 값인 vo의 속도로 접근하는 선박(161)을 타겟 선박으로 결정할 수 있다. 제어 모듈(200)은 타겟 선박으로 결정된 선박(161)이 접안이 완료되어 선석에 가만히 멈춰있는 경우 선박(161)을 타겟 선박이 아닌 것으로 결정할 수 있다. 또한, 제어 모듈(200)은 정박해있던 선박(162)이 움직여 임계속도보다 큰 값의 속도(방향 무관)로 움직이는 경우 선박(162)을 타겟 선박으로 결정할 수 있다.
제어 모듈(200)은 타겟 선박 결정에 이용되는 임계속도 크기를 다양하게 설정할 수 있다. 예를 들어, 제어 모듈(200)은 타겟 선박 결정에 이용되는 임계속도를 선박의 크기에 기초하여 결정할 수 있다. 구체적으로, 제어 모듈(200)은 선박의 크기가 클수록 임계속도가 크도록 결정할 수 있다.
뿐만 아니라, 제어 모듈(200)은 트래킹되는 선박 중 속도의 방향, 크기, 속도 변화(가속도) 등 이동 정보와 관련된 조건에 기초하여 타겟 선박을 결정하는 것도 가능하다. 예를 들어, 제어 모듈(200)은 이미지 상의 선박 중 가속도의 크기(가속도의 절대값)가 기설정된 값보다 큰 선박을 타겟 선박으로 결정할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 획득한 선박의 항해 정보에 기초하여 타겟 선박을 결정할 수 있다. 여기서, 항해 정보란 선박이 항해하는 것과 관련된 정보를 포함할 수 있고, 예를 들어, 항해 정보는 AIS 정보, VTS 정보, CITS 정보 등일 수 있다. 항해 정보는 선박의 항해와 관련하여 선박의 출발지, 도착지, 계류지, 항해 경로 등의 정보를 포함할 수 있다.
예를 들어, 제어 모듈(200)은 트래킹되는 선박의 항해 정보에 따른 도착지에 기초하여 타겟 선박을 결정할 수 있다.
도 20은 일 실시예에 따른 항해 정보에 기초한 타겟 선박 결정의 일 예에 관한 도면이다.
도 20을 참고하면, 제어 모듈(200)은 이미지 상에 복수의 선박이 있는 경우 항해 정보에 기초하여 타겟 선박을 결정할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 트래킹되는 선박의 항해 정보에 따른 도착지에 기초하여 타겟 선박을 결정할 수 있다. 예를 들어, 제어 모듈(200)은 이미지 상의 선박 중 항해 정보에 따른 도착지가 이미지를 촬상한 카메라가 설치된 선석인 선박을 타겟 선박으로 결정할 수 있다. 도 17을 참고하면 트래킹되는 선박 중 항해 정보에 따른 도착지가 해당 이미지를 촬상한 카메라가 설치된 선석인 선박(171)을 타겟 선박으로 결정할 수 있다. 제어 모듈(200)은 타겟 선박으로 결정된 선박(171)이 항해 정보에 따라 이안 또는 출항하는 경우 선박(171)을 타겟 선박이 아닌 것으로 결정할 수 있다. 또한, 제어 모듈(200)은 선박(172)이 다른 곳에서 계류하고 난 후, 새로운 항해 정보에 따라 해당 이미지를 촬상한 카메라가 설치된 선석으로 접안하는 경우 선박(172)을 타겟 선박으로 결정할 수 있다.
뿐만 아니라, 제어 모듈(200)은 항해 정보와 관련되는 다른 조건에 기초하여 타겟 선박을 결정할 수도 있다. 예를 들어, 제어 모듈(200)은 항해 정보에 따라 선석에서 접안이 이루어지기로 예정된 시간에 이미지 상에 인식되는 선박을 타겟 선박으로 결정할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 획득한 사용자 입력 정보에 기초하여 타겟 선박을 결정할 수 있다. 사용자 입력 정보란 사용자의 기기로부터 입력되어 수신되는 정보를 포함할 수 있고, 예를 들어, 사용자 입력 정보는 모니터링을 수행할 선박 선택, 선석 선택 등과 관련되어 사용자로부터 입력 받은 정보를 포함할 수 있다.
도 21은 일 실시예에 따른 사용자 입력 정보에 기초한 타겟 선박 결정의 일 예에 관한 도면이다.
도 21을 참고하면, 제어 모듈(200)은 이미지 상에 복수의 선박이 있는 경우 사용자 입력 정보에 기초하여 타겟 선박을 결정할 수 있다. 예를 들어, 제어 모듈(200)은 트래킹되는 선박 중 사용자 입력 정보에 따라 모니터링 대상으로 선택되는 선박을 타겟 선박으로 결정할 수 있다. 도 18을 참고하면 제어 모듈(200)은 트래킹되는 선박 중 사용자 입력 정보에 따라 화면에 표시되는 지시자(193)로부터 선택되는 선박(181)을 타겟 선박으로 결정할 수 있다. 제어 모듈(200)은 타겟 선박으로 결정된 선박(181)이 접안이 완료되고 난 후에 사용자 입력 정보에 따라 선택되지 않는 선박(181)을 타겟 선박이 아닌 것으로 결정할 수 있다. 또한, 제어 모듈(200)은 선택되지 않은 선박(182)이 사용자 입력 정보에 따라 사용자로부터 선택되는 경우 선박(182)을 타겟 선박으로 결정할 수 있다.
여기서, 타겟 선박 결정에 이용되는 사용자 입력 정보는 다양한 방식으로 제공될 수 있다. 예를 들어, 사용자 입력 정보는 항만에 출입하는 선박의 목록 중 선박을 선택하여 타겟 선박을 결정하는 정보일 수 있다. 또한, 사용자 입력 정보는 출력되는 항만 이미지(일 예로, 사용자 단말의 출력된 이미지) 상에서 선택된 위치에 있는 선박을 타겟 선박을 결정하는 정보일 수 있다.
뿐만 아니라, 제어 모듈(200)은 복수의 선석에서 촬상된 이미지 중 모니터링 정보가 출력이 되는 선석의 이미지를 결정할 수 있다. 예를 들어, 제어 모듈(200)은 복수의 선석에서 촬상된 이미지 중 사용자 입력 정보에 따라 선택된 선석의 이미지를 출력하고 상기 이미지에 포함된 선박을 타겟 선박으로 결정할 수 있다.
또한, 획득된 트래킹 정보에 기초하여 타겟 선박을 결정하는 단계(S216)는 제어 모듈(200)이 이미지 상에서 하나의 타겟 선박을 결정하는 것을 포함할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 이미지 상에 타겟 선박으로 결정되는 조건에 부합하는 복수의 선박 중 하나의 선박을 타겟 선박으로 결정할 수 있다. 예를 들어, 제어 모듈(200)은 이미지 상에 타겟 선박으로 결정되는 조건에 부합하는 선박이 복수인 경우 보다 늦게 타겟 선박으로 결정되는 하나의 선박을 타겟 선박으로 결정할 수 있다. 예를 들어, 도 18을 참조하면, 제어 모듈(200)은 선박(151)과 선박(152)이 차례로 영역(153) 내에 위치하는 경우, 초기에는 선박(151)이 타겟 선박이었다가 선박(152)이 영역(153) 내에 위치하는 이후에 타겟 선박을 선박(152)으로 결정할 수 있다. 반대로, 제어 모듈(200)은 이미지 상에 타겟 선박으로 결정되는 조건에 부합하는 선박이 복수인 경우 보다 먼저 타겟 선박으로 결정되는 하나의 선박을 타겟 선박으로 결정할 수도 있다.
다만, 타겟 선박의 결정은 상술한 방식에 의해 수행되는 것으로 한정될 필요는 없고 다양한 방식으로 수행될 수 있다.
도 22는 일 실시예에 따른 타겟 선박의 접안 가이드 정보 획득에 관한 도면이다.
도 22를 참조하면, 제어 모듈(200)은 트래킹되는 선박(191, 192) 중 타겟 선박(191)의 접안 가이드 정보를 획득할 수 있다. 여기서, 접안 가이드 정보는 선수 거리, 선미 거리, 선수 속도, 선미 속도, 타겟 선박과 다른 선박 사이의 거리, 타겟 선박과 다른 선박 사이의 상대속도 등을 포함할 수 있다. 선수 거리는 선박의 선수가 안벽으로부터 떨어진 거리를 의미할 수 있고 선미 거리는 선박의 선미가 안벽으로부터 떨어진 거리를 의미할 수 있다. 선수 속도는 선박의 선수가 안벽으로 접근하는 속도를 의미할 수 있고, 선미 속도는 선박의 선미가 안벽으로 접근하는 속도를 의미할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 타겟 선박(191)과 안벽 사이의 거리를 획득할 수 있다.
예를 들어, 제어 모듈(200)은 타겟 선박(191)의 선수와 안벽 사이의 거리인 선수 거리(193)를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 타겟 선박의 선수에 대응하는 하나의 포인트를 결정하고, 상기 선수에 대응하는 하나의 포인트와 안벽 사이의 거리를 획득할 수 있다. 다른 예를 들어, 제어 모듈(200)은 타겟 선박(191)의 선미와 안벽 사이의 거리인 선미 거리(194)를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 타겟 선박의 선미에 대응하는 하나의 포인트를 결정하고, 상기 선미에 대응하는 하나의 포인트와 안벽 사이의 거리를 획득할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 포인트를 추출할 수 있다. 여기서, 제어 모듈(200)은 상기 한 쌍의 포인트를 선수에 대응하는 하나의 포인트 및 선미에 대응하는 하나의 포인트로 결정할 수 있다. 예를 들어, 제어 모듈(200)은 선수 거리를 획득하기 위해 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 포인트 중 하나와 안벽 사이의 거리를 획득할 수 있다. 또한 제어 모듈(200)은 선미 거리를 획득하기 위해 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 포인트 중 다른 하나와 안벽 사이의 거리를 획득할 수 있다.
물론, 제어 모듈(200)은 타겟 선박(191)의 선수 및 선미에 대응하는 포인트들을 추출하여 선박의 선수 거리 및 선미 거리를 획득하는 대신 타겟 선박(191)의 임의의 1개의 포인트 또는 2개 이상의 포인트를 추출하여 선박과 안벽 사이의 거리를 획득하는 것도 가능하며, 영역의 외곽선, 또는 영역 자체에 기초하여 선박과 안벽 사이의 거리를 획득해도 무방하다.
일 실시예에 따르면, 제어 모듈(200)은 타겟 선박(191)이 안벽으로 접근하는 속도를 획득할 수 있다.
예를 들어, 제어 모듈(200)은 타겟 선박(191)의 선수가 안벽으로 접근하는 속도인 선수 속도를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 타겟 선박(191)의 선수에 대응하는 하나의 포인트를 결정하고, 상기 선수에 대응하는 하나의 포인트가 안벽으로 접근하는 속도를 획득할 수 있다. 여기서, 제어 모듈(200)은 타겟 선박(191)의 선수 거리(193)에 기초하여 타겟 선박(191)의 선수가 안벽으로 접근하는 속도를 획득할 수 있다. 제어 모듈(200)은 현재 프레임에서의 타겟 선박(191)의 선수 거리(193)와 후속 프레임에서의 타겟 선박(191)의 선수 거리를 비교하여 타겟 선박(191)의 선수가 안벽으로 접근하는 속도를 획득할 수 있다.
다른 예를 들어, 제어 모듈(200)은 타겟 선박(191)의 선미가 안벽으로 접근하는 속도인 선미 속도를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 타겟 선박(191)의 선미에 대응하는 하나의 포인트를 결정하고, 상기 선미에 대응하는 하나의 포인트가 안벽으로 접근하는 속도를 획득할 수 있다. 여기서, 제어 모듈(200)은 타겟 선박(191)의 선미 거리(194)에 기초하여 타겟 선박(191)의 선미가 안벽으로 접근하는 속도를 획득할 수 있다. 제어 모듈(200)은 현재 프레임에서의 타겟 선박(191)의 선미 거리(194)와 후속 프레임에서의 타겟 선박(191)의 선미 거리를 비교하여 타겟 선박(191)의 선미가 안벽으로 접근하는 속도를 획득할 수 있다.
물론, 제어 모듈(200)은 타겟 선박(191)의 선수 및 선미에 대응하는 포인트들을 추출하여 선박의 선수 속도 및 선미 속도를 획득하는 대신 타겟 선박(191)의 임의의 1개의 포인트 또는 2개 이상의 포인트를 추출하여 선박이 안벽으로 접근하는 속도를 획득하는 것도 가능하며, 영역의 외곽선, 또는 영역 자체에 기초하여 선박이 안벽으로 접근하는 속도를 획득해도 무방하다.
일 실시예에 따르면, 제어 모듈(200)은 타겟 선박(191)과 다른 선박(192) 사이의 거리를 획득할 수 있다.
예를 들어, 제어 모듈(200)은 타겟 선박(191)의 선수와 다른 선박(192) 사이의 거리를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 타겟 선박(191)의 선수에 대응하는 하나의 포인트를 결정하고, 상기 선수에 대응하는 하나의 포인트와 다른 선박(192) 사이의 거리를 획득할 수 있다.
다른 예를 들어, 제어 모듈(200)은 타겟 선박(191)의 선미와 다른 선박(192) 사이의 거리를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 타겟 선박(191)의 선미에 대응하는 하나의 포인트를 결정하고, 상기 선미에 대응하는 하나의 포인트와 안벽 사이의 거리를 획득할 수 있다.
일 실시예에 따르면, 제어 모듈(200)은 선박에 대응하는 영역에서 선수단부 및 선미단부에 대응하는 한 쌍의 포인트를 추출할 수 있다. 여기서, 제어 모듈(200)은 상기 한 쌍의 포인트를 선수에 대응하는 하나의 포인트 및 선미에 대응하는 하나의 포인트로 결정할 수 있다. 예를 들어, 제어 모듈(200)은 선박과 다른 선박 사이의 거리를 획득하기 위해 선박에 대응하는 영역에서 선수단부 및 선미단부에 대응하는 한 쌍의 포인트 중 하나와 다른 선박 사이의 거리를 획득할 수 있다. 여기서, 제어 모듈(200)은 선수단부 및 선미단부에 대응하는 한 쌍의 포인트 중 다른 선박과 더 가까운 포인트에 기초하여 다른 선박 사이의 거리를 획득할 수 있다.
물론, 제어 모듈(200)은 타겟 선박(191)의 선수 및 선미에 대응하는 포인트들을 추출하여 선박의 선수 및 선미와 다른 선박 사이의 거리를 획득하는 대신 타겟 선박(191)의 임의의 1개의 포인트 또는 2개 이상의 포인트를 추출하여 선박과 다른 선박 사이의 거리를 획득하는 것도 가능하며, 영역의 외곽선, 또는 영역 자체에 기초하여 선박과 다른 선박 사이의 거리를 획득해도 무방하다.
일 실시예에 따르면, 제어 모듈(200)은 타겟 선박(191)과 다른 선박(192) 사이의 상대 속도를 획득할 수 있다.
예를 들어, 제어 모듈(200)은 타겟 선박(191)의 선수가 다른 선박(192)으로 접근하는 속도를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 타겟 선박(191)의 선수에 대응하는 하나의 포인트를 결정하고, 상기 선수에 대응하는 하나의 포인트가 다른 선박(192)으로 접근하는 속도를 획득할 수 있다. 여기서, 제어 모듈(200)은 타겟 선박(191)의 선수와 다른 선박(192) 사이의 거리에 기초하여 타겟 선박(191)의 선수가 다른 선박(192)으로 접근하는 속도를 획득할 수 있다. 제어 모듈(200)은 현재 프레임에서의 타겟 선박(191)의 선수와 다른 선박(192) 사이의 거리와 후속 프레임에서의 타겟 선박(191)의 선수와 다른 선박(192) 사이의 거리를 비교하여 타겟 선박(191)의 선수가 다른 선박(192)으로 접근하는 속도를 획득할 수 있다.
다른 예를 들어, 제어 모듈(200)은 타겟 선박(191)의 선미가 다른 선박(192)으로 접근하는 속도를 획득할 수 있다. 구체적으로, 제어 모듈(200)은 타겟 선박(191)의 선미에 대응하는 하나의 포인트를 결정하고, 상기 선미에 대응하는 하나의 포인트가 다른 선박(192)으로 접근하는 속도를 획득할 수 있다. 여기서, 제어 모듈(200)은 타겟 선박(191)의 선미와 다른 선박(192) 사이의 거리에 기초하여 타겟 선박(191)의 선미가 다른 선박(192)으로 접근하는 속도를 획득할 수 있다. 제어 모듈(200)은 현재 프레임에서의 타겟 선박(191)의 선미와 다른 선박(192) 사이의 거리와 후속 프레임에서의 타겟 선박(191)의 선미와 다른 선박(192) 사이의 거리를 비교하여 타겟 선박(191)의 선미가 다른 선박(192)으로 접근하는 속도를 획득할 수 있다.
물론, 제어 모듈(200)은 타겟 선박(191)의 선수 및 선미에 대응하는 포인트들을 추출하여 선박의 선수 및 선미가 다른 선박(192)으로 접근하는 속도를 획득하는 대신 타겟 선박(191)의 임의의 1개의 포인트 또는 2개 이상의 포인트를 추출하여 타겟 선박(191)과 다른 선박(192) 사이의 상대 속도를 획득하는 것도 가능하며, 영역의 외곽선, 또는 영역 자체에 기초하여 타겟 선박(191)과 다른 선박(192) 사이의 상대 속도를 획득해도 무방하다.
도 23은 일 실시예에 따른 모니터링 정보 출력에 관한 순서도이다.
도 23을 참조하면, 접안 모니터링은 모니터링 정보를 출력하는 단계(S30)를 더 포함할 수 있다. 모니터링 정보 출력 단계에서 출력되는 정보는 선박 주변이나 해양, 항만의 이미지, 이미지에 포함된 오브젝트의 종류 및 거리/속도 등 그 특성과 같이 이미지 기반 모니터링에 관련된 정보라면 제한이 없다.
장치(10)는 시각적으로 모니터링 정보를 출력할 수 있다. 예를 들어, 장치(10)는 디스플레이 등의 출력 모듈을 통해 모니터링 정보를 출력할 수 있다. 다른 예를 들어, 장치(10)는 통신 모듈(300)을 통해 사용자의 단말기로 모니터링 정보를 송신하고, 사용자 단말기의 디스플레이를 통해 모니터링 정보를 출력하도록 제어 신호를 전송할 수 있다.
모니터링 정보 출력 단계(S30)는 이미지 획득 단계에서 이미지 생성 유닛을 이용하여 획득한 이미지를 디스플레이하는 것을 포함할 수 있다. 이 외에도 전처리 단계를 거친 이미지, 세그멘테이션 또는 디텍션 후의 이미지, 시점 변환 후의 이미지 등 이미지 기반 모니터링에 관련된 다양한 이미지를 디스플레이하는 것을 포함할 수 있다.
또한, 모니터링 정보 출력 단계(S30)는 제어 모듈(200)이 이미지 분석 단계에서 추정한 위치/이동 정보를 출력 모듈 또는 사용자 단말기를 통해 디스플레이하는 것을 포함할 수 있다.
도 24는 일 실시예에 따른 모니터링 정보 출력의 일 예에 관한 도면이다.
도 24를 참고하면, 이미지와 접안 가이드 정보는 함께 디스플레이 될 수 있다. 도 24에 도시된 바와 같이, 디스플레이되는 접안 가이드 정보는 타겟 선박의 선수 거리, 선수 속도, 선미 거리 및 선미 속도 등을 포함할 수 있다.
모니터링 정보 출력 단계(S30)는 장치(10)가 시각적인 디스플레이 외에 소리나 진동을 출력하는 등 다른 방식으로 사용자에게 정보를 제공하는 것을 포함할 수 있다. 예를 들어, 제어 모듈(200)은 타겟 선박이 안벽이나 다른 선박, 장애물 등과 충돌할 위험이 있거나 접안 시 안벽으로의 접근 속도가 기준 속도 이상인 경우, 선박이 경로를 이탈하여 운항하는 경우 등 경고음을 출력 모듈 또는 사용자 단말기를 통해 출력할 수 있다.
이미지 기반 모니터링은 서베일런스(surveillance)를 포함할 수 있다. 여기서, 서베일런스란 침입자를 감시하거나 등록되지 않은 선박의 항만 접근을 감시하는 등의 보안 관련 정보 및 화재 발생 등 긴급 상황 발생에 대한 정보를 사용자에게 제공하는 것을 의미할 수 있다.
장치(10)는 이미지에 사람이 포함되었는지 여부 및 이미지가 촬상된 시점에 기초하여 침입자를 감시할 수 있다. 예를 들어, 제어 모듈(200)은 항만에서 작업이 진행되지 않는 시점에 촬상된 항만 이미지에 사람이 포함되는 경우 침입자가 존재하는 것으로 판단할 수 있다.
장치(10)는 이미지에 선박이 포함되었는지 여부에 기초하여 선박 감시를 할 수 있다. 예를 들어, 제어 모듈(200)은 AIS에 등록되지 않은 선박이 감지되는 경우 이에 대한 정보를 사용자에게 제공하는 방식으로 선박 감시를 할 수 있다.
또한, 장치(10)는 세그멘테이션이나 디텍션을 통해 이미지에 기초하여 사람이나 선박을 감지함으로써 서베일런스를 수행할 수도 있다.
도 25 내지 도 27은 일 실시예에 따른 모니터링 정보 출력의 다른 예에 관한 도면이다.
도 25와 도 26을 참고하면, 이미지와 접안 가이드 정보는 함께 디스플레이 될 수 있고, 타겟 선박이 복수인 경우 복수의 접안 가이드 정보가 출력될 수 있다.
도 25에 도시된 바와 같이, 접안 가이드 정보가 출력되는 위치는 이미지 상의 타겟 선박의 위치와 대응될 수 있다. 예를 들어, 좌측 타겟 선박의 접안 가이드 정보는 좌측에, 우측 타겟 선박의 접안 가이드 정보는 우측에 디스플레이될 수 있다.
또한, 도 26에 도시된 바와 같이, 접안 가이드 정보는 타겟 선박의 식별자와 함께 출력될 수 있다. 예를 들어, 이미지 상의 좌측 타겟 선박에 '선박 1', 이미지 상의 우측 타겟 선박에 '선박 2'이라는 임의의 식별자를 각각 부여하고 부여된 식별자와 각 타겟 선박의 접안 가이드 정보가 함께 출력될 수 있다. 또한, 부여된 식별자와 접안 가이드 정보는 이미지 상의 타겟 선박 주변에 표시될 수도 있다.
또한 도 27을 참고하면, 이미지와 접안 가이드 정보는 함께 디스플레이 될 수 있고, 선박이 복수인 경우 타겟 선박이 하나로만 결정되면 타겟 선박의 접안 가이드 정보만 출력될 수 있다. 예를 들어, 타겟 선박이 접안이 진행되는 중인 좌측 선박으로 결정된 경우, 타겟 선박으로 결정된 좌측 선박의 접안 가이드 정보만 화면에 출력될 수 있다.
이상에서는 단일 이미지에 기초한 이미지 기반 모니터링에 대해 살펴보았다. 이 외에도 복수의 이미지에 기초하여 이미지 기반 모니터링을 수행할 수 있다. 복수에 이미지에 기초하여 이미지 분석을 수행하는 경우 이미지 기반 모니터링 장치(10)의 총 모니터링 영역이 증가하거나 모니터링의 정확도가 향상될 수 있다.
도 28은 일 실시예에 따른 복수의 이미지에 기초한 이미지 기반 모니터링에 관한 도면이다.
도 28을 참고하면, 이미지 획득 단계는 제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 이미지는 우측을 모니터링할 수 있다.
또한, 장치(10)는 복수의 이미지 분석으로 획득한 모니터링 정보를 적합한 이미지와 함께 출력할 수 있다.
장치(10)는 복수의 이미지 분석으로 획득한 모니터링 정보를 복수의 이미지 중 타겟 선박이 포함된 이미지와 함께 출력할 수 있다. 예를 들어, 제어 모듈(200)은 적어도 일부가 다른 영역의 이미지를 촬상하는 복수의 카메라에 의해 획득한 복수의 이미지를 이미지 분석한 후, 출력 모듈 또는 사용자 단말기를 통해 복수의 이미지 중 타겟 선박이 찍힌 제1 이미지가 제1 이미지에서 산출된 제1 접안 가이드 정보와 함께 출력할 수 있다.
도 29 및 도 30은 일 실시예에 따른 모니터링 정보 출력의 다른 예에 관한 도면이다.
도 29와 도 30을 참고하면, 복수의 이미지 분석 후 타겟 선박이 결정되는 경우, 타겟 선박의 접안 가이드 정보는 복수의 이미지 중 타겟 선박이 포함된 이미지와 함께 디스플레이될 수 있다. 예를 들어, 타겟 선박이 '선박 1'로 결정된 경우 '선박 1'의 접안 가이드 정보는 '선박 1'이 포함된 선석의 이미지와 함께 디스플레이될 수 있다. 또한, 타겟 선박이 '선박 3'으로 결정된 경우 '선박 3'의 접안 가이드 정보는 '선박 3'이 포함된 선석의 이미지와 함께 디스플레이될 수 있다.
장치(10)는 복수의 이미지 분석으로 획득한 모니터링 정보를 복수의 이미지 중 선박의 도착지 이미지와 함께 출력할 수 있다. 예를 들어, 제어 모듈(200)은 적어도 일부가 중첩되는 영역의 이미지를 촬상하는 복수의 카메라에 의해 획득한 복수의 이미지를 이미지 분석한 후, 타겟 선박이 복수의 이미지에 함께 찍힌 경우 복수의 이미지 중 타겟 선박의 항해 정보에 따른 도착지에 설치된 카메라를 이용하여 획득된 이미지와 상기 이미지에서 산출된 접안 가이드 정보가 함께 출력되도록 제어 신호를 생성할 수 있다.
도 31 및 도 32는 일 실시예에 따른 모니터링 정보 출력의 다른 예에 관한 도면이다.
도 31 및 도 32는 적어도 일부가 중첩되는 영역의 이미지를 촬상하는 복수의 카메라에 의해 획득된 서로 인접한 각각의 선석의 이미지인 제1 이미지 및 제2 이미지와 함께 접안 가이드 정보가 디스플레이된 것을 나타낸다.
도 31 및 도 32를 참고하면, 선박(252)은 동일한 시점에 두 개의 이미지 상에 함께 찍혀있다. 선박(252)의 도착지가 제1 이미지의 선석이 아니고 제2 이미지의 선석인 경우, 다른 곳을 향해 지나가는 선박(252)의 접안 가이드 정보를 제2 이미지가 아닌 제1 이미지와 함께 출력하는 것은 바람직하지 않을 수 있다. 도 31과 같이, 제1 이미지는 항해 정보에 따라 제1 이미지의 선석이 도착지인 선박(251)의 접안 가이드 정보와 함께 출력되는 것이 바람직하다. 또한, 도 32와 같이, 항해 정보에 따라 제2 이미지의 선석이 도착지인 선박(252)의 접안 가이드 정보는 제2 이미지와 함께 출력되는 것이 바람직하다.
물론, 복수의 이미지 분석으로 획득한 모니터링 정보는 복수의 이미지 중 임의의 이미지와 함께 출력되어도 무방하며, 상술한 기재에 한정되지 않는다.
이미지 기반 모니터링은 시점 변환 단계를 더 포함할 수 있다.
일반적으로 카메라 등 이미지 생성 유닛이 생성하는 이미지는 원근 시점(perspective view)로 나타날 수 있다. 이를 탑 뷰(top view, 평면 시점), 측면 시점(side view), 다른 원근 시점 등으로 변환하는 것을 시점 변환이라 할 수 있다. 물론, 탑 뷰나 측면 시점 이미지를 다른 시점으로 변환할 수도 있으며, 이미지 생성 유닛이 탑 뷰 이미지나 측면 시점 이미지 등을 생성할 수도 있고 이 경우 시점 변환이 수행될 필요가 없을 수도 있다.
도 33 및 도 34는 일 실시예에 따른 시점 변환에 관한 도면이다.
도 33을 참고하면, 원근 시점 이미지의 시점 변환을 통해 다른 원근 시점 이미지를 획득할 수 있다. 여기서, 안벽(OBJ8)이 이미지 상에서 수평 방향(이미지 상에서 좌우 방향)을 따라 위치하도록 시점 변환을 수행할 수 있다. 도 34를 참고하면, 원근 시점 이미지의 시점 변환을 통해 탑 뷰 이미지를 획득할 수 있다. 여기서, 탑 뷰 이미지는 해수면과 수직한 방향에서 해수면을 내려다 본 뷰일 수 있다. 또한, 도 33과 마찬가지로 안벽(OBJ9)이 이미지 상에서 수평 방향을 따라 위치하도록 시점 변환을 수행할 수 있다.
이미지 획득 후 시점 변환을 수행한 뒤에 선박의 접안 가이드에 필요한 정보를 획득하기 위한 이미지 분석을 할 수 있다. 일 예에 따르면, 접안 가이드 정보의 획득은 시점이 변환된 세그멘테이션된 이미지에 기초하여 수행될 수 있다. 구체적으로, 원근 시점의 세그멘테이션 이미지를 탑 뷰 세그멘테이션 이미지로 시점을 변환하고, 탑 뷰 세그멘테이션된 이미지 중 픽셀의 클래스 값이 선박에 해당하는 영역에 기초하여 선박의 접안 가이드 정보를 획득할 수 있다. 물론, 시점 변환된 세그멘테이션이미지는 탑 뷰가 아니라 측면 시점 등 다양한 시점으로 시점이 변환된 세그멘테이션 이미지여도 무방하며, 뿐만 아니라 2개의 포인트를 추출하여 선박의 위치/이동 정보를 획득하는 대신 영역의 외곽선, 또는 영역 자체에 기초하여 선박의 위치/이동 정보를 획득하여도 무방하다.
물론, 반드시 그러한 것은 아니며, 시점이 변환된 촬영 영상 등의 이미지에 기초하여 수행되는 것도 가능하다.
또한 이미지 획득 후 시점 변환을 수행한 뒤에 사용자에게 이미지를 디스플레이하는 등 모니터링 정보를 출력할 수 있다. 이 경우 시점 변환을 통해 사용자에게 주변 상황에 대한 정보를 보다 용이하게 제공할 수 있다.
이미지의 시점 변환은 다양한 방식으로 수행될 수 있다.
시점 변환의 일 예로 역투영 변환(Inverse Projective Mapping, IPM)을 수행할 수 있다. 2차원 이미지는 3차원 공간 상의 피사체에서 반사된 빛이 카메라의 렌즈를 통해 이미지 센서에 입사되어 생성되고, 2차원과 3차원의 관계는 이미지 센서와 렌즈에 의존하며, 예를 들어 수학식 1과 같이 표현될 수 있다.
여기서, 좌변의 행렬은 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의 행렬, 파라미터, 좌표, 위치 및/또는 자세에 대한 정보 등 시점 변환을 위해 필요한 정보를 포함한다.
이미지 기반 모니터링은 전처리(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 등의 인공 신경망을 통해 이미지 마스크를 생성할 수도 있지만 이에 한정되는 것은 아니다.
이상에서는 이미지를 전처리한 후에 이미지 분석을 수행하는 경우에 대해 살펴보았다. 이와 달리, 전처리 과정을 포함한 이미지 분석 수행이 가능할 수도 있다. 예를 들어, 이미지 분석 단계가 세그멘테이션 또는 디텍션을 포함하는 경우, 노이즈를 포함하는 이미지의 세그멘테이션 또는 디텍션 수행 결과가 노이즈를 포함하지 않는 이미지의 세그멘테이션 또는 디텍션 수행 결과와 동등하도록 구현할 수도 있을 것이다.
도 35는 일 실시예에 따른 이미지 기반 모니터링의 순서도이다.
도 35를 참고하면, 접안 모니터링은 이미지 획득 단계(S1010), 세그멘테이션 단계(S1210), 선박 트래킹 단계(S1213), 트래킹 정보 획득 단계(S1216), 타겟 선박 결정 단계(S1219), 접안 가이드 정보 획득 단계(S1220) 및 모니터링 정보 출력 단계(S1030)를 포함할 수 있다. 각 단계는 상술한 바와 같이 구현될 수 있다.
장치(10)는 이미지 획득 단계(S1010)를 통해 오브젝트를 포함하는 이미지를 획득할 수 있다. 장치(10)는 이미지에 기초하여 세그멘테이션 단계(S1210)를 수행하여 세그멘테이션 이미지를 획득할 수 있다. 장치(10)는 선박 트래킹 단계(S1213)를 수행하여 세그멘테이션 이미지에 기초하여 인식한 적어도 하나의 선박을 트래킹할 수 있다. 장치(10)는 트래킹 정보 획득 단계(S1216)를 수행하여 트래킹 정보를 획득할 수 있다. 여기서, 트래킹 정보는 선박의 위치 정보, 선박의 이동 정보, 선박의 항해 정보 및 사용자 입력 정보 중 적어도 하나를 포함할 수 있다. 장치(10)는 타겟 선박 결정 단계(S1219)를 수행하여, 획득한 트래킹 정보에 기초하여 트래킹되는 선박 중 타겟 선박을 결정할 수 있다. 장치(10)는 접안 가이드 정보 획득 단계(S1220)를 수행하여, 결정된 타겟 선박의 접안 가이드 정보를 세그멘테이션 이미지에 기초하여 획득할 수 있다. 여기서, 접안 가이드 정보는 타겟 선박의 선수 거리와 선미 거리 중 적어도 하나를 포함할 수 있다. 장치(10)는 모니터링 정보 출력 단계(S1030)를 수행하여, 접안 가이드 정보를 상기 이미지와 함께 출력할 수 있다.
도 35의 실시예는 예시에 불과하고 이와 다른 방법으로 이미지 기반 모니터링이 수행될 수 있다.
일 예로, 도 35의 실시예에서 일부 단계가 수행되지 않을 수 있다. 도 35를 참고하면, 모니터링 정보를 출력하는 단계(S1030)가 수행되지 않을 수 있다.
다른 예로, 이미지가 정합되는 단계가 추가되거나 이미지의 시점 변환 단계가 추가되는 등 도 35의 실시예에서 다른 단계가 추가될 수 있다.
또 다른 예로, 세그멘테이션 단계가 디텍션 단계로 치환되는 등 도 35의 실시예에서 일부 단계가 다른 단계로 치환될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
상기에서는 실시예를 기준으로 본 발명의 구성과 특징을 설명하였으나 본 발명은 이에 한정되지 않으며, 본 발명의 사상과 범위 내에서 다양하게 변경 또는 변형할 수 있음은 본 발명이 속하는 기술 분야의 당업자에게 명백한 것이며, 따라서 이와 같은 변경 또는 변형은 첨부된 특허청구범위에 속함을 밝혀둔다.
10: 모니터링 장치
100: 센서 모듈
110: 통신부
120: 제어부
130: 카메라
200: 제어 모듈
210: 통신부
220: 제어부
300: 통신 모듈
100: 센서 모듈
110: 통신부
120: 제어부
130: 카메라
200: 제어 모듈
210: 통신부
220: 제어부
300: 통신 모듈
Claims (19)
- 컴퓨팅 수단에 의해 수행되는 선박 모니터링 방법에 있어서,
항만에 설치되어 이미지를 촬상하는 카메라를 이용하여 항만 이미지를 획득하는 단계;
입력 이미지 및 상기 입력 이미지에 포함된 바다, 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 상기 항만 이미지로부터 상기 오브젝트들에 대한 세그멘테이션 이미지를 생성하는 단계;
복수의 선박의 VTS 정보 및 AIS 정보 중 적어도 하나를 획득하는 단계;
상기 VTS 정보 및 AIS 정보 중 적어도 하나를 이용하여 상기 복수의 선박 각각의 도착지 및 접안 예정 시간을 포함하는 항해 정보를 획득하는 단계;
상기 복수의 선박 중 상기 도착지가 상기 카메라가 설치된 선석인 적어도 하나의 선박을 식별하는 단계;
상기 식별된 적어도 하나의 선박 중 상기 접안 예정 시간에 기초하여 타겟 선박을 결정하는 단계; 및
상기 세그멘테이션 이미지에 기초하여 상기 타겟 선박의 선수와 안벽(pier) 사이의 거리인 선수 거리 및 상기 타겟 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 가이드 정보를 획득하는 단계;를 포함하는,
선박 모니터링 방법. - 삭제
- 삭제
- 제1항에 있어서,
상기 타겟 선박을 결정하는 단계는,
상기 식별된 적어도 하나의 선박 중 상기 접안 예정 시간에 상기 세그멘테이션 이미지를 통해 식별된 선박을 타겟 선박으로 결정하는 단계;를 포함하는,
선박 모니터링 방법. - 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 제1항에 있어서,
상기 선수 거리 및 상기 선미 거리는,
상기 타겟 선박이 해수면과 접하는 밑면의 양 단부에 대응하는 한 쌍의 포인트에 기초하여 획득되는,
선박 모니터링 방법. - 제1항에 있어서,
상기 가이드 정보는,
상기 선수 거리 및 상기 선미 거리에 기초하여 획득된, 상기 타겟 선박의 선수가 상기 안벽으로 접근하는 속도인 선수 속도 및 상기 타겟 선박의 선미가 상기 안벽으로 접근하는 속도인 선미 속도를 포함하는,
선박 모니터링 방법. - 제1항에 있어서,
상기 가이드 정보는,
상기 세그멘테이션 이미지에 기초하여 획득된 상기 타겟 선박과 다른 선박 사이의 거리를 포함하는,
선박 모니터링 방법. - 제13항에 있어서,
상기 가이드 정보는,
상기 타겟 선박과 상기 다른 선박 사이의 상기 거리에 기초하여 획득된 상기 타겟 선박과 상기 다른 선박 사이의 상대 속도를 포함하는,
선박 모니터링 방법. - 제1항에 있어서,
상기 인공 신경망은,
입력 이미지 및 상기 입력 이미지에 포함된 바다, 예인선, 예인선을 제외한 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 예인선, 예인선이 제외된 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습되는,
선박 모니터링 방법. - 제1항에 있어서,
상기 가이드 정보를 상기 항만 이미지와 함께 출력하는 단계;를 더 포함하는,
선박 모니터링 방법. - 제1항에 있어서,
상기 항만 이미지는,
복수의 항만 이미지가 정합된 파노라마 이미지를 포함하는,
선박 모니터링 방법. - 제1항, 제4항, 제11항 내지 제17항 중 어느 하나의 항에 따른 방법을 실행시키기 위한 프로그램을 기록한,
기록 매체. - 항만에 설치되어 이미지를 촬상하는 카메라;
상기 카메라가 촬상한 항만 이미지를 획득하고, 입력 이미지 및 상기 입력 이미지에 포함된 바다, 선박 및 지형지물을 포함하는 오브젝트들에 해당하는 픽셀에 각각 바다, 선박 및 지형지물을 지시하는 클래스 값들을 라벨링한 러닝셋을 이용하여 학습된 인공 신경망을 이용하여 상기 항만 이미지로부터 상기 오브젝트들에 대한 세그멘테이션 이미지를 생성하고, 복수의 선박의 VTS 정보 및 AIS 정보 중 적어도 하나를 획득하고, 상기 VTS 정보 및 AIS 정보 중 적어도 하나를 이용하여 상기 복수의 선박 각각의 도착지 및 접안 예정 시간을 포함하는 항해 정보를 획득하고, 상기 복수의 선박 중 상기 도착지가 상기 카메라가 설치된 선석인 적어도 하나의 선박을 식별하고, 상기 식별된 적어도 하나의 선박 중 상기 접안 예정 시간에 기초하여 타겟 선박을 결정하고, 상기 세그멘테이션 이미지에 기초하여 상기 타겟 선박의 선수와 안벽(pier) 사이의 거리인 선수 거리 및 상기 타겟 선박의 선미와 안벽 사이의 거리인 선미 거리를 포함하는 가이드 정보를 획득하는 제어 모듈; 및
상기 가이드 정보를 원격 위치한 단말기에 전송하는 통신 모듈;을 포함하는,
선박 모니터링 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230058018A KR102623124B1 (ko) | 2020-01-09 | 2023-05-03 | 접안 모니터링 장치 및 방법 |
KR1020240001824A KR102661363B1 (ko) | 2020-01-09 | 2024-01-05 | 접안 모니터링 장치 및 방법 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200003191A KR102235787B1 (ko) | 2020-01-09 | 2020-01-09 | 접안 모니터링 장치 및 방법 |
KR1020210040733A KR102530691B1 (ko) | 2020-01-09 | 2021-03-29 | 접안 모니터링 장치 및 방법 |
KR1020230058018A KR102623124B1 (ko) | 2020-01-09 | 2023-05-03 | 접안 모니터링 장치 및 방법 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210040733A Division KR102530691B1 (ko) | 2020-01-09 | 2021-03-29 | 접안 모니터링 장치 및 방법 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020240001824A Division KR102661363B1 (ko) | 2020-01-09 | 2024-01-05 | 접안 모니터링 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20230065968A KR20230065968A (ko) | 2023-05-12 |
KR102623124B1 true KR102623124B1 (ko) | 2024-01-11 |
Family
ID=75461730
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200003191A KR102235787B1 (ko) | 2020-01-09 | 2020-01-09 | 접안 모니터링 장치 및 방법 |
KR1020210040733A KR102530691B1 (ko) | 2020-01-09 | 2021-03-29 | 접안 모니터링 장치 및 방법 |
KR1020230058018A KR102623124B1 (ko) | 2020-01-09 | 2023-05-03 | 접안 모니터링 장치 및 방법 |
KR1020240001824A KR102661363B1 (ko) | 2020-01-09 | 2024-01-05 | 접안 모니터링 장치 및 방법 |
KR1020240054011A KR20240066137A (ko) | 2020-01-09 | 2024-04-23 | 접안 모니터링 장치 및 방법 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200003191A KR102235787B1 (ko) | 2020-01-09 | 2020-01-09 | 접안 모니터링 장치 및 방법 |
KR1020210040733A KR102530691B1 (ko) | 2020-01-09 | 2021-03-29 | 접안 모니터링 장치 및 방법 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020240001824A KR102661363B1 (ko) | 2020-01-09 | 2024-01-05 | 접안 모니터링 장치 및 방법 |
KR1020240054011A KR20240066137A (ko) | 2020-01-09 | 2024-04-23 | 접안 모니터링 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (5) | KR102235787B1 (ko) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113240198A (zh) * | 2021-06-07 | 2021-08-10 | 兰州大学 | 一种基于tcn模型的港口船舶轨迹预测方法 |
KR20230013334A (ko) | 2021-07-19 | 2023-01-26 | 삼성중공업 주식회사 | 선박 계류를 위한 최적 안벽 선정 장치 및 방법 |
KR20230013333A (ko) | 2021-07-19 | 2023-01-26 | 삼성중공업 주식회사 | 해양 구조물의 작업에 관한 안벽 적합성 평가 장치 및 방법 |
KR102640795B1 (ko) * | 2021-08-10 | 2024-02-27 | 한화오션 주식회사 | 레이더 기반 선박의 이/접안 지원 시스템 및 방법, 동 방법을 컴퓨터에서 실행하기 위한 컴퓨터 프로그램이 기록된, 컴퓨터 판독 가능한 기록 매체 |
KR20230031475A (ko) | 2021-08-27 | 2023-03-07 | 삼성중공업 주식회사 | 조선소에서 해양 구조물의 계류 관리 장치 및 방법 |
KR102495879B1 (ko) * | 2021-10-08 | 2023-02-06 | 재단법인한국조선해양기자재연구원 | 라이다를 이용한 선박 제어 시스템 |
CN114037917A (zh) * | 2021-11-08 | 2022-02-11 | 北京中星天视科技有限公司 | 船舶识别方法、装置、电子设备和计算机可读介质 |
KR102595569B1 (ko) | 2021-11-11 | 2023-10-30 | (주)지씨 | 클라우드 컴퓨팅 기술을 이용한 통합 해상 교통관제 시스템 및 그 방법 |
WO2023193923A1 (en) * | 2022-04-07 | 2023-10-12 | Saab Technologies B.V. | Maritime traffic management |
CN116188519B (zh) * | 2023-02-07 | 2023-10-03 | 中国人民解放军海军航空大学 | 一种基于视频卫星的舰船目标运动状态估计方法及系统 |
CN116767424B (zh) * | 2023-06-08 | 2023-12-15 | 交通运输部水运科学研究所 | 一种无人机协同辅助船舶靠泊方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102005559B1 (ko) * | 2018-09-04 | 2019-08-07 | 씨드로닉스(주) | 이미지 세그멘테이션을 이용한 주변 환경 감지 방법 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110059206A (ko) * | 2009-11-27 | 2011-06-02 | 김영복 | 터그보트를 이용한 접안선박 유도시스템 |
KR101683274B1 (ko) * | 2014-11-24 | 2016-12-06 | (주)세이프텍리서치 | 무인항공기를 이용한 선박 접안 지원 시스템 및 그 방법 |
KR101941521B1 (ko) * | 2016-12-07 | 2019-01-23 | 한국해양과학기술원 | 해상객체의 자동추적 시스템 및 방법 |
-
2020
- 2020-01-09 KR KR1020200003191A patent/KR102235787B1/ko active IP Right Grant
-
2021
- 2021-03-29 KR KR1020210040733A patent/KR102530691B1/ko active IP Right Grant
-
2023
- 2023-05-03 KR KR1020230058018A patent/KR102623124B1/ko active IP Right Grant
-
2024
- 2024-01-05 KR KR1020240001824A patent/KR102661363B1/ko active IP Right Grant
- 2024-04-23 KR KR1020240054011A patent/KR20240066137A/ko not_active Application Discontinuation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102005559B1 (ko) * | 2018-09-04 | 2019-08-07 | 씨드로닉스(주) | 이미지 세그멘테이션을 이용한 주변 환경 감지 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20240066137A (ko) | 2024-05-14 |
KR20210090572A (ko) | 2021-07-20 |
KR20240008965A (ko) | 2024-01-19 |
KR102235787B1 (ko) | 2021-04-05 |
KR20230065968A (ko) | 2023-05-12 |
KR102661363B1 (ko) | 2024-04-29 |
KR102530691B1 (ko) | 2023-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102688958B1 (ko) | 항만 모니터링 장치 및 항만 모니터링 방법 | |
KR102623124B1 (ko) | 접안 모니터링 장치 및 방법 | |
KR102112935B1 (ko) | 장애물 지도를 이용한 경로 생성 방법 | |
KR102265980B1 (ko) | 선박 및 항만 모니터링 장치 및 방법 | |
EP4089660A1 (en) | Method and device for monitoring port and ship in consideration of sea level | |
KR102645492B1 (ko) | 선박 및 항만 모니터링 장치 및 방법 | |
KR102530847B1 (ko) | 항만 및 선박 모니터링 방법 및 장치 | |
KR102466804B1 (ko) | 이미지 세그멘테이션을 이용한 자율 운항 방법 | |
KR102520844B1 (ko) | 해수면을 고려한 항만 및 선박 모니터링 방법 및 장치 | |
US20220004761A1 (en) | System and method for identifying an object in water | |
Petković et al. | Target detection for visual collision avoidance system | |
KR20240108297A (ko) | 복수의 센서들을 이용하여 객체의 정보를 획득하는 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |