KR20220008184A - Method for training a model to identify hull blocks based on a convolutional neural network - Google Patents

Method for training a model to identify hull blocks based on a convolutional neural network Download PDF

Info

Publication number
KR20220008184A
KR20220008184A KR1020200086465A KR20200086465A KR20220008184A KR 20220008184 A KR20220008184 A KR 20220008184A KR 1020200086465 A KR1020200086465 A KR 1020200086465A KR 20200086465 A KR20200086465 A KR 20200086465A KR 20220008184 A KR20220008184 A KR 20220008184A
Authority
KR
South Korea
Prior art keywords
images
degrees
hull block
neural network
convolutional neural
Prior art date
Application number
KR1020200086465A
Other languages
Korean (ko)
Other versions
KR102522205B1 (en
Inventor
노재규
전해명
Original Assignee
군산대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 군산대학교산학협력단 filed Critical 군산대학교산학협력단
Priority to KR1020200086465A priority Critical patent/KR102522205B1/en
Publication of KR20220008184A publication Critical patent/KR20220008184A/en
Application granted granted Critical
Publication of KR102522205B1 publication Critical patent/KR102522205B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/15Vehicle, aircraft or watercraft design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Architecture (AREA)
  • Computer Graphics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Image Analysis (AREA)

Abstract

The present invention relates to a hull block identification model learning method based on a convolutional neural network (CNN) which models and learns a plurality of images obtained by rotating a hull block object in 3D CAD data by multi-views based on a CNN, thereby automatically identifying and classifying a hull block from data obtained from a camera.

Description

합성곱신경망에 기반한 선체 블록 식별 모델 학습 방법{METHOD FOR TRAINING A MODEL TO IDENTIFY HULL BLOCKS BASED ON A CONVOLUTIONAL NEURAL NETWORK}Method for learning hull block identification model based on convolutional neural network

본 발명은 합성곱신경망에 기반한 선체 블록 식별 모델 학습 방법에 관한 것으로서, 보다 구체적으로는, 3차원 캐드(CAD) 데이터 내 선체 블록 객체를 다시점으로 회전시켜 획득되는 다수의 영상을 합성곱신경망(CNN)에 기반하여 모델링 및 학습시킴으로써, 카메라로부터 획득되는 데이터로부터 선체 블럭을 자동으로 식별, 분류 할 수 있도록 하는 합성곱신경망에 기반한 선체 블록 식별 모델 학습 방법에 관한 것이다.The present invention relates to a method for learning a hull block identification model based on a convolutional neural network, and more specifically, to a convolutional neural network ( By modeling and learning based on CNN), it relates to a method for learning a hull block identification model based on a convolutional neural network that can automatically identify and classify hull blocks from data acquired from a camera.

일반적으로, 선박의 생산 공정 과정에서 일정계획 상 가장 많은 기간이 소요되는 부분은 도크 탑재 전까지의 단계이다. 대형조선소에서 건조하는 대형 선박은 크기가 매우 크기 때문에 전체 선박을 수백 개 단위의 블록으로 분할하여 생산 설계한다. 대형 선박을 구성하는 수백 개의 블록들은 다양한 작업장을 거쳐 조립되는데 이 과정에서 하루에 적게는 수십 번 많게는 수백 번 공정이 수행되어야 하는 작업장의 적치장으로 반입, 반출하게 된다.In general, the part that takes the most time according to the schedule in the ship's production process is the stage before docking. Because large ships built at large shipyards are very large, the entire ship is divided into blocks of hundreds of units for production and design. Hundreds of blocks constituting a large ship are assembled through various workshops, and in this process, they are brought in and out of the warehouse where the process must be performed at least several dozen times a day and at most hundreds of times a day.

또한 작업이 완료되거나 할당되지 않은 블록들은 옥외 적치장에 임시 배치되기도 하며 어떤 이유로 계획된 작업장과 같은 작업이 가능한 대안 선호 작업장으로 이동하여 작업이 진행되기도 한다. 이렇게 블록은 여러 이유로 인해 사전에 구성된 계획과 달리 유동적으로 이동하며 공정 단계를 거친다.In addition, blocks with completed or unassigned work are temporarily placed in an outdoor stockyard, or for some reason, the work is carried out by moving to an alternative preferred work site where work is possible, such as the planned work site. In this way, the blocks move fluidly and go through process steps, unlike the pre-configured plan for various reasons.

일정계획 상 많은 기간이 소요되는 블록 공정 단계를 차질 없이 진행하기 위해서는 블록을 체계적으로 관리할 필요성이 있다. 특히 일정계획에 의해 수립된 기간 안에 도크 탑재 전 단계인 선행 탑재 과정에서 대조립 블록이 정해진 기간 내에 조립될 수 있도록 하기 위해서는 대조립 블록을 조립하기 위한 블록들이 위치한 작업장 정보를 확보해야 한다.It is necessary to systematically manage blocks in order to smoothly proceed with the block process step, which takes a lot of time according to the schedule. In particular, in order to ensure that the assembly blocks can be assembled within a set period in the pre-mounting process, which is the stage before dock mounting, within the period established by the schedule, information on the workshop where the blocks for assembling the assembly blocks are located must be secured.

대부분의 조선소에서는 현장작업자가 하루 동안 기록한 작업내용을 일과시간 후 PC 시스템에 입력하는 이중 작업에 의존한다. 또한 위치 추적을 위한 GPS와 블록 이동 정보를 입력하는 PDA를 트랜스포터에 설치하여 블록 위치를 파악하는데 사용하기도 하였으나 네트워크 속도 및 입력 장치의 불편함으로 이동 실적이 누락되는 경우가 많은 문제가 있다.Most shipyards rely on the double task of field workers entering the work recorded during the day into the PC system after work hours. In addition, although GPS for location tracking and a PDA for inputting block movement information were installed in the transporter and used to determine the block location, there is a problem in many cases where movement performance is omitted due to network speed and inconvenient input devices.

이처럼 작업자가 위치 정보를 수작업으로 입력하는 시스템의 경우 입력 장치의 문제 또는 작업자의 판단오류나 오입력으로 잘못된 정보가 입력되는 문제가 발생할 수 있다. 잘못 입력된 블록 위치의 정보로 인해 후에 해당 블록을 찾기 위해서는 적치장의 크기와 비례하여 수십 분에서 수 시간정도의 시간이 소모도기도 한다.As such, in the case of a system in which an operator manually inputs location information, a problem in the input device or a problem in which incorrect information is input due to an operator's judgment error or erroneous input may occur. Due to the wrongly inputted block location information, it may take several tens of minutes to several hours to find the corresponding block later in proportion to the size of the stockyard.

이는 다음 작업을 진행하는 것에 문제를 발생시키고 결국 일정계획에 차질이 생기게 된다. 이처럼 조선소에서 블록의 위치를 파악하는 것은 일정계획에 차질이 생기지 않도록 하기 위해 중요하다.This causes problems in proceeding with the next task, which eventually leads to setbacks in the schedule. In this way, it is important to know the location of the block in the shipyard to avoid any disruption to the schedule.

블록의 위치를 추적하기 위해서는 시스템에 블록 좌표와 블록 번호 둘 다 정학하게 입력되어야 한다. 입력된 블록의 위치 정보에서 블록 좌표나 블록 번호 둘 중 하나라도 오류가 있다면 블록의 위치를 파악할 수 없게 된다. 예로 들어 확보된 블록 위치 정보의 블록 좌표가 정확하더라도 블록 번호에 오류가 있다면 결국 필요로 하는 블록의 위치를 추적할 수 없게 된다. In order to track the position of a block, both block coordinates and block number must be accurately entered into the system. If there is an error in either block coordinate or block number in the input block location information, the block location cannot be determined. For example, even if the block coordinates of the secured block location information are correct, if there is an error in the block number, eventually the location of the required block cannot be tracked.

조선소에서 블록의 위치를 추적하기 위한 연구는 지속적으로 이루어졌다. 하지만 대부분 블록의 좌표를 추적할 수 있도록 하는 연구가 수행되어 왔으며 블록 번호를 식별하는 연구는 부족한 상황이다. 블록의 위치를 추적할 때 블륵 좌표가 정확하더라도 블록 번호가 부정확하면 결국 블록의 위치를 추적할 수 없다는 문제가 발생하게 된다. 그래서 블록의 좌표를 정확히 획득하는 것만큼 블록의 번호를 정확히 식별하는 것도 중요하다. Research to track the location of blocks in shipyards has been continuously conducted. However, most studies have been conducted to track the coordinates of blocks, and studies to identify block numbers are scarce. When tracking the block location, even if the block coordinates are correct, if the block number is incorrect, a problem occurs that the block location cannot be tracked. So, it is as important to accurately identify the number of a block as it is to accurately obtain the coordinates of the block.

블록 위치 정보를 획득하기 위해 블록 번호를 식별할 때 작업자의 오입력이나 판단실수로 인해 오류가 발생할 수 있다. 따라서 작업자의 오입력이나 판단실수로 인해 블록 위치 정보 시스템에 블록 번호를 입력할 때 발생할 수 있는 문제를 보완하기 위해 작업자의 수작업이 필요로 하지 않는 블록 식별 시스템의 개발이 필요하다.When identifying block numbers to obtain block location information, errors may occur due to operator's erroneous input or judgment error. Therefore, it is necessary to develop a block identification system that does not require the manual operation of the operator to compensate for the problems that may occur when entering the block number into the block location information system due to the operator's erroneous input or judgment error.

한국공개특허 제10-2006-0102078호Korean Patent Publication No. 10-2006-0102078

본 발명은 전술한 문제점을 해결하기 위한 것으로, 차원 캐드(CAD) 데이터 내 선체 블록 객체를 다시점으로 회전시켜 획득되는 다수의 영상을 합성곱신경망(CNN)에 기반하여 모델링 및 학습시킴으로써, 카메라로부터 획득되는 데이터로부터 선체 블럭을 자동으로 식별, 분류 할 수 있도록 하는 합성곱신경망에 기반한 선체 블록 식별 모델 학습 방법을 제공하고자 한다.The present invention is to solve the above problems, and by modeling and learning a number of images obtained by rotating a hull block object in dimensional CAD data with multiple views based on a convolutional neural network (CNN), from the camera To provide a method for learning a hull block identification model based on a convolutional neural network that can automatically identify and classify hull blocks from acquired data.

본 발명의 일 실시예에 따른 합성곱신경망에 기반한 선체 블록 식별 모델 학습 방법은 3차원 캐드(CAD) 데이터 내 선체 블록 객체를 좌표평면계 축 별로 일정 각도로 연속적으로 회전시켜 다수의 영상을 획득하는 단계, 상기 다수의 영상에 데이터 확장(Data augmentation)을 적용하여 상기 다수의 영상의 장수를 확장시키는 단계 및 합성곱신경망(CNN)에 기반하여, 상기 다수의 영상을 토대로 기 마련된 다수의 식별영상을 식별하는 과정을 반복 진행함으로써 선체 블록 식별 모델을 학습하는 단계를 포함하는 것을 특징으로 할 수 있다.A method for learning a hull block identification model based on a convolutional neural network according to an embodiment of the present invention is to acquire a plurality of images by continuously rotating a hull block object in three-dimensional CAD data at a predetermined angle for each coordinate plane axis. Step, applying data augmentation to the plurality of images to extend the number of images of the plurality of images, and based on a convolutional neural network (CNN), a plurality of identification images prepared based on the plurality of images It may be characterized in that it comprises the step of learning the hull block identification model by repeating the identification process.

일 실시예에서, 상기 다수의 영상을 획득하는 단계는 데이터베이스로부터 상기 3차원 캐드(CAD) 데이터를 불러온 후 상기 3차원 캐드 데이터 내 선체 블록 객체를 좌표평면계 기준으로 X축을 따라 0도 내지 90도 각도 범위 내에서 10도 간격으로 연속적으로 회전시키고, 또한 Z축을 따라 0도 내지 350도 각도 범위 내에서 10도 간격으로 연속적으로 회전시켜 360장 이상의 영상을 획득하는 단계를 포함하는 것을 특징으로 할 수 있다.In one embodiment, the step of acquiring the plurality of images includes loading the three-dimensional CAD data from a database and then using the hull block object in the three-dimensional CAD data from 0 degrees to 90 degrees along the X axis based on a coordinate plane system. Acquiring 360 or more images by continuously rotating at 10-degree intervals within an angle range, and continuously rotating at 10-degree intervals within an angle range of 0 to 350 degrees along the Z-axis. can

일 실시예에서, 상기 다수의 영상을 획득하는 단계는 상기 360장 이상의 영상 내 객체에 대한 객체 영역 및 배경 윤곽 영역을 추출하는 단계 및 추출된 객체 영역 및 상기 배경 윤곽 영역의 크기에 기반하여 상기 객체 영역을 포함하는 직사각형 영역과 상기 직사각형 영역의 꼭짓점에 접하는 원 영역을 생성한 후, 상기 원 영역에 내접하는 정사각형 영역의 모서리를 따라 상기 360장 이상의 영상 각각의 이미지 크기를 수정함으로써, 상기 360장 이상의 영상 크기를 표준화하는 단계를 더 포함하는 것을 특징으로 할 수 있다.In an embodiment, the acquiring of the plurality of images includes extracting an object region and a background contour region for an object in the 360 or more images, and based on the size of the extracted object region and the background contour region, the object After generating a rectangular region including a region and a circle region tangent to the vertices of the rectangular region, the image size of each of the 360 or more images is corrected along the edge of the square region inscribed in the circle region. It may be characterized in that it further comprises the step of normalizing the image size.

일 실시예에서, 상기 다수의 영상의 장수를 확장시키는 단계는 각 영상을 30도, 60도 및 90도 각도로 회전시키거나, 또는 상하방향, 좌우 방향으로 반전시켜 적어도 6장 이상으로 장수를 확장시키는 단계를 포함하는 것을 특징으로 할 수 있다.In one embodiment, the step of extending the number of images of the plurality of images rotates each image at an angle of 30 degrees, 60 degrees and 90 degrees, or inverts the images in the vertical and left directions to extend the number of images to at least 6 or more. It may be characterized in that it comprises a step of making.

일 실시예에서, 상기 선체 블록 식별 모델을 학습하는 단계는 상기 다수의 영상 중 일부 영상을 분류하고, 합성곱신경망에 기반하여 상기 다수의 영상을 토대로 분류된 상기 일부 영상을 먼저 식별하는 과정을 반복 진행하는 단계 및 상기 일부 영상에 대한 식별 과정일 반복 진행된 후, 기 마련된 다수의 식별영상을 식별하는 과정을 반복 진행하는 단계를 포함하는 것을 특징으로 할 수 있다.In one embodiment, the step of learning the hull block identification model repeats the process of classifying some images among the plurality of images, and first identifying the partial images classified based on the plurality of images based on a convolutional neural network. It may be characterized in that it comprises the step of repeating the process of identifying a plurality of pre-prepared identification images after the performing and the identification process for the partial images are repeatedly performed.

본 발명의 일 측면에 따르면, 카메라로부터 획득되는 데이터로부터 블록 적치장에 적치된 선체 블럭을 자동으로 식별, 분류, 번호를 높은 정확도로 자동인식 할 수 있도록 선체 블록 식별 모델을 모델링 및 학습시킬 수 있는 이점을 가진다.According to an aspect of the present invention, the hull block identification model can be modeled and learned so that the hull block identification, classification, and numbering can be automatically recognized with high accuracy from the data acquired from the camera. have

도 1은 본 발명의 일 실시예에 따른 합성곱신경망에 기반한 선체 블록 식별 모델 학습 방법을 순서대로 도시한 순서도이다.
도 2는 실제 선체 블록 설계도를 기반으로 생성된 3차원 캐드 데이터 내 선체 블록 객체가 출력된 상태를 도시한 도면이다.
도 3은 분류가 필요한 서로 다른 유형의 선체 블록 종류를 도시한 도면이다.
도 4는 도 3에 도시된 선체 블록을 X축, Z축으로 회전시키는 상태를 도시한 도면이다.
도 5는 도 4의 과정을 통해 획득되는 다수의 영상을 도시한 도면이다.
도 6은 영상에서 선체 객체에 대한 객체 영역 및 배경 윤곽 영역을 추출하는 과정을 도시한 도면이다.
도 7은 도 6을 통해 추출된 객체 영역 및 배경 윤곽 영역의 크기에 기반하여 영상 크기를 표준화하는 과정을 도시한 도면이다.
도 8은 다수의 영상을 확장시키는 과정을 도시한 도면이다.
도 9는 3차원 캐드 데이터를 3D 프린터로 출력하여 제작한 블록 모형을 도시한 도면이다.
도 10은 실제 조선소 적치장에 적치된 선체 블록의 일부 만을 촬영 및 영상으로 획득한 상태를 도시한 도면이다.
도 11은 도 10의 영상의 크기를 수정 및 표준화시킨 상태를 나타낸 도면이다.
도 12는 획득된 영상을 서로 다른 3가지 종류의 합성곱신경망(CNN) 모델에 학습시킴에 따른 손실값 및 정확도를 나타낸 도면이다.
1 is a flowchart sequentially illustrating a method for learning a hull block identification model based on a convolutional neural network according to an embodiment of the present invention.
2 is a diagram illustrating a state in which a hull block object in 3D CAD data generated based on an actual hull block design drawing is output.
3 is a view showing different types of hull block types requiring classification.
Figure 4 is a view showing a state of rotating the hull block shown in Figure 3 in the X-axis, Z-axis.
5 is a diagram illustrating a plurality of images obtained through the process of FIG. 4 .
6 is a diagram illustrating a process of extracting an object area and a background contour area for a hull object from an image.
FIG. 7 is a diagram illustrating a process of standardizing an image size based on the sizes of an object region and a background contour region extracted through FIG. 6 .
8 is a diagram illustrating a process of expanding a plurality of images.
9 is a diagram illustrating a block model produced by outputting 3D CAD data to a 3D printer.
10 is a view showing a state in which only a portion of the hull blocks stacked in an actual shipyard stockyard is captured and captured as an image.
11 is a view showing a state in which the size of the image of FIG. 10 is corrected and standardized.
12 is a diagram illustrating loss values and accuracy according to training obtained images on three different types of convolutional neural network (CNN) models.

이하, 본 발명의 이해를 돕기 위하여 바람직한 실시예를 제시한다. 그러나 하기의 실시예는 본 발명을 보다 쉽게 이해하기 위하여 제공되는 것일 뿐, 실시예에 의해 본 발명의 내용이 한정되는 것은 아니다.Hereinafter, preferred examples are presented to help the understanding of the present invention. However, the following examples are only provided for easier understanding of the present invention, and the content of the present invention is not limited by the examples.

도 1은 본 발명의 일 실시예에 따른 합성곱신경망에 기반한 선체 블록 식별 모델 학습 방법을 순서대로 도시한 순서도이고, 도 2는 실제 선체 블록 설계도를 기반으로 생성된 3차원 캐드 데이터 내 선체 블록 객체가 출력된 상태를 도시한 도면이며, 도 3은 분류가 필요한 서로 다른 유형의 선체 블록 종류를 도시한 도면이고, 도 4는 도 3에 도시된 선체 블록을 X축, Z축으로 회전시키는 상태를 도시한 도면이며, 도 5는 도 4의 과정을 통해 획득되는 다수의 영상을 도시한 도면이다.1 is a flowchart sequentially illustrating a method for learning a hull block identification model based on a convolutional neural network according to an embodiment of the present invention, and FIG. 2 is a hull block object in 3D CAD data generated based on an actual hull block design diagram. is a diagram showing the output state, FIG. 3 is a diagram showing different types of hull block types that require classification, and FIG. 4 is a state in which the hull block shown in FIG. 3 is rotated on the X-axis and Z-axis. FIG. 5 is a diagram illustrating a plurality of images obtained through the process of FIG. 4 .

도 1을 살펴보면, 본 발명의 일 실시예에 따른 합성곱신경망에 기반한 선체 블록 식별 모델 학습 방법은 먼저 3차원 캐드(CAD) 데이터 내 선체 블록 객체를 좌표평면계 축 별로 일정 각도로 연속적으로 회전시켜 다수의 영상을 획득하는 단계(S101)로 시작된다.Referring to FIG. 1 , the method for learning a hull block identification model based on a convolutional neural network according to an embodiment of the present invention is first by continuously rotating a hull block object in three-dimensional CAD data at a predetermined angle for each axis of the coordinate plane system. It starts with a step (S101) of acquiring a plurality of images.

S101 단계에서는 데이터베이스로부터 3차원 캐드(CAD) 데이터를 불러온 후 3차원 캐드 데이터 내 선체 블록 객체를 좌표평면계 기준으로 X축을 따라 0도 내지 90도 각도 범위 내에서 10도 간격으로 연속적으로 회전시키고, 또한 Z축을 따라 0도 내지 350도 각도 범위 내에서 10도 간격으로 연속적으로 회전시켜 360장 이상의 영상을 획득하는 단계를 포함한다.In step S101, after loading 3D CAD data from the database, the hull block object in the 3D CAD data is continuously rotated at intervals of 10 degrees within the range of 0 degrees to 90 degrees along the X axis based on the coordinate plane system. , and also continuously rotating at intervals of 10 degrees within an angle range of 0 degrees to 350 degrees along the Z axis to obtain 360 or more images.

보다 구체적으로, 본원발명의 선박 블록에 대한 3차원 캐드 데이터는 도 2 및 도 3과 같이 PC에서 구동되는 소프트웨어들을 통해 가시적으로 확인될 수 있다.More specifically, the three-dimensional CAD data for the ship block of the present invention may be visually confirmed through software running on a PC as shown in FIGS. 2 and 3 .

도 2 및 도 3을 살펴보면, 분류하고자 하는 블록 클래스는 도 3과 같이 유사한 형상이지만 길이와 너비의 비가 다르고 내부 격자 구조물의 특징이 다른 세 종류의 블록 B1, 블록 B2, 블록 B3이다.Referring to FIGS. 2 and 3 , the block classes to be classified are three types of blocks B1, B2, and B3 that have similar shapes as in FIG. 3 but have different length and width ratios and different characteristics of internal lattice structures.

본 발명에서는 일 실시예에서 인벤터에서 제공하는 VBA(Visual Basic Application)의 모듈을 이용하여 X축으로 0도부터 90도까지 10도씩 회전할 때 Z축으로 0도부터 350도까지 10도씩 회전하는 총 500*300크기의 영상 360장을 자동으로 획득할 수 있다. In the present invention, in one embodiment, using the VBA (Visual Basic Application) module provided by Inventor, when the X-axis rotates by 10 degrees from 0 to 90 degrees, the Z-axis rotates by 10 degrees from 0 to 350 degrees. You can automatically acquire 360 images of 500*300 size.

도 5(a)를 살펴보면, 좌표평면계 상을 기준으로 Z축이 0도일 때 X축으로 0도부터 90도까지 10도씩 회전할 때 10도마다 영상 10장이 획득되고, 도 5(b)와같이 X축이 0도일 때 Z축으로 0도부터 350도까지 10도마다 회전할 때 영상 36장이 획득됨에 따라 360장의 영상이 획득될 수 있다.Referring to FIG. 5(a), when the Z-axis is 0 degrees with respect to the coordinate plane, when the X-axis rotates from 0 to 90 degrees by 10 degrees, 10 images are acquired every 10 degrees, and Similarly, when the X axis is 0 degrees, when the Z axis rotates every 10 degrees from 0 degrees to 350 degrees, 36 images are acquired, and 360 images can be acquired.

다시 도 1로 돌아와서, 다수의 이미지가 획득되었다면 다수의 영상에 데이터 확장(Data augmentation)을 적용하여 다수의 영상의 장수를 확장하게 된다(S102).Returning to FIG. 1 , if a plurality of images are acquired, data augmentation is applied to the plurality of images to extend the number of images ( S102 ).

보다 구체적으로, S102 단계에서는 360장 이상 획득된 영상 내 선박 블록 객체에 대한 객체 영역 및 배경 윤곽 영역을 추출하고, 추출된 객체 영역 및 배경 윤곽 영역의 크기에 기반하여 객체 영역을 포함하는 직사각형 영역과 직사각형 영역의 꼭짓점에 접하는 원 영역을 생성한 후, 원 영역에 내접하는 정사각형 영역의 모서리를 따라 360장 이상의 영상 각각의 이미지 크기를 수정함으로써, 360장 이상의 영상 크기를 표준화하게 된다. 이에 관해서는 도 6 내지 8을 통해 살펴보기로 한다.More specifically, in step S102, the object area and background contour area for the ship block object in the 360 or more acquired images are extracted, and based on the sizes of the extracted object area and background contour area, a rectangular area including the object area and After generating a circle region tangent to the vertex of the rectangular region, the image size of each of 360 images or more is corrected along the corners of the square region inscribed in the circle region, thereby standardizing the image sizes of 360 or more images. This will be described with reference to FIGS. 6 to 8 .

도 6은 영상에서 선체 객체에 대한 객체 영역 및 배경 윤곽 영역을 추출하는 과정을 도시한 도면이고, 도 7은 도 6을 통해 추출된 객체 영역 및 배경 윤곽 영역의 크기에 기반하여 영상 크기를 표준화하는 과정을 도시한 도면이며, 도 8은 다수의 영상을 확장시키는 과정을 도시한 도면이다.6 is a diagram illustrating a process of extracting an object region and a background contour region for a hull object from an image, and FIG. 7 is a method for standardizing the image size based on the size of the object region and background contour region extracted through FIG. It is a diagram illustrating a process, and FIG. 8 is a diagram illustrating a process of expanding a plurality of images.

도 6 내지 도 8을 살펴보면, 본 발명에서는 파이썬(Python)의 오픈시브이(OpenCV) 라이브러리에서 제공하는 컨투어(Contour) 알고리즘을 이용하여 획득한 영상의 선체 블록 객체에 대한 객체 영역과 배경의 윤곽을 추출한다. 또한 추출한 윤곽의 최대 X값과 최대 Y값, 최소 X값과 최소 Y값을 이용해 객체 영역에 맞는 직사각형 영역을 형성하고, 해당 직사각형 영역의 4개의 꼭짓점에 접하는 원 영역을 형성하게 된다. 그리고 형성된 원 영역과 내접하는 정사각형 영역의 모서리를 따라 영상을 잘라내게 된다. 그 결과, 도 6과 같이 잘라낸 영상은 224*224 크기로 수정되어 그 크기가 표준화 된다.6 to 8, in the present invention, the outline of the object area and background for the hull block object of the image obtained using the Contour algorithm provided by the OpenCV library of Python. extract Also, using the maximum X value, maximum Y value, and minimum X value and minimum Y value of the extracted contour, a rectangular area suitable for the object area is formed, and a circle area touching the four vertices of the rectangular area is formed. Then, the image is cut along the edge of the square region inscribed with the formed circle region. As a result, as shown in FIG. 6 , the cropped image is corrected to a size of 224*224 and the size is standardized.

도 8을 살펴보면, 본 발명은 각 선체 블록 클래스 별로 360장씩 획득되는 총 1,080장의 영상에 데이터 확장(Data augmentation)을 적용하게 된다. 데이터 확장을 1장의 영상에 적용하면 영상을 30도, 60도, 90도로 회전 시키거나 상하, 좌우로 반전시켜 6장으로 증가시킬 수 있다.Referring to FIG. 8 , in the present invention, data augmentation is applied to a total of 1,080 images obtained by 360 sheets for each hull block class. If data expansion is applied to one image, the image can be rotated 30 degrees, 60 degrees, or 90 degrees, or reversed up and down, left and right to increase to 6 images.

다시 도 1로 돌아와서, 본 발명에서는 다수의 영상의 장수가 확장된 상태에서 합성곱신경망(CNN)에 기반하여, 다수의 영상을 토대로 기 마련된 다수의 식별영상을 식별하는 과정을 반복 진행함으로써 선체 블록 식별 모델을 학습하게 된다(S103).1, in the present invention, based on a convolutional neural network (CNN) in a state in which the number of images of a plurality of images is expanded, the process of identifying a plurality of identification images prepared based on a plurality of images is repeatedly performed. The identification model is learned (S103).

보다 구체적으로, S103 단계에서는 다수의 영상 중 일부 영상을 분류하고, 합성곱신경망에 기반하여 다수의 영상을 토대로 분류된 일부 영상을 먼저 식별하는 과정을 반복 진행하고, 또한 일부 영상에 대한 식별 과정일 반복 진행된 후, 기 마련된 다수의 식별영상을 식별하는 과정을 반복 진행하게 된다.More specifically, in step S103, a process of classifying some images among a plurality of images, first identifying some images classified based on a plurality of images based on a convolutional neural network, is repeated, and also an identification process for some images. After repeating, the process of identifying a plurality of previously prepared identification images is repeated.

여기에서, 기 마련된 다수의 식별영상이라 함은 앞서 획득된 다수의 영상을 합성곱신경망(CNN)에 기반하여 학습 후 식별 정확도를 평가(검증)하기 위한 데이터를 의미한다.Here, a plurality of pre-prepared identification images means data for evaluating (verifying) identification accuracy after learning a plurality of previously acquired images based on a convolutional neural network (CNN).

식별영상에 관해 살펴보면 다음과 같다.The identification image is as follows.

도 9는 3차원 캐드 데이터를 3D 프린터로 출력하여 제작한 블록 모형을 도시한 도면이고, 도 10은 실제 조선소 적치장에 적치된 선체 블록의 일부 만을 촬영 및 영상으로 획득한 상태를 도시한 도면이며, 도 11은 도 10의 영상의 크기를 수정 및 표준화시킨 상태를 나타낸 도면이다.9 is a view showing a block model produced by outputting three-dimensional CAD data to a 3D printer, and FIG. 11 is a view showing a state in which the size of the image of FIG. 10 is corrected and standardized.

도 9 내지 11을 살펴보면, 식별영상은 3차원 CAD 데이터를 3D프린터로 출력하여 제작한 블록 모형으로부터 획득된다. 제작된 블록 모형을 카메라를 이용하여 다시점에서 촬영하여 획득되는데, 획득한 영상의 원본 크기는 3024*3024이지만 합성곱신경망(CNN) 모델에 입력 가능한 크기인 224*224로 수정하여 적용된다. 이때 각 선체 블랙의 클래스 별로 200장씩 식별영상이 마련되며 총 600장의 식별영상이 마련될 수 있다.9 to 11 , the identification image is obtained from a block model produced by outputting 3D CAD data to a 3D printer. It is obtained by shooting the produced block model from multiple viewpoints using a camera. The original size of the obtained image is 3024*3024, but it is applied by modifying it to 224*224, the size that can be input into the convolutional neural network (CNN) model. At this time, 200 identification images are provided for each hull black class, and a total of 600 identification images can be prepared.

한편, 본 발명에서 적용되는 세 가지 합성곱신경망(CNN) 모델은 VGGNet, ResNet, DenseNet 이렇게 세 가지 종류의 합성곱신경망(CNN) 모델을 이용하게 되는데, VGGNet, ResNet, DenseNet에 대해 간략히 살펴보면 다음과 같다.Meanwhile, the three convolutional neural network (CNN) models applied in the present invention use three types of convolutional neural network (CNN) models: VGGNet, ResNet, and DenseNet. same.

VGGNet은 성곱층과 풀링층이 반복되는 특징추출계층 뒤에 전연결층으로 구성된 분류계층으로 구성되어있는 단순한 구조로 변형이 쉬운 구조이고, ResNet은 잔차연결(Residual connection)로 각 층들이 연결되어 있는 구조로 이루어져있다. 잔차학습을 적용함으로 인해 CNN 모델이 합성곱층에 입력되는 영상을 학습할 때, 합성곱층의 기존 파라미터와 입력된 영상으로 새롭게 생성된 파라미터 사이의 차이 값으로만 학습하게 된다. 그리고 잔차연결로 합성곱층 사이의 특징맵을 단순히 더해주는 연산으로 연산량도 줄이면서 특징맵의 특징이 사라지는 워시아웃(Wash out)문제도 방지하는 것을 특징으로 한다.VGGNet is a simple structure that consists of a classification layer consisting of a full connection layer after a feature extraction layer in which the convolution layer and the pooling layer are repeated. ResNet is a structure in which each layer is connected by residual connection consists of When the CNN model learns an image input to the convolution layer by applying residual learning, it learns only from the difference value between the existing parameter of the convolution layer and the parameter newly created from the input image. In addition, it is an operation that simply adds the feature maps between the convolutional layers through residual connection, which reduces the amount of computation and also prevents the washout problem in which the features of the feature map disappear.

DenseNet은 특징맵이 연속하여 병합(Concatenation)되는 연결 방식을 사용한다. DenseNet이 가지는 연결 방식은 깊어진 CNN 모델의 후반 층까지 앞선 정보를 효율적으로 전달하여 구조가 깊어질수록 입력 영상의 특징맵의 특징이 사라지는 워시아웃문제를 방지하고, 합성곱층 특징맵 연결 방식은 CNN 모델의 학습을 쉽게 하는데 왜냐하면 오차역전파(Error backpropagation)의 효율을 극대화하기 때문이다. 또한 DenseNet은 깊이 대비 적은 합성곱필터를 사용하기 때문에 파라미터 수가 적어 학습에 소모되는 시간을 단축시키는 것을 특징으로 한다.DenseNet uses a connection method in which feature maps are continuously concatenated. The connection method of DenseNet efficiently delivers advanced information to the latter layer of the deep CNN model, preventing the washout problem in which the features of the feature map of the input image disappear as the structure deepens, and the convolutional feature map connection method is the CNN model. It makes learning easier because it maximizes the efficiency of error backpropagation. In addition, because DenseNet uses a small number of convolution filters compared to depth, the number of parameters is small, so the time consumed for learning is reduced.

도 12는 획득된 영상을 서로 다른 3가지 종류의 합성곱신경망(CNN) 모델에 학습시킴에 따른 손실값 및 정확도를 나타낸 도면이다.12 is a diagram illustrating loss values and accuracy according to training obtained images on three different types of convolutional neural network (CNN) models.

도 12를 살펴보면, 세 가지 CNN 모델(VGG-19, Resnet-152V2와 Densenet-201)의 학습과 검증 데이터의 손실값은 학습 단계가 진행될수록 0에 수렴한다. 그리고 세 가지 CNN 모델의 학습과 검증 데이터의 정확도는 학습 단계가 진행될수록 1에 수렴하는 모습을 보여주었다. 따라서 세 가지 CNN 모델에 기본 영상 집합을 사용해 학습을 진행하였을 때 학습 단계에서 나타나는 학습과 검증 데이터의 손실값과 정확도가 적당한 값에 수렴하는 모습으로 학습이 잘 이루어졌음을 확인할 수 있다.12, the loss values of the training and verification data of the three CNN models (VGG-19, Resnet-152V2 and Densenet-201) converge to 0 as the learning step progresses. And the accuracy of the training and validation data of the three CNN models converges to 1 as the learning stage progresses. Therefore, when the three CNN models are trained using the basic image set, it can be confirmed that the learning has been well accomplished with the loss and accuracy values of the learning and validation data appearing in the learning stage converging to an appropriate value.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to the preferred embodiment of the present invention, those skilled in the art will be able to variously modify and change the present invention without departing from the spirit and scope of the present invention as set forth in the claims below. You will understand that you can.

Claims (5)

3차원 캐드(CAD) 데이터 내 선체 블록 객체를 좌표평면계 축 별로 일정 각도로 연속적으로 회전시켜 다수의 영상을 획득하는 단계;
상기 다수의 영상에 데이터 확장(Data augmentation)을 적용하여 상기 다수의 영상의 장수를 확장시키는 단계; 및
합성곱신경망(CNN)에 기반하여, 상기 다수의 영상을 토대로 기 마련된 다수의 식별영상을 식별하는 과정을 반복 진행함으로써 선체 블록 식별 모델을 학습하는 단계;를 포함하는 것을 특징으로 하는, 합성곱신경망에 기반한 선체 블록 식별 모델 학습 방법.
acquiring a plurality of images by continuously rotating the hull block object in the three-dimensional CAD data at a predetermined angle for each axis of the coordinate plane;
extending the number of pages of the plurality of images by applying data augmentation to the plurality of images; and
Based on a convolutional neural network (CNN), learning the hull block identification model by repeating the process of identifying a plurality of identification images prepared based on the plurality of images; Based on the hull block identification model training method.
제1항에 있어서,
상기 다수의 영상을 획득하는 단계는,
데이터베이스로부터 상기 3차원 캐드(CAD) 데이터를 불러온 후 상기 3차원 캐드 데이터 내 선체 블록 객체를 좌표평면계 기준으로 X축을 따라 0도 내지 90도 각도 범위 내에서 10도 간격으로 연속적으로 회전시키고, 또한 Z축을 따라 0도 내지 350도 각도 범위 내에서 10도 간격으로 연속적으로 회전시켜 360장 이상의 영상을 획득하는 단계;를 포함하는 것을 특징으로 하는, 합성곱신경망에 기반한 선체 블록 식별 모델 학습 방법.
According to claim 1,
The step of acquiring the plurality of images includes:
After loading the three-dimensional CAD data from the database, the hull block object in the three-dimensional CAD data is continuously rotated at intervals of 10 degrees within the range of 0 degrees to 90 degrees along the X axis based on the coordinate plane system, In addition, obtaining 360 or more images by continuously rotating at 10 degree intervals within the range of 0 degrees to 350 degrees along the Z axis; Method for learning a hull block identification model based on a convolutional neural network, comprising: a.
제2항에 있어서,
상기 다수의 영상을 획득하는 단계는,
상기 360장 이상의 영상 내 선박 블록 객체에 대한 객체 영역 및 배경 윤곽 영역을 추출하는 단계; 및
추출된 객체 영역 및 상기 배경 윤곽 영역의 크기에 기반하여 상기 객체 영역을 포함하는 직사각형 영역과 상기 직사각형 영역의 꼭짓점에 접하는 원 영역을 생성한 후, 상기 원 영역에 내접하는 정사각형 영역의 모서리를 따라 상기 360장 이상의 영상 각각의 이미지 크기를 수정함으로써, 상기 360장 이상의 영상 크기를 표준화하는 단계;를 더 포함하는 것을 특징으로 하는, 합성곱신경망에 기반한 선체 블록 식별 모델 학습 방법.
3. The method of claim 2,
The step of acquiring the plurality of images includes:
extracting an object area and a background contour area for the ship block object in the 360 or more images; and
A rectangular region including the object region and a circle region tangent to a vertex of the rectangular region are generated based on the extracted object region and the size of the background contour region, and then, along the edge of the square region inscribed in the circle region Standardizing the size of the 360 or more images by correcting the image size of each of the 360 or more images;
제1항에 있어서,
상기 다수의 영상의 장수를 확장시키는 단계는,
각 영상을 30도, 60도 및 90도 각도로 회전시키거나, 또는 상하방향, 좌우 방향으로 반전시켜 적어도 6장 이상으로 장수를 확장시키는 단계;를 포함하는 것을 특징으로 하는, 합성곱신경망에 기반한 선체 블록 식별 모델 학습 방법.
According to claim 1,
The step of extending the number of images of the plurality of images,
Rotating each image at an angle of 30 degrees, 60 degrees and 90 degrees, or inverting it in the vertical and left directions to extend the number of sheets to at least 6 or more; How to train a hull block identification model.
제1항에 있어서,
상기 선체 블록 식별 모델을 학습하는 단계는,
상기 다수의 영상 중 일부 영상을 분류하고, 합성곱신경망에 기반하여 상기 다수의 영상을 토대로 분류된 상기 일부 영상을 먼저 식별하는 과정을 반복 진행하는 단계; 및
상기 일부 영상에 대한 식별 과정일 반복 진행된 후, 기 마련된 다수의 식별영상을 식별하는 과정을 반복 진행하는 단계;를 포함하는 것을 특징으로 하는, 합성곱신경망에 기반한 선체 블록 식별 모델 학습 방법.
According to claim 1,
Learning the hull block identification model comprises:
classifying some of the plurality of images and repeating the process of first identifying the partial images classified based on the plurality of images based on a convolutional neural network; and
After repeating the identification process for some of the images, repeating the process of identifying a plurality of previously provided identification images is a method for learning a hull block identification model based on a convolutional neural network, comprising:
KR1020200086465A 2020-07-13 2020-07-13 Method for training a model to identify hull blocks based on a convolutional neural network KR102522205B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200086465A KR102522205B1 (en) 2020-07-13 2020-07-13 Method for training a model to identify hull blocks based on a convolutional neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200086465A KR102522205B1 (en) 2020-07-13 2020-07-13 Method for training a model to identify hull blocks based on a convolutional neural network

Publications (2)

Publication Number Publication Date
KR20220008184A true KR20220008184A (en) 2022-01-20
KR102522205B1 KR102522205B1 (en) 2023-04-13

Family

ID=80052987

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200086465A KR102522205B1 (en) 2020-07-13 2020-07-13 Method for training a model to identify hull blocks based on a convolutional neural network

Country Status (1)

Country Link
KR (1) KR102522205B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102603129B1 (en) * 2022-12-29 2023-11-16 주식회사 애자일소다 Ai based shipbuilding process analysis system and method thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060102078A (en) 2005-03-22 2006-09-27 삼성중공업 주식회사 Hull block control system by using radio frequency identification
KR101445973B1 (en) * 2013-05-30 2014-10-02 에스티엑스조선해양 주식회사 Recognition Method and System for Block Production Progress using Image Process
KR20160148806A (en) * 2015-06-16 2016-12-27 중앙대학교 산학협력단 Object Detecter Generation Method Using Direction Information, Object Detection Method and Apparatus using the same
KR20190110967A (en) * 2019-09-11 2019-10-01 엘지전자 주식회사 Apparatus and method for identifying object

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060102078A (en) 2005-03-22 2006-09-27 삼성중공업 주식회사 Hull block control system by using radio frequency identification
KR101445973B1 (en) * 2013-05-30 2014-10-02 에스티엑스조선해양 주식회사 Recognition Method and System for Block Production Progress using Image Process
KR20160148806A (en) * 2015-06-16 2016-12-27 중앙대학교 산학협력단 Object Detecter Generation Method Using Direction Information, Object Detection Method and Apparatus using the same
KR20190110967A (en) * 2019-09-11 2019-10-01 엘지전자 주식회사 Apparatus and method for identifying object

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102603129B1 (en) * 2022-12-29 2023-11-16 주식회사 애자일소다 Ai based shipbuilding process analysis system and method thereof

Also Published As

Publication number Publication date
KR102522205B1 (en) 2023-04-13

Similar Documents

Publication Publication Date Title
US11145051B2 (en) Three-dimensional modeling of an object
Lien et al. Approximate convex decomposition of polyhedra
US8380465B2 (en) Method and apparatus for computer-aided design of three-dimensional objects to be fabricated
CN111429563B (en) Pipeline three-dimensional reconstruction method, system, medium and equipment based on deep learning
CN106886849A (en) Construction management-control method and system that a kind of BIM simulations are combined with taking photo by plane
Kamrani et al. Feature-based design approach for integrated CAD and computer-aided inspection planning
US10591325B2 (en) Fluid flow feature identification methods and tools
EP0429276B1 (en) Absolute gouge avoidance for computer-aided control of cutter paths
EP3206100A1 (en) Planning of computer numerical control (cnc) machining operations with the aid of a digital computer
KR20220008184A (en) Method for training a model to identify hull blocks based on a convolutional neural network
Piero et al. Virtual commissioning of camera-based quality assurance systems for mixed model assembly lines
CN114290660A (en) Curved surface layered 3D printing method and system
JP6337619B2 (en) Surface shape evaluation method and surface shape evaluation system
KR102437972B1 (en) Method for learning the hull block identification model and improving discrimination by utilizing a multi-view image set of 3d cad data
CN114612394B (en) Concrete internal damage prediction method based on Yolo network and DIC technology
US11481529B2 (en) Section measurement system
Attila IGES-based CAD model post processing module of a Setup and Fixture Planning System for box-shaped parts
CN111382921A (en) Task matching method of offshore wind generating set, storage medium and computing device
CN116476070B (en) Method for adjusting scanning measurement path of large-scale barrel part local characteristic robot
Crozet et al. Fast computation of local minimal distances between CAD models for dynamics simulation
US20240161269A1 (en) System and method for identifying geometric feature associations for 3d models
KR102039265B1 (en) Method and Apparatus for Geometrical interference check and installation order deriving of ship/offshore plant pipe model using JT format
Na et al. Robotic Path Planning for Inspection of Complex-Shaped Objects
Ngoi et al. Conceptual development of an automated assemblies tolerance analysis system
Stephans Material Management and Progress Detection for Construction on Earth and Beyond

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant