KR102311089B1 - Apparatus and method for monitoring the ocean using smart marine buoys - Google Patents
Apparatus and method for monitoring the ocean using smart marine buoys Download PDFInfo
- Publication number
- KR102311089B1 KR102311089B1 KR1020210072360A KR20210072360A KR102311089B1 KR 102311089 B1 KR102311089 B1 KR 102311089B1 KR 1020210072360 A KR1020210072360 A KR 1020210072360A KR 20210072360 A KR20210072360 A KR 20210072360A KR 102311089 B1 KR102311089 B1 KR 102311089B1
- Authority
- KR
- South Korea
- Prior art keywords
- area
- ship
- box
- model
- boxes
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B63—SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
- B63B—SHIPS OR OTHER WATERBORNE VESSELS; EQUIPMENT FOR SHIPPING
- B63B22/00—Buoys
- B63B22/16—Buoys specially adapted for marking a navigational route
-
- G06K9/00711—
-
- G06K9/00771—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B63—SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
- B63B—SHIPS OR OTHER WATERBORNE VESSELS; EQUIPMENT FOR SHIPPING
- B63B22/00—Buoys
- B63B2022/006—Buoys specially adapted for measuring or watch purposes
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Medical Informatics (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Mechanical Engineering (AREA)
- Ocean & Marine Engineering (AREA)
- Image Analysis (AREA)
Abstract
Description
본 발명은 해양 모니터링 기술에 관한 것으로, 보다 상세하게는, 스마트 해상부이를 이용한 해양을 모니터링하기 위한 장치 및 이를 위한 방법에 관한 것이다. The present invention relates to an ocean monitoring technology, and more particularly, to an apparatus for monitoring the ocean using a smart marine buoy, and a method therefor.
기존 부표는 항만이나 하천 등 선박이 항행하는 위치 수면에 띄워 항로 안내, 암초의 위치 등을 알리는 표지판이다. 부표의 용도는 단순히 안전 항해를 돕는 수단뿐만 아니라 각종 해양 기후관측 센서를 부착하여 해양 기후 환경 데이터를 수집하는 수단으로도 사용된다. Existing buoys are signs that inform the location of reefs and route guidance by floating on the water surface where ships navigate, such as harbors or rivers. The purpose of the buoy is not only as a means to help safe navigation, but also as a means to collect marine climate environment data by attaching various marine climate sensors.
본 발명의 목적은 스마트 해상부이를 이용한 해양을 모니터링하기 위한 장치 및 이를 위한 방법을 제공함에 있다. An object of the present invention is to provide an apparatus for monitoring the ocean using a smart marine buoy and a method therefor.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 해양을 모니터링하기 위한 방법은 통신모듈이 해상부이의 사방을 촬영한 영상인 360도 영상을 수신하는 단계와, 선박검출부가 심층학습모델인 선박검출모델을 통해 상기 360도 영상 내에서 선박을 검출하는 단계와, 관제부가 상기 검출된 선박이 차지하는 영역을 나타내는 영역상자가 상기 360도 영상에서 차지하는 비율에 따라 위험도를 산출하는 단계를 포함한다. The method for monitoring the ocean according to a preferred embodiment of the present invention for achieving the object as described above includes the steps of: receiving, by a communication module, a 360-degree image that is an image photographed from all directions of the marine buoy; Detecting a ship in the 360-degree image through a ship detection model, which is a model, and calculating the risk according to the ratio of the area box representing the area occupied by the detected ship by the control unit in the 360-degree image. do.
상기 위험도를 산출하는 단계는 상기 관제부가 상기 360도 영상을 복수의 구역으로 구분하고, 구분된 복수의 구역 중 상기 영역상자의 적어도 일부가 포함된 구역의 비율을 위험도로 산출하는 것을 특징으로 한다. Calculating the degree of risk is characterized in that the control unit divides the 360-degree image into a plurality of zones, and calculates a risk of a ratio of a zone including at least a part of the area box among the divided plurality of zones.
상기 방법은 상기 360도 영상을 수신하는 단계 전, 모델생성부가 선박학습영상을 마련하는 단계와, 상기 모델생성부가 상기 선박학습영상에 포함된 객체가 선박이며, 선박이 차지하는 영역을 나타내는 영역상자 및 영역상자의 신뢰도를 포함하는 레이블을 부여하는 단계와, 상기 모델생성부가 상기 선박학습영상을 초기화된 선박검출모델에 입력하는 단계와, 상기 모델생성부가 상기 초기화된 선박검출모델이 선박이 차지하는 영역을 나타내는 영역상자, 영역상자의 객체가 선박일 확률 및 영역상자의 신뢰도를 포함하는 후보값을 산출하면, 손실함수에 따라 상기 후보값과 상기 레이블의 차이를 나타내는 손실을 산출하는 단계와, 상기 모델생성부가 상기 후보값과 상기 레이블의 차이가 최소화되도록 상기 선박검출모델의 가중치를 수정하는 최적화를 수행하는 단계를 더 포함한다. The method includes, before receiving the 360-degree image, a model generating unit providing a vessel learning image, and an object included in the vessel learning image by the model generating unit is a vessel, an area box indicating an area occupied by the vessel, and Giving a label including the reliability of the area box, the model generation unit inputting the vessel learning image to an initialized vessel detection model, and the model generation unit determining the area occupied by the vessel by the initialized vessel detection model by the model generation unit If a candidate value including the area box represented, the probability that the object of the area box is a ship, and the reliability of the area box is calculated, calculating a loss representing the difference between the candidate value and the label according to a loss function; The method further includes performing optimization of modifying the weight of the ship detection model so that the difference between the candidate value and the label is minimized.
상기 모델생성부는 손실함수 에 따라 손실을 산출하고, 상기 S는 셀의 수이고, 상기 B는 한 셀 내의 영역상자의 수이고, 상기 dx, dy는 영역상자의 중심좌표이고, 상기 w는 영역상자의 폭이고, 상기 h는 영역상자의 높이이고, 상기 C는 신뢰도이고, 상기 pi(c)는 i 번째 셀의 객체가 선박일 확률이고, 상기 i는 객체가 존재하는 셀을 나타내는 인덱스이고, 상기 j는 예측된 영역상자를 나타내는 인덱스이고, 상기 및 상기 는 하이퍼파라미터이고, 상기 는 셀에 객체가 있는 경우를 나타내고, 상기 는 셀 i에 있는 영역상자 j를 나타내는 것을 특징으로 한다. The model generator is a loss function Calculate the loss according to , where S is the number of cells, B is the number of area boxes in one cell, dx and dy are the center coordinates of the area box, w is the width of the area box, and h is the height of the area box, C is the reliability, pi(c) is the probability that the object of the i-th cell is a ship, i is the index indicating the cell in which the object exists, and j is the predicted area box is an index indicating and said is a hyperparameter, and indicates when there is an object in the cell, and is characterized as representing the area box j in cell i.
상기 선박을 검출하는 단계는 상기 선박검출모델이 상기 360도 영상을 복수의 셀로 구분하는 단계와, 상기 선박검출모델이 상기 복수의 셀 각각에 중심 좌표를 가지는 복수의 영역상자를 검출하고, 상기 검출된 복수의 영역상자 각각에 대해 영역상자 내에 객체가 존재할 확률을 나타내는 신뢰도와, 상기 검출된 복수의 영역상자 각각에 대해 영역상자 내의 객체가 선박일 확률을 후보값으로 산출하는 단계를 포함한다. The detecting of the ship may include: the ship detection model divides the 360-degree image into a plurality of cells; the ship detection model detects a plurality of area boxes having center coordinates in each of the plurality of cells, and the detection and calculating, as candidate values, a reliability indicating the probability that an object exists in the area box for each of the plurality of area boxes and a probability that the object in the area box is a ship for each of the detected plurality of area boxes.
상기 선박을 검출하는 단계는 상기 후보값으로 산출하는 단계 후, 상기 선박검출부가 상기 후보값에 포함된 복수의 영역상자 중 신뢰도가 제1 임계치 이상이고, 영역상자 내의 객체가 선박일 확률이 제2 임계치 이상인 영역상자를 검출하는 단계를 더 포함한다. In the detecting of the vessel, after calculating the candidate value, the vessel detecting unit has a reliability greater than or equal to a first threshold among a plurality of area boxes included in the candidate value, and the probability that an object in the area box is a ship is a second The method further includes detecting an area box greater than or equal to a threshold.
상기 선박을 검출하는 단계는 상기 후보값으로 산출하는 단계 후, 상기 후보값에 포함된 복수의 영역상자 중 신뢰도가 제1 임계치 이상이면서, 영역상자 내의 객체가 선박일 확률이 제2 임계치 이상인 영역상자가 복수이고, 복수의 영역상자가 차지하는 영역이 중첩된 경우, 복수의 영역상자 중 면적이 가장 큰 영역 상자를 검출하는 단계를 더 포함한다. In the detecting of the ship, after calculating the candidate value, the reliability of the plurality of area boxes included in the candidate value is equal to or greater than the first threshold, and the probability that the object in the area box is a ship is equal to or greater than the second threshold. The method further includes the step of detecting an area box having the largest area among the plurality of area boxes when there are a plurality of area boxes and the areas occupied by the plurality of area boxes overlap.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 해양을 모니터링하기 위한 방법은 통신모듈이 해상부이의 사방을 촬영한 영상인 360도 영상을 수신하는 단계와, 해무검출부가 심층학습모델인 해무검출모델을 통해 상기 360도 영상으로부터 해무가 포함되어 있을 확률을 나타내는 연산값을 산출하는 단계와, 관제부가 상기 연산값으로부터 해무량을 산출하는 단계를 포함한다. A method for monitoring the ocean according to a preferred embodiment of the present invention for achieving the object as described above includes the steps of: receiving, by a communication module, a 360-degree image that is an image photographed from all directions of a marine buoy; calculating a calculation value representing a probability that sea fog is included from the 360-degree image through a sea fog detection model, which is a model, and calculating, by a control unit, an amount of sea fog from the calculated value.
상기 연산값을 산출하는 단계는 상기 해무검출부가 상기 360도 영상을 복수의 영역으로 구분하는 단계와, 상기 해무검출모델이 학습된 가중치가 적용된 복수의 연산을 통해 상기 구분된 복수의 영역 각각에서 해무를 나타내는 픽셀의 비율을 산출함으로써 해무가 포함되어 있을 확률을 연산값으로 산출하는 단계를 포함한다. Calculating the calculated value includes dividing the 360-degree image into a plurality of regions by the sea fog detection unit, and performing sea mist in each of the divided regions through a plurality of operations to which the weights learned by the sea fog detection model are applied. and calculating a probability that sea fog is included as a calculated value by calculating a ratio of pixels representing .
상기 방법은 상기 360도 영상을 수신하는 단계 전, 모델생성부가 해무학습영상을 마련하는 단계와, 상기 모델생성부가 상기 해무학습영상을 복수의 영역으로 구분하고, 구분된 복수의 영역 각각에 포함된 해무의 양에 따라 상기 해무학습영상의 복수의 영역에 대한 레이블을 설정하는 단계와, 상기 모델생성부가 상기 해무학습영상을 초기화된 해무검출모델에 입력하는 단계와, 상기 초기화된 해무검출모델이 해무학습영상의 복수의 영역 각각에 대해 해무가 포함되어 있을 확률을 나타내는 연산값을 산출하는 단계와, 상기 모델생성부가 상기 연산값과 상기 레이블의 차이를 나타내는 손실을 산출하는 단계와, 상기 모델생성부가 상기 손실이 최소화되도록 상기 해무검출모델의 가중치를 수정하는 최적화를 수행하는 단계를 더 포함한다. The method includes the steps of: before receiving the 360-degree image, a model generation unit preparing a sea fog learning image; the model generating unit divides the sea fog learning image into a plurality of regions; setting labels for a plurality of regions of the sea mist learning image according to the amount of sea mist; inputting the sea mist learning image by the model generator into an initialized sea fog detection model; Calculating, by the model generating unit, a loss representing a difference between the calculated value and the label, for each of a plurality of regions of the training image, calculating a calculated value representing the probability that sea mist is included; The method further includes performing optimization of modifying a weight of the sea fog detection model so that the loss is minimized.
상기 연산값과 상기 레이블의 차이를 나타내는 손실을 산출하는 단계는 Calculating the loss representing the difference between the calculated value and the label comprises:
상기 모델생성부가 손실함수 에 따라 손실을 산출하고, 상기 L은 손실을 나타내며, 상기 M은 해무학습영상의 배치의 수이고, 상기 N은 각 해무학습영상의 영역의 수이고, 상기 i는 해무학습영상의 배치(batch)의 인덱스이고, 상기 j는 해무학습영상의 영역의 인덱스이고, 상기 Pi(j)는 레이블이고, 상기 qi(j)는 연산값인 것을 특징으로 한다. The model generator is a loss function Calculate the loss according to , where L represents the loss, M is the number of batches of sea fog learning images, N is the number of areas of each sea fog learning image, and i is the batch of sea fog learning images. is an index of , wherein j is an index of a region of the sea fog learning image, Pi(j) is a label, and qi(j) is an operation value.
상기 연산값으로부터 해무량을 산출하는 단계는 상기 관제부가 상기 연산값에 따라 복수의 영역의 해무가 포함되어 있을 확률의 평균을 상기 해상부이가 위치한 장소의 전체 해무량으로 산출하는 것을 특징으로 한다. Calculating the amount of sea fog from the calculated value is characterized in that the control unit calculates an average of the probability that sea fog is included in a plurality of areas according to the calculated value as the total amount of sea fog in the place where the sea buoy is located.
상기 연산값으로부터 해무량을 산출하는 단계는 상기 관제부가 복수의 영역 중 지정되는 방향에 대응하는 영역의 연산값의 평균을 상기 해상부이를 기준으로 지정된 방향의 해무량으로 산출하는 것을 특징으로 한다. The calculating of the amount of haze from the calculated value may include calculating, by the control unit, an average of the calculated values of a region corresponding to a designated direction among a plurality of regions as an amount of haze in a designated direction based on the sea buoy.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 해양을 모니터링하기 위한 장치는 해상부이의 사방을 촬영한 영상인 360도 영상을 수신하는 통신모듈과, 심층학습모델인 선박검출모델을 통해 상기 360도 영상 내에서 선박을 검출하는 선박검출부와, 상기 검출된 선박이 차지하는 영역을 나타내는 영역상자가 상기 360도 영상에서 차지하는 비율에 따라 위험도를 산출하는 관제부를 포함한다. An apparatus for monitoring the ocean according to a preferred embodiment of the present invention for achieving the above object includes a communication module for receiving a 360-degree image that is an image taken from all directions of a marine buoy, and a ship detection model as a deep learning model and a vessel detection unit for detecting a vessel in the 360-degree image through a control unit for calculating a degree of risk according to a ratio of an area box indicating an area occupied by the detected vessel in the 360-degree image.
상기 관제부는 상기 360도 영상을 복수의 구역으로 구분하고, 구분된 복수의 구역 중 상기 영역상자의 적어도 일부가 포함된 구역의 비율을 위험도로 산출하는 것을 특징으로 한다. The control unit divides the 360-degree image into a plurality of zones, and calculates a risk of a ratio of a zone including at least a part of the area box among the plurality of partitioned zones as a risk.
상기 장치는 상기 선박검출모델을 학습시키기 위한 모델생성부를 더 포함하며, 상기 모델생성부는 선박학습영상을 마련하고, 상기 선박학습영상에 포함된 객체가 선박이며, 선박이 차지하는 영역을 나타내는 영역상자 및 영역상자의 신뢰도를 포함하는 레이블을 부여하고, 상기 선박학습영상을 초기화된 선박검출모델에 입력하고, 상기 모델생성부가 상기 초기화된 선박검출모델이 선박이 차지하는 영역을 나타내는 영역상자, 영역상자의 객체가 선박일 확률 및 영역상자의 신뢰도를 포함하는 후보값을 산출하면, 손실함수에 따라 상기 후보값과 상기 레이블의 차이를 나타내는 손실을 산출하고, The apparatus further includes a model generator for learning the ship detection model, wherein the model generator prepares a ship learning image, an object included in the ship learning image is a ship, and an area box indicating an area occupied by the ship; A label including the reliability of the area box is given, the ship learning image is input to the initialized ship detection model, and the model generator indicates the area occupied by the vessel by the initialized ship detection model. The area box, the object of the area box If a candidate value including the probability of being a ship and the reliability of the area box is calculated, a loss representing the difference between the candidate value and the label is calculated according to the loss function,
상기 후보값과 상기 레이블의 차이가 최소화되도록 상기 선박검출모델의 가중치를 수정하는 최적화를 수행하는 것을 특징으로 한다. It characterized in that the optimization of correcting the weight of the ship detection model so that the difference between the candidate value and the label is minimized.
상기 모델생성부는 손실함수 에 따라 손실을 산출하고, 상기 S는 셀의 수이고, 상기 B는 한 셀 내의 영역상자의 수이고, 상기 dx, dy는 영역상자의 중심좌표이고, 상기 w는 영역상자의 폭이고, 상기 h는 영역상자의 높이이고, 상기 C는 신뢰도이고, 상기 pi(c)는 i 번째 셀의 객체가 선박 클래스일 확률이고, 상기 i는 객체가 존재하는 셀을 나타내는 인덱스이고, 상기 j는 예측된 영역상자를 나타내는 인덱스이고, 상기 및 상기 는 하이퍼파라미터이고, 상기 는 셀에 객체가 있는 경우를 나타내고, 상기 는 셀 i에 있는 영역상자 j를 나타내는 것을 특징으로 한다. The model generator is a loss function Calculate the loss according to , where S is the number of cells, B is the number of area boxes in one cell, dx and dy are the center coordinates of the area box, w is the width of the area box, and h is the height of the area box, C is the reliability, pi(c) is the probability that the object of the i-th cell is a ship class, i is the index indicating the cell in which the object exists, and j is the predicted area is the index representing the box, and and said is a hyperparameter, and indicates when there is an object in the cell, and is characterized as representing the area box j in cell i.
상기 선박검출모델은 상기 360도 영상을 복수의 셀로 구분하고, 상기 복수의 셀 각각에 중심 좌표를 가지는 복수의 영역상자를 검출하고, 상기 검출된 복수의 영역상자 각각에 대해 영역상자 내에 객체가 존재할 확률을 나타내는 신뢰도와 상기 검출된 복수의 영역상자 각각에 대해 영역상자 내의 객체가 선박일 확률을 후보값으로 산출하는 것을 특징으로 한다. The ship detection model divides the 360-degree image into a plurality of cells, detects a plurality of area boxes having center coordinates in each of the plurality of cells, and an object exists in the area box for each of the detected plurality of area boxes. It is characterized in that the reliability indicating the probability and the probability that the object in the area box is a ship for each of the detected plurality of area boxes is calculated as a candidate value.
상기 선박검출부는 상기 후보값에 포함된 복수의 영역상자 중 영역상자의 신뢰도가 제1 임계치 이상이고, 영역상자 내의 객체가 선박일 확률이 제2 임계치 이상인 영역상자를 검출하는 것을 특징으로 한다. The vessel detection unit detects an area box in which the reliability of the area box is greater than or equal to a first threshold among a plurality of area boxes included in the candidate value and a probability that an object in the area box is a ship is equal to or greater than a second threshold.
상기 선박검출부는 상기 후보값에 포함된 복수의 영역상자 중 영역상자의 신뢰도가 제1 임계치 이상이면서, 영역상자 내의 객체가 선박일 확률이 제2 임계치 이상인 영역상자가 복수이고, 복수의 영역상자가 차지하는 영역이 중첩된 경우, 복수의 영역상자 중 면적이 가장 큰 영역 상자를 검출하는 것을 특징으로 한다. The ship detection unit includes a plurality of area boxes in which the reliability of the area box is equal to or greater than the first threshold among the plurality of area boxes included in the candidate value, and the probability that the object in the area box is a ship is equal to or greater than the second threshold, and the plurality of area boxes are When the area occupied by the overlapping area, the area box having the largest area among the plurality of area boxes is detected.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 해양을 모니터링하기 위한 장치는 해상부이의 사방을 촬영한 영상인 360도 영상을 수신하는 통신모듈과, 심층학습모델인 해무검출모델을 통해 상기 360도 영상으로부터 해무가 포함되어 있을 확률을 나타내는 연산값으로 산출하는 해무검출부와, 상기 연산값으로부터 해무량을 산출하는 관제부를 포함한다. An apparatus for monitoring the ocean according to a preferred embodiment of the present invention for achieving the above object includes a communication module for receiving a 360-degree image that is an image taken from all directions of a marine buoy, and a sea fog detection model as a deep learning model It includes a sea fog detection unit that calculates a calculated value representing the probability that sea fog is included from the 360-degree image through a sea fog detection unit, and a control unit that calculates an amount of sea fog from the calculated value.
상기 해무검출부는 상기 360도 영상을 복수의 영역으로 구분하고, 상기 해무검출모델은 학습된 가중치가 적용된 복수의 연산을 통해 상기 구분된 복수의 영역 각각에서 해무를 나타내는 픽셀의 비율을 산출함으로써 해무가 포함되어 있을 확률을 연산값으로 산출하는 것을 특징으로 한다. The sea fog detection unit divides the 360-degree image into a plurality of regions, and the sea fog detection model calculates the proportion of pixels representing sea fog in each of the plurality of divided regions through a plurality of operations to which the learned weight is applied. It is characterized in that the probability of being included is calculated as an operation value.
상기 장치는 상기 해무검출모델을 학습시키기 위한 모델생성부를 더 포함하며, 상기 모델생성부는 해무학습영상을 마련하고, 상기 해무학습영상을 복수의 영역으로 구분하고, 구분된 복수의 영역 각각에 포함된 해무의 양에 따라 상기 해무학습영상의 복수의 영역에 대한 레이블을 설정하고, 상기 해무학습영상을 초기화된 해무검출모델에 입력하여 상기 초기화된 해무검출모델이 해무학습영상의 복수의 영역 각각에 대해 해무가 포함되어 있을 확률을 나타내는 연산값을 산출하면, 상기 연산값과 상기 레이블의 차이를 나타내는 손실을 산출하고, 상기 손실이 최소화되도록 상기 해무검출모델의 가중치를 수정하는 최적화를 수행하는 것을 특징으로 한다. The apparatus further comprises a model generator for learning the sea fog detection model, wherein the model generator prepares a sea fog learning image, divides the sea fog learning image into a plurality of regions, and includes each of the plurality of divided regions. Set labels for a plurality of areas of the sea mist learning image according to the amount of sea mist, and input the sea mist learning image to an initialized sea fog detection model so that the initialized sea fog detection model is applied to each of the plurality of areas of the sea mist learning image When an operation value indicating the probability that sea fog is included is calculated, a loss indicating a difference between the operation value and the label is calculated, and optimization is performed to correct the weight of the sea fog detection model so that the loss is minimized. do.
상기 모델생성부는 손실함수 에 따라 손실을 산출하고, 상기 L은 손실을 나타내며, 상기 M은 해무학습영상의 배치의 수이고, 상기 N은 각 해무학습영상의 영역의 수이고, 상기 i는 해무학습영상의 배치(batch)의 인덱스이고, 상기 j는 해무학습영상의 영역의 인덱스이고, 상기 Pi(j)는 레이블이고, 상기 qi(j)는 연산값인 것을 특징으로 한다. The model generator is a loss function Calculate the loss according to , where L represents the loss, M is the number of batches of sea fog learning images, N is the number of areas of each sea fog learning image, and i is the batch of sea fog learning images. is an index of , wherein j is an index of a region of the sea fog learning image, Pi(j) is a label, and qi(j) is an operation value.
상기 관제부는 상기 연산값에 따라 복수의 영역의 해무가 포함되어 있을 확률의 평균을 상기 해상부이가 위치한 장소의 전체 해무량으로 산출하는 것을 특징으로 한다. 상기 관제부는 복수의 영역 중 지정되는 방향에 대응하는 영역의 연산값의 평균을 상기 해상부이를 기준으로 지정된 방향의 해무량으로 산출하는 것을 특징으로 한다. The control unit is characterized in that it calculates an average of the probability that the sea fog is included in a plurality of areas according to the calculated value as the total amount of sea fog in the place where the sea buoy is located. The control unit may calculate an average of calculated values of a region corresponding to a designated direction among a plurality of regions as an amount of sea fog in a designated direction based on the maritime buoy.
본 발명에 따르면, 스마트 해상부이를 이용하여 선박과의 충돌 위험 및 해무의 상태를 모니터링할 수 있다. According to the present invention, it is possible to monitor the risk of collision with a ship and the state of sea fog by using a smart sea buoy.
도 1은 본 발명의 실시예에 따른 해양을 모니터링하기 위한 장치의 구성을 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 해양을 모니터링하기 위한 해상부이의 구성을 설명하기 위한 도면이다.
도 3은 본 발명의 실시예에 따른 스마트 해상부이를 이용한 해양을 모니터링하기 위한 관제서버의 구성을 설명하기 위한 도면이다.
도 4는 본 발명의 실시예에 따른 스마트 해상부이를 이용한 해양을 모니터링하기 위한 관제서버의 세부적인 구성을 설명하기 위한 도면이다.
도 5는 본 발명의 실시예에 따른 선박검출모델(BDM)을 생성하는 방법을 설명하기 위한 흐름도이다.
도 6은 본 발명의 실시예에 따른 선박검출모델(BDM)을 생성하는 방법을 설명하기 위한 도면이다.
도 7은 본 발명의 실시예에 따른 해무검출모델(FDM)을 생성하는 방법을 설명하기 위한 흐름도이다.
도 8은 본 발명의 실시예에 따른 해무검출모델(FDM)을 생성하는 방법을 설명하기 위한 도면이다.
도 9는 본 발명의 실시예에 따른 해양을 모니터링하기 위한 방법을 설명하기 위한 흐름도이다.
도 10은 본 발명의 실시예에 따른 해양을 모니터링하기 위한 방법을 설명하기 위한 화면 예이다.
도 11은 본 발명의 실시예에 따른 해양을 모니터링하기 위한 방법을 설명하기 위한 흐름도이다.
도 12는 본 발명의 실시예에 따른 해양을 모니터링하기 위한 방법을 설명하기 위한 화면 예이다.
도 13은 본 발명의 실시예에 따른 컴퓨팅 장치를 나타내는 도면이다. 1 is a diagram for explaining the configuration of an apparatus for monitoring the ocean according to an embodiment of the present invention.
2 is a view for explaining the configuration of a marine buoy for monitoring the ocean according to an embodiment of the present invention.
3 is a diagram for explaining the configuration of a control server for monitoring the ocean using a smart marine buoy according to an embodiment of the present invention.
4 is a diagram for explaining a detailed configuration of a control server for monitoring the ocean using a smart marine buoy according to an embodiment of the present invention.
5 is a flowchart illustrating a method of generating a ship detection model (BDM) according to an embodiment of the present invention.
6 is a view for explaining a method of generating a ship detection model (BDM) according to an embodiment of the present invention.
7 is a flowchart illustrating a method of generating a sea fog detection model (FDM) according to an embodiment of the present invention.
8 is a view for explaining a method of generating a sea fog detection model (FDM) according to an embodiment of the present invention.
9 is a flowchart illustrating a method for monitoring the ocean according to an embodiment of the present invention.
10 is a screen example for explaining a method for monitoring the ocean according to an embodiment of the present invention.
11 is a flowchart illustrating a method for monitoring the ocean according to an embodiment of the present invention.
12 is a screen example for explaining a method for monitoring the ocean according to an embodiment of the present invention.
13 is a diagram illustrating a computing device according to an embodiment of the present invention.
본 발명의 상세한 설명에 앞서, 이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 실시예에 불과할 뿐, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다. Prior to the detailed description of the present invention, the terms or words used in the present specification and claims described below should not be construed as being limited to their ordinary or dictionary meanings, and the inventors should develop their own inventions in the best way. For explanation, it should be interpreted as meaning and concept consistent with the technical idea of the present invention based on the principle that it can be appropriately defined as a concept of a term. Accordingly, the embodiments described in this specification and the configurations shown in the drawings are only the most preferred embodiments of the present invention, and do not represent all of the technical spirit of the present invention, so various equivalents that can be substituted for them at the time of the present application It should be understood that there may be water and variations.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 이때, 첨부된 도면에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음을 유의해야 한다. 또한, 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다. 마찬가지의 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 또는 개략적으로 도시되었으며, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In this case, it should be noted that the same components in the accompanying drawings are denoted by the same reference numerals as much as possible. In addition, detailed descriptions of well-known functions and configurations that may obscure the gist of the present invention will be omitted. For the same reason, some components are exaggerated, omitted, or schematically illustrated in the accompanying drawings, and the size of each component does not fully reflect the actual size.
먼저, 스마트 해상부이를 이용한 해양을 모니터링하기 위한 시스템에 대해서 설명하기로 한다. 도 1은 본 발명의 실시예에 따른 스마트 해상부이를 이용한 해양을 모니터링하기 위한 시스템의 구성을 설명하기 위한 도면이다. 도 1을 참조하면, 본 발명의 실시예에 따른 스마트 해상부이를 이용한 해양을 모니터링하기 위한 시스템은 관제서버(10) 및 복수의 해상부이(30)를 포함한다. First, a system for monitoring the ocean using a smart marine buoy will be described. 1 is a view for explaining the configuration of a system for monitoring the ocean using a smart marine buoy according to an embodiment of the present invention. Referring to FIG. 1 , a system for monitoring the ocean using a smart marine buoy according to an embodiment of the present invention includes a
복수의 해상부이(30)는 지속적으로 복수의 카메라를 이용하여 촬영한 영상을 관제서버(10)에 제공한다. 그러면, 관제서버(10)는 복수의 카메라를 이용하여 촬영한 영상을 분석하여 선박의 충돌 위험 및 해무의 상태를 파악하고, 필요한 경우, 경고 및 경보를 수행한다. The plurality of
다음으로, 해상부이(30)의 구성에 대해 보다 상세하게 설명하기로 한다. 도 2는 본 발명의 실시예에 따른 해양을 모니터링하기 위한 해상부이의 구성을 설명하기 위한 도면이다. Next, the configuration of the
도 2를 참조하면, 본 발명의 실시예에 따른 해상부이(30)는 카메라부(31), 통신부(33) 및 제어부(35)를 포함한다. 그 밖에 해상부이(30)가 해상에서 특정 위치를 유지하기 위한 구성 및 자력으로 전력을 공급하기 위한 구성, 다양한 센서 등에 대한 설명은 본 발명의 요지가 아니므로 생략하기로 한다. Referring to FIG. 2 , the
카메라부(31)는 영상을 촬영하기 위한 것이다. 본 발명의 바람직한 실시예에 따르면, 카메라부(31)는 하나 이상의 카메라를 포함한다. 카메라부(110)는 하나 또는 2 이상의 카메라를 통해 해상부이(30)의 사방을 촬영하여 360도 영상을 생성할 수 있다. 생성된 360도 영상은 제어부(35)에 제공된다. The
통신부(32)는 관제서버(10)와의 통신을 위한 것이다. 특히, 통신부(32)는 360도 영상을 무선으로 관제서버(10)로 전송하기 위한 것이다. 통신부(32)는 이동통신 기지국의 커버리지 내에 위치하는 경우, 기지국을 통한 이동통신 방식으로 관제서버(10)와 통신하며, 기지국의 커버리지를 벗어난 경우, 위성통신을 통해 관제서버(10)와 통신할 수 있다. The
저장부(33)는 해상부이(30)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행한다. 저장부(33)는 카메라부(31)가 촬영한 360도 영상 등을 비롯하여 다양한 데이터를 저장할 수 있다. 저장부(33)에 저장되는 각 종 데이터는 사용자의 조작에 따라, 삭제, 변경, 추가될 수 있다. The
제어부(34)는 해상부이(30)의 전반적인 동작 및 해상부이(30)의 내부 블록들간 신호 흐름을 제어하고, 데이터를 처리하는 데이터 처리 기능을 수행할 수 있다. 또한, 제어부(34)는 기본적으로, 해상부이(30)의 각 종 기능을 제어하는 역할을 수행한다. 제어부(34)는 CPU(Central Processing Unit), GPU(Graphic Processing Unit), 디지털신호처리기(DSP: Digital Signal Processor) 등을 예시할 수 있다. The
다음으로, 본 발명의 실시예에 따른 스마트 해상부이를 이용한 해양을 모니터링하기 위한 관제서버에 대해서 설명하기로 한다. 도 3은 본 발명의 실시예에 따른 스마트 해상부이를 이용한 해양을 모니터링하기 위한 관제서버의 구성을 설명하기 위한 도면이다. 도 4는 본 발명의 실시예에 따른 스마트 해상부이를 이용한 해양을 모니터링하기 위한 관제서버의 세부적인 구성을 설명하기 위한 도면이다. Next, a control server for monitoring the ocean using a smart marine buoy according to an embodiment of the present invention will be described. 3 is a diagram for explaining the configuration of a control server for monitoring the ocean using a smart marine buoy according to an embodiment of the present invention. 4 is a diagram for explaining a detailed configuration of a control server for monitoring the ocean using a smart marine buoy according to an embodiment of the present invention.
먼저, 도 3을 참조하면, 본 발명의 실시예에 따른 관제서버(10)는 통신모듈(11), 저장모듈(12) 및 제어모듈(13)을 포함한다. First, referring to FIG. 3 , the
통신모듈(11)은 해상부이(30)와 통신하기 위한 것이다. 통신모듈(11)은 이동통신 기지국의 커버리지 내에 위치하는 해상부이(30)와 이동통신 방식으로 통신하며, 기지국의 커버리지를 벗어나 위치하는 해상부이(30)와 위성통신 방식을 통해 통신할 수 있다. 또한, 통신모듈(11)은 해상부이(30)로부터 수신된 데이터, 예컨대, 360도 영상을 제어모듈(13)로 전달할 수 있다. The
저장모듈(12)은 관제서버(10)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행한다. 저장모듈(12)은 해상부이(30)로부터 수신되는 데이터, 예컨대, 예컨대, 360도 영상 등을 저장할 수 있다. 저장모듈(12)에 저장되는 각 종 데이터는 관리자의 조작에 따라 등록, 삭제, 변경, 추가될 수 있다. The
제어모듈(13)은 관제서버(10)의 전반적인 동작 및 관제서버(10)의 내부 블록들 간 신호 흐름을 제어하고, 데이터를 처리하는 데이터 처리 기능을 수행할 수 있다. 제어모듈(13)은 CPU(Central Processing Unit), GPU(Graphic Processing Unit), NPU(Neural Processing Unit) 등이 될 수 있다. The
제어모듈(13)은 도 4에 도시된 바와 같이, 모델생성부(100), 선박검출부(200) 및 해무검출부(300)를 포함한다. As shown in FIG. 4 , the
모델생성부(100)는 본 발명의 실시예에 따른 심층학습모델(Deep Learning Model)인 선박검출모델(BDM) 및 해무검출모델(FDM)을 학습(deep learning)을 통해 생성시키기 위한 것이다. The
선박검출모델(BDM) 및 해무검출모델(FDM)은 심층학습모델(Deep Learning Model)의 일종이며, 복수의 계층(layer)을 포함하는 적어도 하나의 인공신경망(artificial neural network)으로 이루어진다. 선박검출모델(BDM) 및 해무검출모델(FDM)의 어느 하나의 계층은 하나 이상의 연산을 수행한다. 강조하면, 선박검출모델(BDM) 및 해무검출모델(FDM)은 복수의 계층을 포함하며, 복수의 계층은 복수의 연산을 포함한다. 또한, 복수의 계층 간은 가중치(w: weight)로 연결된다. 어느 하나의 계층의 연산 결과는 가중치가 적용되어 다음 계층의 입력이 된다. 즉, 선박검출모델(BDM) 및 해무검출모델(FDM)의 어느 한 계층은 이전 계층으로부터 가중치를 적용한 값을 입력 받고, 이에 대한 연산을 수행하고, 그 연산 결과를 다음 계층의 입력으로 전달한다. 다른 말로, 선박검출모델(BDM) 및 해무검출모델(FDM)은 가중치가 적용되는 복수의 연산을 수행한다. 복수의 계층은 컨볼루션(Convolution) 연산 및 활성화 함수(activation function)에 의한 연산을 수행하는 컨볼루션계층(Convolution Layer: CL), 다운샘플링(Down Sampling) 연산 혹은 업샘플링(Up Sampling) 연산을 수행하는 풀링계층(Pooling Layer: PL), 디컨볼루션(Deconvolution) 연산, 활성화함수에 의한 연산을 수행하는 디컨볼루션계층(Deconvolution Layer: DL) 및 활성화함수에 의한 연산을 수행하는 완전연결층(Fully-connected Layer) 중 적어도 하나를 포함할 수 있다. A ship detection model (BDM) and a sea fog detection model (FDM) are a kind of deep learning model, and consist of at least one artificial neural network including a plurality of layers. Any one layer of the ship detection model (BDM) and the sea fog detection model (FDM) performs one or more operations. To emphasize, the ship detection model (BDM) and the sea fog detection model (FDM) include a plurality of layers, and the plurality of layers includes a plurality of operations. In addition, a plurality of layers are connected by a weight (w: weight). The calculation result of one layer is weighted and becomes the input of the next layer. That is, any one layer of the ship detection model (BDM) and the sea fog detection model (FDM) receives a weighted value from the previous layer, performs an operation on it, and transmits the operation result as an input of the next layer. In other words, the ship detection model (BDM) and the sea fog detection model (FDM) perform a plurality of calculations to which weights are applied. A plurality of layers perform a convolution layer (CL) that performs an operation by a convolution operation and an activation function, a down-sampling operation, or an up-sampling operation. Pooling Layer (PL), deconvolution operation, deconvolution layer (DL) performing operation by activation function, and fully connected layer performing operation by activation function (Fully) -connected Layer).
컨볼루션, 디컨벌루션, 다운샘플링 및 업샘플링 연산 각각은 소정의 행렬로 이루어진 커널을 이용하며, 이러한 커널을 이루는 행렬의 원소의 값들이 가중치(w)가 된다. 또한, 활성화 함수(activation function)는 시그모이드(Sigmoid), 하이퍼볼릭탄젠트(tanh: Hyperbolic tangent), ELU(Exponential Linear Unit), ReLU(Rectified Linear Unit), Leakly ReLU, Maxout, Minout, Softmax 등을 예시할 수 있다. Each of the convolution, deconvolution, downsampling, and upsampling operations uses a kernel composed of a predetermined matrix, and values of elements of the matrix constituting the kernel become a weight w. In addition, the activation function is a sigmoid (Sigmoid), hyperbolic tangent (tanh: Hyperbolic tangent), ELU (Exponential Linear Unit), ReLU (Rectified Linear Unit), Leakly ReLU, Maxout, Minout, Softmax, etc. can be exemplified.
모델생성부(100)는 선박학습영상을 이용하여 선박검출모델(BDM)을 학습시키고, 해무학습영상을 이용하여 해무검출모델(FDM)을 학습시킨다. 이러한 학습 방법에 대해서는 아래에서 더 상세하게 설명될 것이다. The
본 발명의 실시예에 따라 모델생성부(100)가 생성한 선박검출모델(BDM) 및 해무검출모델(FDM)은 기본적으로 소프트웨어인 것으로 설명될 것이다. 하지만, 본 발명이 이에 한정되지 않는다. 선박검출모델(BDM) 및 해무검출모델(FDM)이 CPU(Central Processing Unit), GPU(Graphic Processing Unit), NPU(Neural Processing Unit) 등인 제어모듈(13)에서 실행될 때, 선박검출모델(BDM) 및 해무검출모델(FDM)을 실행시키는 CPU(Central Processing Unit), GPU(Graphic Processing Unit), NPU(Neural Processing Unit) 등의 명령모듈(instruction module)이 선박검출모델(BDM) 및 해무검출모델(FDM)과 동치인 하드웨어로 설명될 수 있다. The ship detection model (BDM) and the sea fog detection model (FDM) generated by the
선박검출부(200)는 360도 영상에서 선박을 검출하기 위한 것이다. 선박검출부(200)는 선박검출모델(BDM)을 이용하여 360도 영상에서 선박을 검출할 수 있다. The
해무검출부(300)는 360도 영상에서 해무를 검출하기 위한 것이다. 선박검출부(200)는 선박검출모델(BDM)을 이용하여 360도 영상에서 해무를 검출할 수 있다. The sea
관제부(400)는 선박검출부(200)가 검출한 선박이 차지하는 영역에 따라 해상부이(30)와 선박과의 충돌의 위험도를 평가하고, 이를 경고할 수 있다. 또한, 관제부(400)는 해무검출부(300)가 검출한 해무를 기초로 해상부이(30)가 위치한 장소의 해무량을 도출하고, 이를 리포트 할 수 있다. The control unit 400 may evaluate the risk of collision between the
다음으로, 본 발명의 실시예에 따른 선박검출모델(BDM)을 학습시키는 방법에 대해서 설명하기로 한다. 도 5는 본 발명의 실시예에 따른 선박검출모델(BDM)을 생성하는 방법을 설명하기 위한 흐름도이다. 도 6은 본 발명의 실시예에 따른 선박검출모델(BDM)을 생성하는 방법을 설명하기 위한 도면이다. Next, a method for learning a ship detection model (BDM) according to an embodiment of the present invention will be described. 5 is a flowchart illustrating a method of generating a ship detection model (BDM) according to an embodiment of the present invention. 6 is a view for explaining a method of generating a ship detection model (BDM) according to an embodiment of the present invention.
도 5를 참조하면, 모델생성부(100)는 S110 단계에서 선박검출모델(BDM)을 초기화한다. 이러한 초기화는 선박검출모델(BDM)의 파라미터, 즉, 가중치(w)를 초기화하는 것을 의미한다. 초기화가 완료되면, 모델생성부(100)는 S120 단계에서 영상에 선박이 포함된 선박학습영상을 마련한다. 이러한 화면 예가 도 6의 (A)에 도시되었다. Referring to FIG. 5 , the
이어서, 모델생성부(100)는 S130 단계에서 선박학습영상에 대한 레이블을 설정한다. 이러한 화면 예가 도 6의 (B)에 도시되었다. 이때, 모델생성부(100)는 도 6의 (B)에 도시된 바와 같이, 레이블로 선박학습영상에 포함된 객체인 선박(obj_boat)이 차지하는 영역을 나타내는 실기의 영역상자(GT: ground-truth)를 표시하고, 실기의 영역상자(GT)에 객체(obj_boat)가 포함되어 있을 확률을 나타내는 신뢰도는 1(100%)로 설정하고, 실기의 영역상자(GT)에 포함된 객체가 선박(obj_boat)일 확률을 1(100%)로 설정한다. Next, the
다음으로, 모델생성부(100)는 S140 단계에서 선박학습영상을 선박검출모델(BDM)에 입력한다. 그러면, 선박검출모델(BDM)은 S150 단계에서 선박학습영상에 대해 가중치가 적용되는 복수의 연산을 수행하여 후보값을 산출한다. 이러한 후보값의 화면 예가 도 6의 (c)에 도시되었다. 이때, 선박검출모델(BDM)은 선박학습영상을 복수의 셀로 구분한 후, 복수의 셀 각각에 중심 좌표(dx, dy)를 가지는 복수의 영역상자(BB: Bounding Box) 각각이 속한 셀을 기준으로 하는 중심 좌표(dx, dy)와 중심 좌표(dx, dy)를 기준으로 폭(w) 및 높이(h)를 정의하는 영역상자(dx, dy, w, h), 영역상자(BB) 내에 객체가 존재할 확률을 나타내는 신뢰도(confidence: 0.0~1.0) 및 영역상자(BB) 내의 객체가 선박일 확률을 후보값으로 산출한다. Next, the
이어서, 모델생성부(100)는 S160 단계에서 손실함수를 통해 후보값과 레이블과의 차이를 나타내는 손실을 산출한다. 즉, 모델생성부(100)은 다음의 수학식 1의 손실함수를 통해 손실을 구할 수 있다. Next, the
S는 셀의 수를 나타내며, B는 한 셀 내의 영역상자의 수를 나타낸다. 또한, dx, dy는 영역상자의 중심좌표를 나타내며, w 및 h는 각각 영역상자의 폭과 높이를 나타낸다. C는 신뢰도를 나타낸다. pi(c)는 i 번째 셀의 객체가 선박일 확률을 나타낸다. 여기서, i는 객체가 존재하는 셀을 나타내는 인덱스이고, j는 예측된 영역상자를 나타내는 인덱스이다. 및 는 하이퍼 파라미터이다. 는 영역상자에 대한 파라미터를 더 반영하기 위한 것으로, 영역상자의 좌표(dx, dy, w, h)에 대한 손실과 다른 손실들과의 균형을 위한 파라미터이다. 는 객체가 있는 영역상자의 파라미터의 값을 가중하고, 객체가 없는 영역의 파라미터의 값을 덜 반영하기 위한 것이다. 즉, 는 객체가 있는 영역상자와 객체가 없는 영역상자 간의 균형을 위한 파라미터이다. 는 셀에 객체가 있는 경우를 나타낸다. 는 셀 i에 있는 영역상자 j를 나타낸다. S represents the number of cells, and B represents the number of area boxes in one cell. In addition, dx and dy represent the center coordinates of the area box, and w and h represent the width and height of the area box, respectively. C represents reliability. pi(c) represents the probability that the object of the i-th cell is a ship. Here, i is an index indicating a cell in which an object exists, and j is an index indicating a predicted area box. and is a hyperparameter. is to further reflect the parameters for the area box, and is a parameter for balancing the loss with respect to the coordinates (dx, dy, w, h) of the area box and other losses. is to weight the value of the parameter of the area box with the object, and to reflect the parameter value of the area without the object less. in other words, is a parameter for the balance between the area box with objects and the area box without objects. indicates when there is an object in the cell. denotes the area box j in cell i.
수학식 1의 첫 번째 및 두 번째 텀(term)은 영역상자의 좌표(dx, dy, w, h)와, 학습하고자 하는 선박 객체가 존재하는 영역의 좌표와의 차이를 나타내는 좌표 손실(coordinate loss)을 산출하기 위한 것이다. 또한, 수학식 1의 세 번째 텀은 영역상자(BB)의 영역과 객체를 100% 포함하고 있는 이상적인 실기의 영역박스(GT)와의 차이를 나타내는 신뢰도 손실(confidence loss)을 산출하기 위한 것이다. 마지막으로, 수학식 1의 마지막 텀은 영역상자(BB) 내의 후보값의 객체(obj)와 레이블의 객체(obj_boat)과의 차이를 나타내는 분류 손실(classification loss)을 산출하기 위한 것이다. The first and second terms of
다음으로, 모델생성부(100)는 S170 단계에서 손실 함수를 통해 도출되는 모든 손실이 최소가 되도록 선박검출모델(BDM)의 가중치를 수정하는 최적화를 수행한다. 즉, 모델생성부(100)는 수학식 1의 손실 함수를 통해 도출되는 좌표 손실, 신뢰도 손실 및 분류 손실을 포함하는 손실이 최소가 되도록 선박검출모델(BDM)의 가중치를 수정하는 최적화를 수행한다. Next, the
전술한 S140 단계 내지 S170 단계는 서로 다른 복수의 선박학습영상 혹은 서로 다른 복수의 선박학습영상의 배치(batch)를 이용하여 선박검출모델(BDM)의 가중치(w)의 갱신을 반복한다. 그리고 이러한 반복은 검증용의 선박학습영상을 입력하여 손실을 구했을 때, 손실이 기 설정된 목표치 이하가 될 때까지 이루어진다. 따라서 모델생성부(100)는 S180 단계에서 검증용으로 마련된 선박학습영상을 선박검출모델(BDM)에 입력하여 후보값을 산출하고, 손실함수를 통해 후보값과 후보값에 대응하는 레이블을 기초로 구해진 손실이 기 설정된 목표치 이하인지 여부를 판별하고, 손실이 기 설정된 목표치 이하이면, S190 단계에서 학습을 완료한다. Steps S140 to S170 described above repeat the update of the weight w of the ship detection model (BDM) using a plurality of different ship learning images or a batch of a plurality of different ship learning images. And this repetition is made until the loss becomes less than the preset target value when the loss is obtained by inputting the ship learning image for verification. Therefore, the
다음으로, 본 발명의 실시예에 따른 해무검출모델(FDM)을 학습시키는 방법에 대해서 설명하기로 한다. 도 7은 본 발명의 실시예에 따른 해무검출모델(FDM)을 생성하는 방법을 설명하기 위한 흐름도이다. 도 8은 본 발명의 실시예에 따른 해무검출모델(FDM)을 생성하는 방법을 설명하기 위한 도면이다. Next, a method for learning a sea fog detection model (FDM) according to an embodiment of the present invention will be described. 7 is a flowchart illustrating a method of generating a sea fog detection model (FDM) according to an embodiment of the present invention. 8 is a view for explaining a method of generating a sea fog detection model (FDM) according to an embodiment of the present invention.
도 7을 참조하면, 모델생성부(100)는 S210 단계에서 해무검출모델(FDM)을 초기화한다. 이러한 초기화는 해무검출모델(FDM)의 파라미터, 즉, 가중치(w)를 초기화하는 것을 의미한다. 초기화가 완료되면, 모델생성부(100)는 S220 단계에서 해무학습영상을 마련한다. 해무학습영상은 적어도 일부에 해무가 포함된 360도 영상과, 해무가 포함되지 않은 360도 영상을 포함한다. 이러한 화면 예가 도 8의 (A)에 도시되었다. Referring to FIG. 7 , the
이어서, 모델생성부(100)는 S230 단계에서 해무학습영상에 대한 레이블을 설정한다. 이러한 화면 예가 도 6의 (B)에 도시되었다. 이때, 모델생성부(100)는 도 6의 (B)에 도시된 바와 같이, 해무학습영상을 복수의 영역으로 구분하고, 구분된 복수의 영역 각각에 포함된 해무의 양이 기 설정된 기준치 이상 이면, 해당 영역의 레이블을 1로 설정하고, 그렇지 않은 경우, 해당 영역의 레이블을 0으로 설정한다. 이때, 복수의 영역 각각에 포함된 해무의 양은 각 픽셀의 픽셀값에 따라 산출될 수 있다. 먼저, 해무를 나타내는 픽셀값의 범위가 미리 설정된다. 그리고 모델생성부(100)는 해당 영역의 복수의 픽셀 중 픽셀값이 해무를 나타내는 픽셀값을 가진 픽셀의 수가 기 설정된 기준치 이상이면, 해당 영역을 해무 영역으로 선정하여 레이블을 1로 설정한다. 반면, 즉, 해당 영역의 복수의 픽셀 중 픽셀값이 해무를 나타내는 픽셀값을 가진 픽셀의 수가 기 설정된 기준치 미만이면, 해당 영역을 비해무 영역으로 선정하여 레이블을 0으로 설정한다. Next, the
앞선 실시예에 따르면, 복수의 각 영역을 비해무영역 '0'과 해무영역 '1'로 구분하여 레이블을 설정하였지만, 다른 실시예에 따르면, 해무를 나타내는 픽셀값의 범위를 미리 설정하고, 해당 영역의 복수의 픽셀 중 픽셀값이 해무를 나타내는 픽셀값을 가진 픽셀의 비율을 레이블로 설정할 수 있다. 예컨대, 한 영역에 100개의 픽셀이 존재할 때, 해무를 나타내는 픽셀값을 가진 픽셀의 수가 30개이면, 레이블은 0.30으로 설정될 수 있다. According to the previous embodiment, labels were set by dividing each of the plurality of regions into non-free region '0' and haze region '1'. A ratio of pixels having pixel values representing haze among a plurality of pixels in the area may be set as a label. For example, when 100 pixels exist in one area, if the number of pixels having a pixel value representing sea fog is 30, the label may be set to 0.30.
다음으로, 모델생성부(100)는 S240 단계에서 해무학습영상을 해무검출모델(FDM)에 입력한다. 이때, 모델생성부(100)는 도 8의 (U)에 도시된 바와 같이, 해무학습영상을 앞서(S230 단계) 구분된 복수의 영역으로 분할하여 해무검출모델(FDM)에 입력한다. Next, the
그러면, 해무검출모델(FDM)은 도 8의 (S)에 도시된 바와 같이, S250 단계에서 해무학습영상의 복수의 영역 각각에 대해 가중치(학습이 완료되지 않은 가중치)가 적용되는 복수의 연산을 수행하여 복수의 영역 각각에 대한 연산값을 산출한다. 이때, 해무검출모델(FDM)은 해무학습영상의 각 영역에서 해무를 나타내는 픽셀의 비율을 연산값으로 산출한다. 즉, 하나의 영역에 해무를 나타내는 픽셀이 많을수록 해당 영역은 해무로 판단할 수 있을 확률이 높다. 이에 따라, 연산값은 복수의 영역 각각에 해무가 포함되어 있을 확률을 나타낸다. 이러한 복수의 영역의 연산값의 화면 예가 도 8의 (c)에 도시되었다. Then, the sea fog detection model (FDM) performs a plurality of operations in which weights (weights for which learning is not completed) are applied to each of a plurality of regions of the sea fog learning image in step S250, as shown in (S) of FIG. operation to calculate an operation value for each of the plurality of regions. At this time, the sea fog detection model (FDM) calculates the ratio of pixels representing sea fog in each area of the sea fog learning image as an operation value. That is, the more pixels representing sea fog in one region, the higher the probability that the region can be determined as sea fog. Accordingly, the calculated value represents the probability that sea mist is included in each of the plurality of regions. An example of the screen of the calculation values of such a plurality of areas is shown in FIG. 8C .
이어서, 모델생성부(100)는 S260 단계에서 손실함수를 통해 연산값과 레이블과의 차이를 나타내는 손실을 산출한다. 즉, 모델생성부(100)는 다음의 수학식 2의 손실함수를 통해 손실을 구할 수 있다. Next, the
여기서, L은 손실을 나타내며, M이 해무학습영상의 배치(batch)의 수이고, N은 각 해무학습영상의 영역의 수를 나타낸다. 즉, i는 해무학습영상의 배치(batch)의 인덱스이고, j는 해무학습영상의 영역의 인덱스이다. Pi(j)는 해무 존재 여부를 나타내는 레이블이고, qi(j)는 해무 존재 여부를 산출한 연산값을 의미한다. Here, L denotes a loss, M denotes the number of batches of sea fog learning images, and N denotes the number of regions of each sea fog learning image. That is, i is an index of a batch of sea fog learning images, and j is an index of an area of sea fog learning images. Pi(j) is a label indicating the presence or absence of sea mist, and qi(j) is an operation value calculated by calculating the presence or absence of sea fog.
다음으로, 모델생성부(100)는 S270 단계에서 손실 함수를 통해 도출되는 모든 손실이 최소가 되도록 해무검출모델(FDM)의 가중치를 수정하는 최적화를 수행한다. 즉, 모델생성부(100)는 수학식 2의 손실 함수를 통해 도출되는 손실이 최소가 되도록 해무검출모델(FDM)의 가중치를 수정하는 최적화를 수행한다. Next, the
전술한 S240 단계 내지 S270 단계는 서로 다른 복수의 해무학습영상 혹은 서로 다른 복수의 해무학습영상의 배치(batch)를 이용하여 반복하여 해무검출모델(FDM)의 가중치(w)를 갱신한다. 그리고 이러한 반복은 검증용의 해무학습영상을 입력하여 손실을 구했을 때, 손실이 기 설정된 목표치 이하가 될 때까지 이루어진다. 따라서 모델생성부(100)는 S280 단계에서 검증용으로 마련된 해무학습영상을 해무검출모델(FDM)에 입력하여 연산값을 산출하고, 손실함수를 통해 연산값과 연산값에 대응하는 레이블을 기초로 구해진 손실이 기 설정된 목표치 이하인지 여부를 판별하고, 손실이 기 설정된 목표치 이하이면, S190 단계에서 학습을 완료한다. The above-described steps S240 to S270 update the weight w of the sea fog detection model FDM repeatedly using a plurality of different sea fog learning images or a batch of a plurality of different sea fog learning images. And when the loss is obtained by inputting the sea fog learning image for verification, this repetition is performed until the loss becomes less than a preset target value. Therefore, the
다음으로, 본 발명의 실시예에 따른 해양을 모니터링하기 위한 방법에 대해서 설명하기로 한다. 도 9는 본 발명의 실시예에 따른 해양을 모니터링하기 위한 방법을 설명하기 위한 흐름도이다. 도 10은 본 발명의 실시예에 따른 해양을 모니터링하기 위한 방법을 설명하기 위한 화면 예이다. Next, a method for monitoring the ocean according to an embodiment of the present invention will be described. 9 is a flowchart illustrating a method for monitoring the ocean according to an embodiment of the present invention. 10 is a screen example for explaining a method for monitoring the ocean according to an embodiment of the present invention.
도 9를 참조하면, 선박검출부(200)는 S310 단계에서 통신모듈(11)을 통해 해상부이(30)로부터 해상부이(30)의 사방을 촬영한 영상인 360도 영상을 수신한다. Referring to FIG. 9 , the
그러면, 선박검출부(200)는 S320 단계에서 선박검출모듈(BDM)을 통해 360도 영상을 분석하여 적어도 하나의 후보값을 도출한다. 이때, 선박검출모듈(BDM)은 360도 영상을 복수의 셀로 구분한 후, 복수의 셀 각각에 중심 좌표(dx, dy)를 가지는 복수의 영역상자(BB: Bounding Box) 각각이 속한 셀을 기준으로 하는 중심 좌표(dx, dy)와 중심 좌표(dx, dy)를 기준으로 폭(w) 및 높이(h)를 정의하는 영역상자(dx, dy, w, h), 영역상자(BB) 내에 객체가 존재할 확률을 나타내는 신뢰도(confidence: 0.0~1.0) 및 영역상자(BB) 내의 객체가 선박일 확률을 후보값으로 산출한다. Then, the
이어서, 선박검출부(200)는 S330 단계에서 적어도 하나의 후보값으로부터 선박이 포함된 영역상자(BB)를 검출한다. 이때, 선박검출부(200)는 후보값에 해당하는 복수의 영역상자(BB) 중 적어도 하나의 선박이 포함된 영역상자(BB)를 검출한다. 이때, 선박검출부(200)는 영역상자(BB)의 신뢰도가 제1 임계치 이상이고, 해당 영역상자(BB) 내의 객체가 선박일 확률이 제2 임계치 이상인 영역상자(BB)를 선택할 수 있다. 여기서, 제1 임계치 및 제2 임계치는 미리 설정된 값이다. 특히, 선박검출부(200)는 후보값 중 영역상자(BB)의 신뢰도가 제1 임계치 이상이고 해당 영역상자(BB) 내의 객체가 선박일 확률이 제2 임계치 이상인 영역상자(BB)가 복수이고, 그 복수의 영역상자(BB)가 차지하는 영역이 중첩된 경우, 중첩된 복수의 영역상자(BB) 중 면적이 가장 큰 영역상자(BB)만 검출하고, 그 외의 영역상자(BB)는 제외한다. Subsequently, the
다음으로, 관제부(400)는 S340 단계에서 검출된 선박이 포함된 영역상자(BB)가 360도 영상에서 차지하는 비율에 따라 위험도를 산출한다. Next, the control unit 400 calculates the risk according to the ratio of the area box BB including the vessel detected in step S340 occupied in the 360-degree image.
예컨대, 도 10의 (a)에 360도 영상에서 검출된 포함된 객체가 선박인 영역박스(BB)가 도시되었다. 관제부(400)는 도 10의 (b)에 도시된 바와 같이, 360도 영상을 복수의 구역으로 구분하고, 도 10의 (c) 및 (d)에 도시된 바와 같이, 구분된 복수의 구역 중 영역상자(BB)의 적어도 일부가 포함된 구역 도출한다. 도출 결과, 전체 63개 구역 중 24개의 구역이 영역상자(BB)의 적어도 일부가 포함된 구역으로 도출되었다. 이는 선박이 포함된 영역상자(BB)가 차지하는 비율이 38%(0.38)임을 나타낸다. For example, the area box BB in which the included object detected in the 360 degree image is a ship is shown in (a) of FIG. 10 . The controller 400 divides the 360-degree image into a plurality of zones, as shown in (b) of FIG. 10, and as shown in FIGS. 10 (c) and (d), a plurality of zones A region containing at least a part of the middle area box BB is derived. As a result of the derivation, 24 areas out of a total of 63 areas were derived as areas including at least a part of the area box (BB). This indicates that 38% (0.38) of the area box (BB) including ships is occupied.
관제부(400)는 S350 단계에서 앞서(S340) 산출된 위험도가 소정 경계치 이상이면, 그 위험, 예컨대, 충돌 위험을 경고한다. 예컨대, 경계치가 35%(0.35)라고 가정하면, 도 10의 (d)에서 산출된 바와 같이, 위험도가 38%(0.38)일 때, 관제부(400)는 도 10의 (e)와 같이, 충돌 위험을 경고할 수 있다. 이때, 관제부(400)는 통신모듈(11)을 통해 관리자의 휴대 장치 혹은 해당 선박 및 관련 기관에서 운용하고 있는 장치로 충돌 위험을 경고하고 하는 메시지를 전송할 수 있다. The control unit 400 warns of the risk, for example, a collision risk, if the degree of risk calculated earlier ( S340 ) in step S350 is greater than or equal to a predetermined threshold. For example, assuming that the threshold is 35% (0.35), as calculated in (d) of FIG. 10, when the risk is 38% (0.38), the control unit 400 is It can warn you of a collision hazard. In this case, the control unit 400 may transmit a message warning of the risk of collision to the manager's portable device or a device operated by the vessel and related organizations through the
한편, 관제서버(10)는 360도 영상을 이용하여 해무량을 검출할 수 있다. 이러한 방법에 대해 설명하기로 한다. 도 11은 본 발명의 실시예에 따른 해양을 모니터링하기 위한 방법을 설명하기 위한 흐름도이다. 도 12는 본 발명의 실시예에 따른 해양을 모니터링하기 위한 방법을 설명하기 위한 화면 예이다. Meanwhile, the
도 11을 참조하면, 해무검출부(300)는 S410 단계에서 통신모듈(11)을 통해 해상부이(30)로부터 해상부이(30)의 사방을 촬영한 영상인 360도 영상을 수신한다. 예를 들면, 도 8의 (A)는 360도 영상의 일례가 될 수 있다. 다만, 해무학습영상과의 차이는 레이블이 부여되지 않는 것이다. Referring to FIG. 11 , the sea
그러면, 해무검출부(300)는 S420 단계에서 해무검출모듈(FDM)을 통해 360도 영상을 분석하여 연산값을 도출한다. 이러한 S420 단계에 대해 보다 구체적으로 설명하면 다음과 같다. 먼저, 해무검출부(300)는 도 8의 (U)와 같이, 360도 영상을 복수의 영역으로 구분한 후, 해무검출모델(FDM)에 입력한다. 그러면, 해무검출모델(FDM)은 도 8의 (S)에 도시된 바와 같이, 360도 영상의 복수의 영역 각각에 대해 학습된 가중치가 적용되는 복수의 연산을 수행하여 복수의 영역 각각에 대한 연산값을 산출한다. 이때, 해무검출모델(FDM)은 360도 영상의 각 영역에서 해무를 나타내는 픽셀의 비율, 즉, 복수의 영역 각각의 해무가 차지하는 비율을 연산값으로 산출한다. 즉, 연산값은 360도 영상의 복수의 영역 각각에 해무가 포함되어 있을 확률을 나타낸다. 360도 영상의 복수의 영역의 연산값을 나타낸 화면 예가 도 8의 (c)에 도시되었다. Then, the sea
다음으로, 관제부(400)는 S430 단계에서 연산값을 기초로 해무량을 산출한다. 관제부(400)는 일 실시예에 따르면, 도 12에 도시된 바와 같이, 복수의 영역의 해무가 포함되어 있을 확률의 평균, 즉, 전체 연산값의 평균을 산출하여 해당 해상부이(30)의 주변 전체의 해무량 70%(0.7032)를 산출할 수 있다. 다른 실시예에 따르면, 지정되는 방향 별로 소정 수의 영역의 해무가 포함되어 있을 확률의 평균, 즉, 복수의 영역 중 지정되는 방향에 대응하는 영역의 연산값의 평균을 산출하여 해당 해상부이(30)를 기준으로 지정된 방향의 해무량 70%(0.7075)를 산출할 수 있다. Next, the control unit 400 calculates the amount of haze based on the calculated value in step S430 . According to an embodiment, as shown in FIG. 12 , the control unit 400 calculates the average of the probabilities that sea fog is included in a plurality of areas, that is, the average of the total calculated values of the
그런 다음, 관제부(400)는 S440 단계에서 앞서 산출된 해무량을 리포트한다. 특히, 관제부(400)는 360도 영상을 전송한 해상부이(30)가 설치된 위치와 함께 해무량을 리포트한다. 이때, 관제부(400)는 통신모듈(11)을 통해 미리 지정된 대상, 예컨대, 기상청, 관리자 등이 사용하는 장치에 해무량을 리포트할 수 있다. Then, the control unit 400 reports the previously calculated amount of haze in step S440. In particular, the control unit 400 reports the amount of sea fog together with the location where the
도 13은 본 발명의 실시예에 따른 컴퓨팅 장치를 나타내는 도면이다. 도 13의 컴퓨팅 장치(TN100)는 본 명세서에서 기술된 장치, 예컨대, 관제서버(10), 해상부이(30) 등이 될 수 있다. 13 is a diagram illustrating a computing device according to an embodiment of the present invention. The computing device TN100 of FIG. 13 may be a device described herein, for example, the
도 13의 실시예에서, 컴퓨팅 장치(TN100)는 적어도 하나의 프로세서(TN110), 송수신 장치(TN120), 및 메모리(TN130)를 포함할 수 있다. 또한, 컴퓨팅 장치(TN100)는 저장 장치(TN140), 입력 인터페이스 장치(TN150), 출력 인터페이스 장치(TN160) 등을 더 포함할 수 있다. 컴퓨팅 장치(TN100)에 포함된 구성 요소들은 버스(bus)(TN170)에 의해 연결되어 서로 통신을 수행할 수 있다. In the embodiment of FIG. 13 , the computing device TN100 may include at least one processor TN110 , a transceiver device TN120 , and a memory TN130 . In addition, the computing device TN100 may further include a storage device TN140 , an input interface device TN150 , an output interface device TN160 , and the like. Components included in the computing device TN100 may be connected by a bus TN170 to communicate with each other.
프로세서(TN110)는 메모리(TN130) 및 저장 장치(TN140) 중에서 적어도 하나에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(TN110)는 중앙 처리 장치(CPU: central processing unit), 그래픽 처리 장치(GPU: graphics processing unit), 또는 본 발명의 실시예에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 프로세서(TN110)는 본 발명의 실시예와 관련하여 기술된 절차, 기능, 및 방법 등을 구현하도록 구성될 수 있다. 프로세서(TN110)는 컴퓨팅 장치(TN100)의 각 구성 요소를 제어할 수 있다. The processor TN110 may execute a program command stored in at least one of the memory TN130 and the storage device TN140. The processor TN110 may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which methods according to an embodiment of the present invention are performed. The processor TN110 may be configured to implement procedures, functions, methods, and the like described in connection with an embodiment of the present invention. The processor TN110 may control each component of the computing device TN100 .
메모리(TN130) 및 저장 장치(TN140) 각각은 프로세서(TN110)의 동작과 관련된 다양한 정보를 저장할 수 있다. 메모리(TN130) 및 저장 장치(TN140) 각각은 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(TN130)는 읽기 전용 메모리(ROM: read only memory) 및 랜덤 액세스 메모리(RAM: random access memory) 중에서 적어도 하나로 구성될 수 있다.Each of the memory TN130 and the storage device TN140 may store various information related to the operation of the processor TN110 . Each of the memory TN130 and the storage device TN140 may be configured as at least one of a volatile storage medium and a non-volatile storage medium. For example, the memory TN130 may include at least one of a read only memory (ROM) and a random access memory (RAM).
송수신 장치(TN120)는 유선 신호 또는 무선 신호를 송신 또는 수신할 수 있다. 송수신 장치(TN120)는 네트워크에 연결되어 통신을 수행할 수 있다. The transceiver TN120 may transmit or receive a wired signal or a wireless signal. The transceiver TN120 may be connected to a network to perform communication.
한편, 전술한 본 발명의 실시예에 따른 방법은 다양한 컴퓨터수단을 통하여 판독 가능한 프로그램 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다. Meanwhile, the method according to the embodiment of the present invention described above may be implemented in the form of a program readable by various computer means and recorded in a computer readable recording medium. Here, the recording medium may include a program command, a data file, a data structure, etc. alone or in combination. The program instructions recorded on the recording medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer software. For example, the recording medium includes magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and magneto-optical media such as floppy disks ( magneto-optical media) and hardware devices specially configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions may include not only machine language such as generated by a compiler, but also a high-level language that can be executed by a computer using an interpreter or the like. Such hardware devices may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
이상 본 발명을 몇 가지 바람직한 실시예를 사용하여 설명하였으나, 이들 실시예는 예시적인 것이며 한정적인 것이 아니다. 이와 같이, 본 발명이 속하는 기술분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 균등론에 따라 다양한 변화와 수정을 가할 수 있음을 이해할 것이다. Although the present invention has been described above using several preferred embodiments, these examples are illustrative and not restrictive. As such, those of ordinary skill in the art to which the present invention pertains will understand that various changes and modifications can be made in accordance with the doctrine of equivalents without departing from the spirit of the present invention and the scope of rights set forth in the appended claims.
10: 관제서버 11: 통신모듈
12: 저장모듈 13: 제어모듈
30: 해상부이 31: 카메라부
32: 통신부 33: 저장부
34: 제어부 100: 모델생성부
200: 선박검출부 300: 해무검출부
400: 관제부 10: control server 11: communication module
12: storage module 13: control module
30: marine buoy 31: camera unit
32: communication unit 33: storage unit
34: control unit 100: model generation unit
200: ship detection unit 300: sea fog detection unit
400: control unit
Claims (14)
통신모듈이 해상부이의 사방을 촬영한 영상인 360도 영상을 수신하는 단계;
선박검출부가 심층학습모델인 선박검출모델을 통해 상기 360도 영상 내에서 선박을 검출하는 단계; 및
관제부가 상기 검출된 선박이 차지하는 영역을 나타내는 영역상자가 상기 360도 영상에서 차지하는 비율에 따라 위험도를 산출하는 단계;
를 포함하며,
상기 360도 영상을 수신하는 단계 전,
모델생성부가 선박학습영상을 마련하는 단계;
상기 모델생성부가 상기 선박학습영상에 포함된 객체가 선박이며, 선박이 차지하는 영역을 나타내는 영역상자 및 영역상자의 신뢰도를 포함하는 레이블을 부여하는 단계;
상기 모델생성부가 상기 선박학습영상을 초기화된 선박검출모델에 입력하는 단계;
상기 모델생성부가 상기 초기화된 선박검출모델이 선박이 차지하는 영역을 나타내는 영역상자, 영역상자의 객체가 선박일 확률 및 영역상자의 신뢰도를 포함하는 후보값을 산출하면, 손실함수에 따라 상기 후보값과 상기 레이블의 차이를 나타내는 손실을 산출하는 단계; 및
상기 모델생성부가 상기 후보값과 상기 레이블의 차이가 최소화되도록 상기 선박검출모델의 가중치를 수정하는 최적화를 수행하는 단계;
를 더 포함하며,
상기 모델생성부는
손실함수
에 따라 손실을 산출하고,
상기 S는 셀의 수이고,
상기 B는 한 셀 내의 영역상자의 수이고,
상기 dx, dy는 영역상자의 중심좌표이고,
상기 w는 영역상자의 폭이고,
상기 h는 영역상자의 높이이고,
상기 C는 신뢰도이고,
상기 pi(c)는 i 번째 셀의 객체가 선박일 확률이고,
상기 i는 객체가 존재하는 셀을 나타내는 인덱스이고,
상기 j는 예측된 영역상자를 나타내는 인덱스이고,
상기 및 상기 는 하이퍼파라미터이고,
상기 는 셀에 객체가 있는 경우를 나타내고,
상기 는 셀 i에 있는 영역상자 j를 나타내는 것을 특징으로 하는
해양을 모니터링하기 위한 방법. A method for monitoring an ocean comprising:
receiving, by the communication module, a 360-degree image that is an image taken from all directions of the marine buoy;
detecting a ship in the 360-degree image through a ship detection model, which is a deep learning model, by a ship detection unit; and
calculating, by the control unit, the degree of risk according to the ratio of the area box representing the area occupied by the detected vessel in the 360-degree image;
includes,
Before receiving the 360 degree image,
preparing a ship learning image by the model generation unit;
applying, by the model generator, a label including the reliability of the area box and the area box indicating the area occupied by the ship, wherein the object included in the ship learning image is a ship;
inputting, by the model generator, the vessel learning image to an initialized vessel detection model;
When the model generating unit calculates a candidate value including a region box indicating the area occupied by the initialized ship detection model by a vessel, a probability that an object of the region box is a vessel, and the reliability of the region box, the candidate value and the calculating a loss representing the difference between the labels; and
performing, by the model generator, an optimization of modifying the weight of the ship detection model so that the difference between the candidate value and the label is minimized;
further comprising,
The model generation unit
loss function
Calculate the loss according to
where S is the number of cells,
Where B is the number of area boxes in one cell,
Wherein dx, dy are the center coordinates of the area box,
where w is the width of the area box,
Where h is the height of the area box,
where C is the reliability,
The pi(c) is the probability that the object of the i-th cell is a ship,
wherein i is an index indicating a cell in which an object exists,
Where j is an index indicating the predicted area box,
remind and said is a hyperparameter,
remind indicates when there is an object in the cell,
remind represents the area box j in cell i.
A method for monitoring the ocean.
상기 위험도를 산출하는 단계는
상기 관제부가 상기 360도 영상을 복수의 구역으로 구분하고, 구분된 복수의 구역 중 상기 영역상자의 적어도 일부가 포함된 구역의 비율을 위험도로 산출하는 것을 특징으로 하는
해양을 모니터링하기 위한 방법. According to claim 1,
The step of calculating the risk is
The control unit divides the 360-degree image into a plurality of zones, and calculates a risk of a ratio of a zone including at least a part of the area box among the divided plurality of zones.
A method for monitoring the ocean.
상기 선박을 검출하는 단계는
상기 선박검출모델이 상기 360도 영상을 복수의 셀로 구분하는 단계; 및
상기 선박검출모델이 상기 복수의 셀 각각에 중심 좌표를 가지는 복수의 영역상자를 검출하고, 상기 검출된 복수의 영역상자 각각에 대해 영역상자 내에 객체가 존재할 확률을 나타내는 신뢰도와, 상기 검출된 복수의 영역상자 각각에 대해 영역상자 내의 객체가 선박일 확률을 후보값으로 산출하는 단계;
를 포함하는 것을 특징으로 하는
해양을 모니터링하기 위한 방법. According to claim 1,
The step of detecting the vessel is
dividing, by the ship detection model, the 360-degree image into a plurality of cells; and
The ship detection model detects a plurality of area boxes having center coordinates in each of the plurality of cells, and for each of the detected plurality of area boxes, a reliability indicating the probability that an object exists in the area box, and the detected plurality of area boxes calculating a probability that the object in the area box is a ship as a candidate value for each area box;
characterized by comprising
A method for monitoring the ocean.
상기 선박을 검출하는 단계는
상기 후보값으로 산출하는 단계 후,
상기 선박검출부가 상기 후보값에 포함된 복수의 영역상자 중 신뢰도가 제1 임계치 이상이고, 영역상자 내의 객체가 선박일 확률이 제2 임계치 이상인 영역상자를 검출하는 단계;
를 더 포함하는 것을 특징으로 하는
해양을 모니터링하기 위한 방법. 6. The method of claim 5,
The step of detecting the vessel is
After calculating the candidate value,
detecting, by the ship detection unit, an area box having a reliability equal to or greater than a first threshold value and a probability that an object in the area box is a ship among a plurality of area boxes included in the candidate value is equal to or greater than a second threshold value;
characterized in that it further comprises
A method for monitoring the ocean.
상기 선박을 검출하는 단계는
상기 후보값으로 산출하는 단계 후,
상기 후보값에 포함된 복수의 영역상자 중 신뢰도가 제1 임계치 이상이면서, 영역상자 내의 객체가 선박일 확률이 제2 임계치 이상인 영역상자가 복수이고, 복수의 영역상자가 차지하는 영역이 중첩된 경우, 복수의 영역상자 중 면적이 가장 큰 영역 상자를 검출하는 단계;
를 더 포함하는 것을 특징으로 하는
해양을 모니터링하기 위한 방법. 6. The method of claim 5,
The step of detecting the vessel is
After calculating the candidate value,
Among the plurality of area boxes included in the candidate value, when the reliability is equal to or greater than the first threshold, there are a plurality of area boxes in which the probability that the object in the area box is a ship is equal to or greater than the second threshold, and the areas occupied by the plurality of area boxes overlap; detecting an area box having the largest area among the plurality of area boxes;
characterized in that it further comprises
A method for monitoring the ocean.
해상부이의 사방을 촬영한 영상인 360도 영상을 수신하는 통신모듈;
심층학습모델인 선박검출모델을 통해 상기 360도 영상 내에서 선박을 검출하는 선박검출부; 및
상기 검출된 선박이 차지하는 영역을 나타내는 영역상자가 상기 360도 영상에서 차지하는 비율에 따라 위험도를 산출하는 관제부;
를 포함하며,
상기 장치는
상기 선박검출모델을 학습시키기 위한 모델생성부;
를 더 포함하며,
상기 모델생성부는
선박학습영상을 마련하고,
상기 선박학습영상에 포함된 객체가 선박이며, 선박이 차지하는 영역을 나타내는 영역상자 및 영역상자의 신뢰도를 포함하는 레이블을 부여하고,
상기 선박학습영상을 초기화된 선박검출모델에 입력하고,
상기 모델생성부가 상기 초기화된 선박검출모델이 선박이 차지하는 영역을 나타내는 영역상자, 영역상자의 객체가 선박일 확률 및 영역상자의 신뢰도를 포함하는 후보값을 산출하면, 손실함수에 따라 상기 후보값과 상기 레이블의 차이를 나타내는 손실을 산출하고,
상기 후보값과 상기 레이블의 차이가 최소화되도록 상기 선박검출모델의 가중치를 수정하는 최적화를 수행하고,
상기 모델생성부는
손실함수
에 따라 손실을 산출하고,
상기 S는 셀의 수이고,
상기 B는 한 셀 내의 영역상자의 수이고,
상기 dx, dy는 영역상자의 중심좌표이고,
상기 w는 영역상자의 폭이고,
상기 h는 영역상자의 높이이고,
상기 C는 신뢰도이고,
상기 pi(c)는 i 번째 셀의 객체가 선박 클래스일 확률이고,
상기 i는 객체가 존재하는 셀을 나타내는 인덱스이고,
상기 j는 예측된 영역상자를 나타내는 인덱스이고,
상기 및 상기 는 하이퍼파라미터이고,
상기 는 셀에 객체가 있는 경우를 나타내고,
상기 는 셀 i에 있는 영역상자 j를 나타내는 것을 특징으로 하는
해양을 모니터링하기 위한 장치. A device for monitoring the ocean comprising:
a communication module for receiving a 360-degree image that is an image taken from all directions of the marine buoy;
a ship detection unit that detects a ship in the 360 degree image through a ship detection model that is a deep learning model; and
a control unit for calculating the degree of risk according to the ratio of the area box representing the area occupied by the detected vessel in the 360-degree image;
includes,
the device is
a model generator for learning the ship detection model;
further comprising,
The model generation unit
Prepare a ship learning video,
The object included in the ship learning image is a ship, and a label including a region box indicating the area occupied by the vessel and a label including the reliability of the region box is given,
Input the vessel learning image to the initialized vessel detection model,
When the model generating unit calculates a candidate value including a region box indicating the area occupied by the initialized ship detection model by a vessel, a probability that an object of the region box is a vessel, and the reliability of the region box, the candidate value and the Calculate the loss representing the difference of the label,
Optimization of modifying the weight of the ship detection model so that the difference between the candidate value and the label is minimized,
The model generation unit
loss function
Calculate the loss according to
where S is the number of cells,
Where B is the number of area boxes in one cell,
Wherein dx, dy are the center coordinates of the area box,
where w is the width of the area box,
Where h is the height of the area box,
where C is the reliability,
The pi(c) is the probability that the object of the i-th cell is a ship class,
wherein i is an index indicating a cell in which an object exists,
Where j is an index indicating the predicted area box,
remind and said is a hyperparameter,
remind indicates when there is an object in the cell,
remind represents the area box j in cell i.
A device for monitoring the ocean.
상기 관제부는
상기 360도 영상을 복수의 구역으로 구분하고, 구분된 복수의 구역 중 상기 영역상자의 적어도 일부가 포함된 구역의 비율을 위험도로 산출하는 것을 특징으로 하는
해양을 모니터링하기 위한 장치. 9. The method of claim 8,
the control unit
The 360-degree image is divided into a plurality of zones, and a ratio of a zone including at least a part of the area box among the divided plurality of zones is calculated as a risk.
A device for monitoring the ocean.
상기 선박검출모델은
상기 360도 영상을 복수의 셀로 구분하고, 상기 복수의 셀 각각에 중심 좌표를 가지는 복수의 영역상자를 검출하고, 상기 검출된 복수의 영역상자 각각에 대해 영역상자 내에 객체가 존재할 확률을 나타내는 신뢰도와 상기 검출된 복수의 영역상자 각각에 대해 영역상자 내의 객체가 선박일 확률을 후보값으로 산출하는 것을 특징으로 하는
해양을 모니터링하기 위한 장치. 9. The method of claim 8,
The ship detection model is
The 360-degree image is divided into a plurality of cells, a plurality of area boxes having center coordinates in each of the plurality of cells are detected, and a reliability indicating the probability that an object exists in the area box for each of the detected plurality of area boxes is obtained. For each of the detected plurality of area boxes, the probability that the object in the area box is a ship is calculated as a candidate value
A device for monitoring the ocean.
상기 선박검출부는
상기 후보값에 포함된 복수의 영역상자 중 영역상자의 신뢰도가 제1 임계치 이상이고, 영역상자 내의 객체가 선박일 확률이 제2 임계치 이상인 영역상자를 검출하는 것을 특징으로 하는
해양을 모니터링하기 위한 장치. 13. The method of claim 12,
The ship detection unit
Among the plurality of area boxes included in the candidate value, the reliability of the area box is greater than or equal to a first threshold, and the probability that the object in the area box is a ship is greater than or equal to a second threshold.
A device for monitoring the ocean.
상기 선박검출부는
상기 후보값에 포함된 복수의 영역상자 중 영역상자의 신뢰도가 제1 임계치 이상이면서, 영역상자 내의 객체가 선박일 확률이 제2 임계치 이상인 영역상자가 복수이고, 복수의 영역상자가 차지하는 영역이 중첩된 경우, 복수의 영역상자 중 면적이 가장 큰 영역 상자를 검출하는 것을 특징으로 하는
해양을 모니터링하기 위한 장치. 13. The method of claim 12,
The ship detection unit
Among the plurality of area boxes included in the candidate value, there are a plurality of area boxes in which the reliability of the area box is equal to or greater than the first threshold and the probability that the object in the area box is a ship is equal to or greater than the second threshold, and the areas occupied by the plurality of area boxes overlap. If it is, characterized in that the area box with the largest area among the plurality of area boxes is detected
A device for monitoring the ocean.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210072360A KR102311089B1 (en) | 2021-06-03 | 2021-06-03 | Apparatus and method for monitoring the ocean using smart marine buoys |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210072360A KR102311089B1 (en) | 2021-06-03 | 2021-06-03 | Apparatus and method for monitoring the ocean using smart marine buoys |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102311089B1 true KR102311089B1 (en) | 2021-10-07 |
Family
ID=78114521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210072360A KR102311089B1 (en) | 2021-06-03 | 2021-06-03 | Apparatus and method for monitoring the ocean using smart marine buoys |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102311089B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116484954A (en) * | 2023-03-20 | 2023-07-25 | 中国人民解放军军事科学院战略评估咨询中心 | Artificial intelligence offshore voltaic model generation method, computer program and storage medium |
KR102642985B1 (en) * | 2022-11-02 | 2024-03-04 | 황용희 | Aquaculture safety and security management system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100756926B1 (en) | 2006-07-12 | 2007-09-07 | 한국해양연구원 | A spilled oil detection equipment and system |
KR101152016B1 (en) * | 2012-02-21 | 2012-06-08 | (주)세영통신 | System for receiving and transmitting status information using buoy |
KR102005559B1 (en) * | 2018-09-04 | 2019-08-07 | 씨드로닉스(주) | Situation awareness method using image segmentation |
KR102175531B1 (en) * | 2020-04-23 | 2020-11-06 | 호서대학교 산학협력단 | Apparatus for generating training data including a label for training an artificial neural network, method therefor, and computer recordable medium storing program to perform the method |
KR102199627B1 (en) * | 2020-05-18 | 2021-01-07 | 호서대학교 산학협력단 | Apparatus for recognizing approaching vessel considering distance objects based on Deep Neural Networks, method therefor, and computer recordable medium storing program to perform the method |
-
2021
- 2021-06-03 KR KR1020210072360A patent/KR102311089B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100756926B1 (en) | 2006-07-12 | 2007-09-07 | 한국해양연구원 | A spilled oil detection equipment and system |
KR101152016B1 (en) * | 2012-02-21 | 2012-06-08 | (주)세영통신 | System for receiving and transmitting status information using buoy |
KR102005559B1 (en) * | 2018-09-04 | 2019-08-07 | 씨드로닉스(주) | Situation awareness method using image segmentation |
KR102175531B1 (en) * | 2020-04-23 | 2020-11-06 | 호서대학교 산학협력단 | Apparatus for generating training data including a label for training an artificial neural network, method therefor, and computer recordable medium storing program to perform the method |
KR102199627B1 (en) * | 2020-05-18 | 2021-01-07 | 호서대학교 산학협력단 | Apparatus for recognizing approaching vessel considering distance objects based on Deep Neural Networks, method therefor, and computer recordable medium storing program to perform the method |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102642985B1 (en) * | 2022-11-02 | 2024-03-04 | 황용희 | Aquaculture safety and security management system |
CN116484954A (en) * | 2023-03-20 | 2023-07-25 | 中国人民解放军军事科学院战略评估咨询中心 | Artificial intelligence offshore voltaic model generation method, computer program and storage medium |
CN116484954B (en) * | 2023-03-20 | 2023-11-10 | 中国人民解放军军事科学院战略评估咨询中心 | Artificial intelligent offshore voltaic model generation method and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102414452B1 (en) | Target detection and training of target detection networks | |
US10782691B2 (en) | Deep learning and intelligent sensing system integration | |
US10503174B1 (en) | Method and device for optimized resource allocation in autonomous driving on the basis of reinforcement learning using data from lidar, radar, and camera sensor | |
US10809376B2 (en) | Systems and methods for detecting objects in underwater environments | |
US11543534B2 (en) | System and method for three-dimensional object detection | |
US10977501B2 (en) | Object classification using extra-regional context | |
KR102311089B1 (en) | Apparatus and method for monitoring the ocean using smart marine buoys | |
KR20200125731A (en) | Neural networks for object detection and characterization | |
Bovcon et al. | MODS—A USV-oriented object detection and obstacle segmentation benchmark | |
Thompson et al. | Efficient lidar-based object segmentation and mapping for maritime environments | |
CN114419467A (en) | Training method and device for target detection model of rotating ship and storage medium | |
Pereira et al. | Advancing autonomous surface vehicles: A 3d perception system for the recognition and assessment of docking-based structures | |
US10895802B1 (en) | Deep learning and intelligent sensing systems for port operations | |
Lin et al. | Maritime environment perception based on deep learning | |
KR102315080B1 (en) | Apparatus and method for monitoring the ocean using smart marine buoys | |
Thompson | Maritime object detection, tracking, and classification using lidar and vision-based sensor fusion | |
US11941875B2 (en) | Processing perspective view range images using neural networks | |
KR20240036529A (en) | Device and method for monitoring ship and port | |
KR20220045762A (en) | System for automatic recognition and monitoring of vessel using artificial intelligence image processing and method for providing the same | |
CN114445572A (en) | Deeplab V3+ based method for instantly positioning obstacles and constructing map in unfamiliar sea area | |
Bhaganagar et al. | A Novel Machine-Learning Framework With a Moving Platform for Maritime Drift Calculations | |
Chen et al. | An obstacle detection method for USV by fusing of radar and motion stereo | |
Knébel | Detecting obstacles from camera image at open sea | |
KR102650152B1 (en) | System and method for detection of pirate ship by using 4d radar and computer-readable recording medium including the same | |
US20230342944A1 (en) | System and Method for Motion Prediction in Autonomous Driving |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |