KR102481756B1 - Apparatus and method for transforming contour point - Google Patents

Apparatus and method for transforming contour point Download PDF

Info

Publication number
KR102481756B1
KR102481756B1 KR1020210175602A KR20210175602A KR102481756B1 KR 102481756 B1 KR102481756 B1 KR 102481756B1 KR 1020210175602 A KR1020210175602 A KR 1020210175602A KR 20210175602 A KR20210175602 A KR 20210175602A KR 102481756 B1 KR102481756 B1 KR 102481756B1
Authority
KR
South Korea
Prior art keywords
camera
plane
plate material
target image
points
Prior art date
Application number
KR1020210175602A
Other languages
Korean (ko)
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 KR1020210175602A priority Critical patent/KR102481756B1/en
Priority to PCT/KR2021/018782 priority patent/WO2023106472A1/en
Application granted granted Critical
Publication of KR102481756B1 publication Critical patent/KR102481756B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/12Picture reproducers
    • H04N9/31Projection devices for colour picture display, e.g. using electronic spatial light modulators [ESLM]
    • H04N9/3179Video signal processing therefor
    • H04N9/3185Geometric adjustment, e.g. keystone or convergence
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B21/00Projectors or projection-type viewers; Accessories therefor
    • G03B21/14Details
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B21/00Projectors or projection-type viewers; Accessories therefor
    • G03B21/14Details
    • G03B21/147Optical correction of image distortions, e.g. keystone
    • 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
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/12Picture reproducers
    • H04N9/31Projection devices for colour picture display, e.g. using electronic spatial light modulators [ESLM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/12Picture reproducers
    • H04N9/31Projection devices for colour picture display, e.g. using electronic spatial light modulators [ESLM]
    • H04N9/3141Constructional details thereof
    • H04N9/3173Constructional details thereof wherein the projection device is specially adapted for enhanced portability
    • H04N9/3176Constructional details thereof wherein the projection device is specially adapted for enhanced portability wherein the projection device is incorporated in a camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30161Wood; Lumber

Abstract

The present specification provides an apparatus for transforming a contour point and a method for transforming the contour point. At this time, the apparatus for transforming the contour point includes: a memory for storing a target image, which is an image obtained by capturing a plate material through a camera; and a processor for determining a plurality of contour points in the target image, determining a plate material plane in the target image, projecting the plurality of contour points to the plate material plane to determine projection points for one or more of the plurality of contour points, and, and calculating coordinates on the plate material plane for one or more of the plurality of contour points based on the projection points.

Description

윤곽점 변환 장치 및 그 방법{APPARATUS AND METHOD FOR TRANSFORMING CONTOUR POINT}Contour point conversion device and method thereof {APPARATUS AND METHOD FOR TRANSFORMING CONTOUR POINT}

본 발명은 윤곽점 변환 장치 및 그 방법에 관한 것이다.The present invention relates to a contour point conversion device and method.

조선 산업 또는 목공 산업 등과 같은 다양한 분야에서, 조립이 필요한 판재 부품을 생산하고 분류하는 작업이 수행된다. 이때, 판재 부품을 분류하는 작업을 자동화하기 위해서는 먼저 판재를 식별하는 동작이 수행되어야 한다.In various fields such as the shipbuilding industry or the woodworking industry, production and sorting of sheet metal parts requiring assembly are performed. At this time, in order to automate the task of classifying the plate member, an operation of identifying the plate member must first be performed.

일반적으로, 판재를 식별하기 위해서 판재에 미리 식별 표시를 남겨두는 방법이 사용될 수 있다. 그러나, 판재의 표면 성질이나 또는 제조 과정의 문제로 인하여, 판재에 미리 식별 표시를 남겨두는 것이 불가능할 수 있다.In general, a method of leaving an identification mark on a plate material in advance may be used to identify the plate material. However, it may be impossible to leave an identification mark on the board in advance due to the surface properties of the board or problems in the manufacturing process.

이러한 경우를 제외하면, 판재를 식별하는 과정에서 판재의 모양은 중요한 요소가 될 수 있다. 일 예로, 카메라 등으로 촬상한 영상 이미지에서 판재를 식별할 때, 판재가 서로 뒤섞여 있거나 카메라가 정확히 판재의 평면의 법선 벡터와 평행한 방향을 가리키지 않을 경우, 영상 이미지 상에서 보이는 판재에 대한 투영 왜곡이 발생할 수 있다.Except for this case, the shape of the plate can be an important factor in the process of identifying the plate. For example, when identifying a plate material in a video image captured by a camera or the like, if the plate material is mixed with each other or the camera does not accurately point in a direction parallel to the normal vector of the plane of the plate material, projection distortion for the plate material seen on the video image this can happen

실시예들은, 카메라로부터 촬상된 영상으로부터 투영 왜곡을 제거한 윤곽점을 획득할 수 있는, 윤곽점 변환 장치 및 그 방법을 제공한다.Embodiments provide a contour point conversion device and method capable of obtaining contour points from which projection distortion is removed from an image captured by a camera.

일 실시예는, 카메라를 통해 판재를 촬상한 영상인 타깃 영상을 획득하는 단계, 타깃 영상에서 복수의 윤곽점들을 결정하는 단계, 타깃 영상에서 판재 평면을 결정하는 단계, 복수의 윤곽점들을 판재 평면에 투영함으로써, 복수의 윤곽점들 중 하나 이상에 대한 투영점들을 결정하는 단계 및 투영점들을 기초로, 복수의 윤곽점들 중 하나 이상에 대한 판재 평면 상의 좌표를 계산하는 단계를 포함하는, 윤곽점 변환 방법을 제공한다.An embodiment includes obtaining a target image, which is an image of a plate material captured through a camera, determining a plurality of contour points in the target image, determining a plate material plane in the target image, and converting the plurality of contour points to a plate material plane. determining projected points for one or more of the plurality of contour points by projecting onto the contour points, and calculating coordinates on a plate material plane for one or more of the plurality of contour points based on the projected points. Provides a point conversion method.

다른 실시예는, 카메라를 통해 판재를 촬상한 영상인 타깃 영상을 저장하는 메모리; 및 타깃 영상에서 복수의 윤곽점들을 결정하고, 타깃 영상에서 판재 평면을 결정하고, 복수의 윤곽점들을 판재 평면에 투영함으로써, 복수의 윤곽점들 중 하나 이상에 대한 투영점들을 결정하고, 투영점들을 기초로 복수의 윤곽점들 중 하나 이상에 대한 판재 평면 상의 좌표를 계산하는 프로세서를 포함하는, 윤곽점 변환 장치를 제공한다.Another embodiment is a memory for storing a target image, which is an image of a plate material captured through a camera; and determining projected points for one or more of the plurality of contour points by determining a plurality of contour points in the target image, determining a plate material plane in the target image, and projecting the plurality of contour points to the plate material plane, Provided is a contour point conversion device including a processor for calculating coordinates on a plate material plane for one or more of a plurality of contour points based on .

실시예들에 따른 윤곽점 변환 장치 및 그 방법에 의하면, 카메라로부터 촬상된 영상으로부터 투영 왜곡을 제거한 윤곽점을 획득할 수 있다.According to the contour point conversion apparatus and method according to the embodiments, it is possible to obtain contour points from which projection distortion is removed from an image captured by a camera.

도 1은 일 실시예에 따른 윤곽점 변환 장치의 구성도이다.
도 2는 도 1의 윤곽점 변환 장치의 동작의 일 예를 나타낸 흐름도이다.
도 3은 일 실시예에 따른 윤곽점 변환 장치가 판재 평면을 결정하는 방법을 도시한 도면이다.
도 4는 일 실시예에 따른 판재 평면을 카메라 좌표계 상에서 나타내는 방법을 도시한 도면이다.
도 5는 일 실시예들에 따른 복수의 윤곽점들에 대한 카메라 좌표계 상의 샘플을 도시한 도면이다.
도 6은 일 실시예들에 따른 복수의 윤곽점들 중 하나 이상에 대한 투영점을 도시한 도면이다.
도 7은 일 실시예들에 따른 투영점들에 대한 판재 평면 상에서의 좌표를 도시한 도면이다.
도 8은 일 실시예에 따른 윤곽점 변환 방법의 흐름도이다.
1 is a configuration diagram of a contour point conversion device according to an exemplary embodiment.
FIG. 2 is a flowchart illustrating an example of an operation of the contour point conversion device of FIG. 1 .
3 is a diagram illustrating a method of determining a plate material plane by the contour point conversion apparatus according to an exemplary embodiment.
4 is a diagram illustrating a method of representing a plane of a plate material on a camera coordinate system according to an exemplary embodiment.
5 is a diagram illustrating a sample on a camera coordinate system for a plurality of contour points according to an exemplary embodiment.
6 is a diagram illustrating projection points for one or more of a plurality of contour points according to an exemplary embodiment.
7 is a diagram illustrating coordinates on a plate material plane for projected points according to an exemplary embodiment.
8 is a flowchart of a contour point conversion method according to an exemplary embodiment.

이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, some embodiments of the present invention will be described in detail through exemplary drawings. In adding reference numerals to components of each drawing, it should be noted that the same components have the same numerals as much as possible even if they are displayed on different drawings. In addition, in describing the present invention, if it is determined that a detailed description of a related known configuration or function may obscure the gist of the present invention, the detailed description will be omitted.

또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A,B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In addition, in describing the components of the present invention, terms such as first, second, A, B, (a), and (b) may be used. These terms are only used to distinguish the component from other components, and the nature, order, or order of the corresponding component is not limited by the term. When an element is described as being “connected,” “coupled to,” or “connected” to another element, that element is directly connected or connectable to the other element, but there is another element between the elements. It will be understood that elements may be “connected”, “coupled” or “connected”.

도 1은 일 실시예에 따른 윤곽점 변환 장치(100)의 구성도이다.1 is a configuration diagram of a contour point conversion device 100 according to an exemplary embodiment.

도 1을 참조하면, 윤곽점 변환 장치(100)는 메모리(110) 및 프로세서(120)를 포함할 수 있다.Referring to FIG. 1 , the contour point conversion device 100 may include a memory 110 and a processor 120 .

메모리(110)는 카메라(200)를 통해 판재를 촬상한 영상인 타깃 영상을 저장할 수 있다.The memory 110 may store a target image, which is an image obtained by capturing a plate material through the camera 200 .

카메라(200)는 일반적인 디지털 카메라일 수도 있고, 영상을 촬영하면서 동시에 영상에 대한 부가 정보를 획득할 수 있는 특수 카메라(e.g. ToF 카메라)일 수도 있다.The camera 200 may be a general digital camera or a special camera (e.g. ToF camera) capable of acquiring additional information about an image while capturing an image.

타깃 영상은 하나 이상의 정지된 이미지이거나 또는 움직이는 동영상일 수 있다. 타깃 영상은 다양한 포맷(e.g. JPG, PNG, AVI, MP4)을 가질 수 있다.The target image may be one or more still images or moving images. The target video can have various formats (e.g. JPG, PNG, AVI, MP4).

메모리(110)는 휘발성 메모리(e.g. SRAM, DRAM) 또는 비휘발성 메모리(e.g. NAND flash, NOR flash)일 수 있다.The memory 110 may be a volatile memory (e.g. SRAM, DRAM) or a non-volatile memory (e.g. NAND flash, NOR flash).

프로세서(120)는 메모리(110)에 저장된 타깃 영상을 기초로 하여, 타깃 영상에서 복수의 윤곽점들을 결정하고, 복수의 윤곽점들 중 하나 이상을 판재 평면에 투영하여 생성된 투영점들을 결정하고, 투영점들에 대한 판재 평면 상의 좌표를 계산할 수 있다.The processor 120 determines a plurality of contour points in the target image based on the target image stored in the memory 110, and determines projection points generated by projecting one or more of the plurality of contour points onto a plate material plane, , the coordinates on the plate plane for the projected points can be calculated.

프로세서(120)는 전술한 동작을 실행하기 위해, 전술한 메모리(110) 또는 기타 저장 장치(e.g. HDD, SSD, SD Card)에 저장된 펌웨어를 구동할 수 있다. 프로세서(120)는 펌웨어에서 정의된 논리 연산을 실행함으로써, 전술한 동작을 실행할 수 있다.The processor 120 may drive firmware stored in the above-described memory 110 or other storage devices (e.g. HDD, SSD, SD Card) in order to execute the above-described operation. The processor 120 may execute the above-described operation by executing logical operations defined in firmware.

프로세서(120)는 마이크로프로세서, CPU 또는 SoC(System On Chip) 등으로 구현될 수 있다.The processor 120 may be implemented as a microprocessor, CPU, system on chip (SoC), or the like.

이하, 윤곽점 변환 장치(100)의 구체적인 동작에 대해 설명한다.Hereinafter, specific operations of the contour point conversion device 100 will be described.

도 2는 도 1의 윤곽점 변환 장치(100)의 동작의 일 예를 나타낸 흐름도이다.FIG. 2 is a flowchart illustrating an example of an operation of the contour point conversion device 100 of FIG. 1 .

도 2를 참조하면, 윤곽점 변환 장치(100)의 프로세서(120)는 카메라(200)에 의해 촬상된 영상인 타깃 영상에서 복수의 윤곽점들을 결정할 수 있다(S210).Referring to FIG. 2 , the processor 120 of the contour point conversion apparatus 100 may determine a plurality of contour points from a target image captured by the camera 200 (S210).

프로세서(120)는 타깃 영상에서 복수의 윤곽점들을 결정하기 위해 다양한 알고리즘을 사용할 수 있다. 일 예로, 프로세서(120)는 OpenCV의 Canny Edge Detection 및 findContour를 사용하거나 또는 AppleVisionKit의 VNContourObservation을 사용하여 복수의 윤곽점들을 결정할 수 있다.The processor 120 may use various algorithms to determine the plurality of contour points in the target image. For example, the processor 120 may determine a plurality of contour points using Canny Edge Detection and findContour of OpenCV or VNContourObservation of AppleVisionKit.

그리고 프로세서(120)는 타깃 영상에서 판재 평면을 결정할 수 있다(S220). 판재 평면은, 타깃 영상에서 판재에 대응하는 2차원 평면을 나타낸다.Also, the processor 120 may determine a plate material plane in the target image (S220). The plate material plane represents a two-dimensional plane corresponding to the plate material in the target image.

일 예로, 판재 평면은 판재의 위치에 가장 적합하다고 판단되는 가상의 평면으로 결정될 수 있다. 실제 판재는 완전한 2차원 평면 상에 위치하지 않을 수 있으며, 이때, 판재 평면은 판재와 가장 일치한다고 판단된 평면일 수 있다.For example, the plate material plane may be determined as a virtual plane determined to be most suitable for the position of the plate material. The actual plate material may not be positioned on a complete two-dimensional plane, and in this case, the plate material plane may be a plane determined to most closely match the plate material.

프로세서(120)는 판재 평면을 결정하기 위해 다양한 알고리즘을 사용할 수 있다. 일 예로, 프로세서(120)는 FindSurface, Hough Transform, RANSAC 또는 최소자승법 등을 사용하여 판재 평면을 결정할 수 있다.Processor 120 may use various algorithms to determine the planar plane. For example, the processor 120 may determine the plate material plane using FindSurface, Hough Transform, RANSAC, or the least squares method.

그리고 프로세서(120)는 S210 단계에서 결정한 복수의 윤곽점들 중 하나 이상을, S220 단계에서 결정한 판재 평면에 투영함으로써, 하나 이상의 투영점들을 결정할 수 있다(S230).Further, the processor 120 may determine one or more projected points by projecting one or more of the plurality of contour points determined in step S210 onto the plate material plane determined in step S220 (S230).

그리고 프로세서(120)는 S230 단계에서 결정한 투영점들을 기초로, 투영점들에 대한 판재 평면 상의 좌표를 계산할 수 있다(S240).Further, the processor 120 may calculate coordinates on the plate material plane for the projected points based on the projected points determined in step S230 (S240).

이하, 전술한 윤곽점 변환 장치(100)의 동작의 각 단계에 대한 상세한 실시예를 설명한다.Hereinafter, detailed embodiments of each step of the operation of the above-described contour point conversion device 100 will be described.

도 3은 일 실시예에 따른 윤곽점 변환 장치(100)가 판재 평면을 결정하는 방법을 도시한 도면이다.3 is a diagram illustrating a method of determining a plate material plane by the contour point conversion apparatus 100 according to an exemplary embodiment.

도 3을 참조하면, 윤곽점 변환 장치(100)의 프로세서(120)는, 판재 평면을, 카메라(200) 또는 카메라(200)에 의해 촬영된 타깃 영상으로부터 추출된 복수의 연속된 이미지들로부터 획득한 깊이 정보를 기초로 판재 평면을 결정할 수 있다.Referring to FIG. 3 , the processor 120 of the contour point conversion apparatus 100 obtains a plate material plane from the camera 200 or a plurality of consecutive images extracted from a target image captured by the camera 200. A plate plane can be determined based on depth information.

이때, 깊이 정보는 타깃 영상에 대응되는 픽셀들 중 하나 이상에 대한 깊이 값을 포함할 수 있다. 예를 들어, 깊이 정보는 픽셀 (x1, y1)의 깊이값은 10, 픽셀 (x2, y2)의 깊이값은 0, 픽셀 (x3, y3)의 깊이값은 5를 포함할 수 있다.In this case, the depth information may include a depth value of one or more of pixels corresponding to the target image. For example, the depth information may include a depth value of 10 for the pixel (x1, y1), a depth value of 0 for the pixel (x2, y2), and a depth value of 5 for the pixel (x3, y3).

일 예로, 카메라(200)는 직접 타깃 영상에 대한 깊이 정보를 제공할 수 있는 깊이 카메라(e.g. ToF(Time of Flight) 카메라)일 수 있다. 이 경우 프로세서(120)는 카메라(200)에서 직접 깊이 정보를 획득할 수 있다.For example, the camera 200 may be a depth camera (e.g. Time of Flight (ToF) camera) capable of directly providing depth information on a target image. In this case, the processor 120 may directly obtain depth information from the camera 200 .

다른 예로, 프로세서(120)는 카메라(200)에 의해 촬영된 타깃 영상으로부터 추출된 복수의 연속된 이미지들로부터 미리 정의된 깊이 정보 추출 방법에 따라 깊이 정보를 획득할 수 있다.As another example, the processor 120 may obtain depth information from a plurality of consecutive images extracted from a target image photographed by the camera 200 according to a predefined depth information extraction method.

이때, 복수의 연속된 이미지들은 카메라(200)에 의해 일정한 시간 간격(e.g. 1/1000초)으로 연속적으로 촬상된 이미지일 수 있다.In this case, the plurality of consecutive images may be images continuously captured by the camera 200 at regular time intervals (eg, 1/1000 second).

그리고 깊이 정보 추출 방법은, 일 예로, 안드로이드에서 제공하는 Depth API(https://developers.google.com/ar/develop/java/depth/introduction#depth_images)일 수 있다.Also, the method for extracting depth information may be, for example, Depth API (https://developers.google.com/ar/develop/java/depth/introduction#depth_images) provided by Android.

도 4는 일 실시예에 따른 판재 평면을 카메라 좌표계 상에서 나타내는 방법을 도시한 도면이다.4 is a diagram illustrating a method of representing a plane of a plate material on a camera coordinate system according to an exemplary embodiment.

도 4를 참조하면, 카메라 좌표계는 카메라(200)의 위치를 원점으로 하고, 타깃 영상의 가로 방향 축인 x축, 타깃 영상의 세로 방향 축인 y축 및 카메라(200)의 렌즈가 바라보는 방향 축인 z축으로 결정될 수 있다. 이때, x축, y축 및 z축은 서로 수직이다.Referring to FIG. 4 , the camera coordinate system has the position of the camera 200 as the origin, the horizontal axis of the target image, the x-axis, the vertical axis of the target image, the y-axis, and the camera 200's lens viewing axis, z. axis can be determined. At this time, the x-axis, y-axis, and z-axis are perpendicular to each other.

일 예로, 카메라(200)의 위치는, 핀홀렌즈의 중심으로 결정될 수 있다.For example, the position of the camera 200 may be determined as the center of the pinhole lens.

판재 평면은, 카메라 좌표계에서 다음의 수학식 1을 만족하는

Figure 112022116673181-pat00004
로 결정될 수 있다.The plate material plane satisfies the following Equation 1 in the camera coordinate system
Figure 112022116673181-pat00004
can be determined by

Figure 112021142837226-pat00006
Figure 112021142837226-pat00006

이때,

Figure 112021142837226-pat00007
은 판재 평면의 법선 벡터를 의미한다. 그리고
Figure 112021142837226-pat00008
은 판재 평면 위의 임의의 한 점을 의미한다.At this time,
Figure 112021142837226-pat00007
means the normal vector of the plate plane. And
Figure 112021142837226-pat00008
means an arbitrary point on the plate plane.

도 5는 일 실시예들에 따른 복수의 윤곽점들에 대한 카메라 좌표계 상의 샘플을 도시한 도면이다.5 is a diagram illustrating a sample on a camera coordinate system for a plurality of contour points according to an exemplary embodiment.

도 5를 참조하면, 타깃 영상을 구성하는 픽셀의 이미지 좌표

Figure 112021142837226-pat00009
는 다음과 같이 표현될 수 있다.Referring to FIG. 5 , image coordinates of pixels constituting a target image
Figure 112021142837226-pat00009
can be expressed as

Figure 112021142837226-pat00010
Figure 112021142837226-pat00010

이때,

Figure 112021142837226-pat00011
는 타깃 영상의 가로 방향 해상도이고
Figure 112021142837226-pat00012
는 타깃 영상의 세로 방향 해상도이다. 일 예로, 640 * 480의 해상도로 촬영된 타깃 영상에서
Figure 112021142837226-pat00013
일 수 있다.At this time,
Figure 112021142837226-pat00011
is the horizontal resolution of the target image and
Figure 112021142837226-pat00012
is the vertical resolution of the target image. For example, in a target image captured at a resolution of 640 * 480
Figure 112021142837226-pat00013
can be

타깃 영상에서 복수의 윤곽점들

Figure 112021142837226-pat00014
는 다음과 같이 정의될 수 있다.A plurality of contour points in the target image
Figure 112021142837226-pat00014
can be defined as:

Figure 112021142837226-pat00015
Figure 112021142837226-pat00015

여기서,

Figure 112021142837226-pat00016
는 복수의 윤곽점들 중 하나에 해당하는 이미지 좌표를 나타낸다.here,
Figure 112021142837226-pat00016
represents an image coordinate corresponding to one of a plurality of contour points.

프로세서(120)는 픽셀의 이미지 좌표로 표현된

Figure 112021142837226-pat00017
에 대하여 이를 카메라 좌표계 상의 좌표로 변환하기 위해 샘플
Figure 112021142837226-pat00018
을 다음의 수학식 2로 계산할 수 있다.Processor 120 is expressed in image coordinates of pixels
Figure 112021142837226-pat00017
For a sample to convert it to coordinates on the camera coordinate system
Figure 112021142837226-pat00018
can be calculated by Equation 2 below.

Figure 112021142837226-pat00019
Figure 112021142837226-pat00019

이때,

Figure 112021142837226-pat00020
는 카메라(200)에 대한 카메라 고유 행렬(camera intrinsic matrix)로서,
Figure 112021142837226-pat00021
로 정의될 수 있다. 카메라 고유 행렬
Figure 112021142837226-pat00022
은 카메라(200)의 상태를 기초로 결정될 수 있다.At this time,
Figure 112021142837226-pat00020
Is the camera intrinsic matrix for the camera 200,
Figure 112021142837226-pat00021
can be defined as camera eigen matrix
Figure 112021142837226-pat00022
may be determined based on the state of the camera 200 .

Figure 112022116673181-pat00025
는 카메라(200)의 수평 초점거리이고,
Figure 112022116673181-pat00026
는 카메라(200)의 수직 초점거리이다.
Figure 112022116673181-pat00025
is the horizontal focal length of the camera 200,
Figure 112022116673181-pat00026
is the vertical focal length of the camera 200.

Figure 112021142837226-pat00027
는 미리 설정된 비대칭 계수(skew coefficient)이다.
Figure 112021142837226-pat00028
는 타깃 영상에서 카메라(200)의 투영 중심점(CoP, center of projection)의 x축 상의 좌표값이고,
Figure 112021142837226-pat00029
는 타깃 영상에서 투영 중심점의 y축 상의 좌표값이다.
Figure 112021142837226-pat00027
Is a preset skew coefficient.
Figure 112021142837226-pat00028
Is a coordinate value on the x-axis of the center of projection (CoP) of the camera 200 in the target image,
Figure 112021142837226-pat00029
is a coordinate value on the y-axis of the projection center point in the target image.

도 6은 일 실시예들에 따른 복수의 윤곽점들 중 하나 이상에 대한 투영점을 도시한 도면이다.6 is a diagram illustrating projection points for one or more of a plurality of contour points according to an exemplary embodiment.

도 6을 참조하면, 복수의 윤곽점들 중 하나 이상이 판재 평면에 투영될 수 있다.Referring to FIG. 6 , one or more of a plurality of contour points may be projected onto a plane of the plate material.

이때, 복수의 윤곽점들 중 하나 이상이 판재 평면에 투영된 투영점을 결정하기 위해서, 카메라에서 판재 평면으로 향하는 직선이 판재 평면과 이루는 교점을 결정해야 한다.At this time, in order to determine a projected point where one or more of the plurality of contour points is projected onto the plate material plane, it is necessary to determine an intersection point formed by a straight line extending from the camera to the plate material plane and the plate material plane.

한편, 본 발명의 실시예들에서, 프로세서(120)는 전술한 깊이 정보가 타깃 영상에 포함된 픽셀들 중에서 몇 개의 픽셀에 대한 깊이를 포함하는지에 따라 전술한 교점을 다르게 결정할 수 있다.Meanwhile, in embodiments of the present invention, the processor 120 may determine the aforementioned intersection point differently according to how many pixels the depth information includes among pixels included in the target image.

먼저, 깊이 정보가 타깃 영상에 포함된 픽셀들 중 임계값 미만의 픽셀에 대한 깊이를 포함하는 경우를 설명한다.First, a case in which the depth information includes the depth of pixels less than a threshold among pixels included in the target image will be described.

이때, 프로세서(120)는 카메라 좌표계 상에서 카메라(200)의 위치를 나타내는 위치 벡터

Figure 112021142837226-pat00030
에서 전술한 샘플
Figure 112021142837226-pat00031
를 향하는 방향 벡터
Figure 112021142837226-pat00032
를 다음과 같이 결정할 수 있다. 카메라 좌표계에서 카메라(200)의 위치가 원점으로 정해지므로 위치 벡터
Figure 112021142837226-pat00033
는 영(zero) 벡터일 수 있다.At this time, the processor 120 generates a position vector representing the position of the camera 200 on the camera coordinate system.
Figure 112021142837226-pat00030
the sample described above in
Figure 112021142837226-pat00031
direction vector towards
Figure 112021142837226-pat00032
can be determined as follows. Since the position of the camera 200 is determined as the origin in the camera coordinate system, the position vector
Figure 112021142837226-pat00033
may be a zero vector.

Figure 112021142837226-pat00034
Figure 112021142837226-pat00034

이때, 프로세서(120)는 카메라의 위치 벡터

Figure 112021142837226-pat00035
에서 방향 벡터
Figure 112021142837226-pat00036
방향으로 뻗은 직선이 판재 평면과 이루는 교점
Figure 112021142837226-pat00037
을 다음과 같이 결정할 수 있다.At this time, the processor 120 generates a position vector of the camera.
Figure 112021142837226-pat00035
direction vector from
Figure 112021142837226-pat00036
The point of intersection of a straight line extending in the direction
Figure 112021142837226-pat00037
can be determined as follows.

먼저 카메라의 위치 벡터

Figure 112021142837226-pat00038
에서 방향 벡터
Figure 112021142837226-pat00039
방향으로 뻗은 직선 위의 임의의 점은 다음과 같이 결정될 수 있다.First, the position vector of the camera
Figure 112021142837226-pat00038
direction vector from
Figure 112021142837226-pat00039
Any point on a straight line extending in the direction can be determined as

Figure 112021142837226-pat00040
Figure 112021142837226-pat00040

이 식을 전술한 판재 평면의 방정식

Figure 112021142837226-pat00041
에 대입하면
Figure 112021142837226-pat00042
는 다음과 같이 도출된다.Equation of the plate plane described above
Figure 112021142837226-pat00041
Substituting into
Figure 112021142837226-pat00042
is derived as follows.

Figure 112021142837226-pat00043
Figure 112021142837226-pat00043

계산된

Figure 112021142837226-pat00044
Figure 112021142837226-pat00045
에 대입하면, 카메라의 위치 벡터
Figure 112021142837226-pat00046
에서 방향 벡터
Figure 112021142837226-pat00047
방향으로 뻗은 직선이 판재 평면과 이루는 교점
Figure 112021142837226-pat00048
는 다음과 같이 수학식 3으로 결정될 수 있다.calculated
Figure 112021142837226-pat00044
cast
Figure 112021142837226-pat00045
Substituting into , the position vector of the camera
Figure 112021142837226-pat00046
direction vector from
Figure 112021142837226-pat00047
The point of intersection of a straight line extending in the direction
Figure 112021142837226-pat00048
Can be determined by Equation 3 as follows.

Figure 112021142837226-pat00049
Figure 112021142837226-pat00049

다음으로, 깊이 정보가 타깃 영상에 포함된 픽셀들 중 임계값 이상의 픽셀에 대한 깊이를 포함하는 경우를 설명한다.Next, a case in which the depth information includes depths of pixels greater than or equal to a threshold value among pixels included in the target image will be described.

이때, 프로세서(120)는 전술한

Figure 112021142837226-pat00050
에 대한 카메라 좌표계 상의 좌표인
Figure 112021142837226-pat00051
를 다음과 같이 결정할 수 있다.At this time, the processor 120 is
Figure 112021142837226-pat00050
is a coordinate on the camera coordinate system for
Figure 112021142837226-pat00051
can be determined as follows.

Figure 112021142837226-pat00052
Figure 112021142837226-pat00052

여기서

Figure 112021142837226-pat00053
는 타깃 영상에서
Figure 112021142837226-pat00054
에 대응되는 위치의 좌표를 의미한다.here
Figure 112021142837226-pat00053
in the target image
Figure 112021142837226-pat00054
It means the coordinates of the position corresponding to .

그리고

Figure 112021142837226-pat00055
Figure 112021142837226-pat00056
에서 카메라(200)의 투영 방향과 수직인 평면까지의 수직 거리를 의미한다.And
Figure 112021142837226-pat00055
Is
Figure 112021142837226-pat00056
It means the vertical distance from to the plane perpendicular to the projection direction of the camera 200.

이때, 프로세서(120)는 카메라의 위치 벡터

Figure 112021142837226-pat00057
에서, 전술한
Figure 112021142837226-pat00058
를 향하는 방향 벡터
Figure 112021142837226-pat00059
를 다음과 같이 결정할 수 있다.At this time, the processor 120 generates a position vector of the camera.
Figure 112021142837226-pat00057
in the above
Figure 112021142837226-pat00058
direction vector towards
Figure 112021142837226-pat00059
can be determined as follows.

Figure 112021142837226-pat00060
Figure 112021142837226-pat00060

이때, 프로세서(120)는 카메라의 위치 벡터

Figure 112021142837226-pat00061
에서 방향 벡터
Figure 112021142837226-pat00062
방향인 직선이 판재 평면과 이루는 교점
Figure 112021142837226-pat00063
을 다음과 같이 수학식 4로 결정할 수 있다.At this time, the processor 120 generates a position vector of the camera.
Figure 112021142837226-pat00061
direction vector from
Figure 112021142837226-pat00062
The point of intersection of the straight line with the plane of the sheet
Figure 112021142837226-pat00063
can be determined by Equation 4 as follows.

Figure 112021142837226-pat00064
Figure 112021142837226-pat00064

단, 이때, 전술한

Figure 112021142837226-pat00065
Figure 112021142837226-pat00066
의 거리가 설정된 임계 거리를 초과하는 경우에는, 프로세서(120)는
Figure 112021142837226-pat00067
에 대응하는 윤곽점이 판재 평면에 대응하지 않는다고 판단하고,
Figure 112021142837226-pat00068
를 판재 평면에 존재하는 투영점에서 제외할 수 있다.However, at this time, the aforementioned
Figure 112021142837226-pat00065
Wow
Figure 112021142837226-pat00066
When the distance of exceeds the set threshold distance, the processor 120
Figure 112021142837226-pat00067
It is determined that the contour point corresponding to does not correspond to the plate material plane,
Figure 112021142837226-pat00068
can be excluded from projection points existing on the plate plane.

도 7은 일 실시예들에 따른 투영점들에 대한 판재 평면 상에서의 좌표를 도시한 도면이다.7 is a diagram illustrating coordinates on a plate material plane for projected points according to an exemplary embodiment.

도 7을 참조하면, 투영점들은 판재 평면 상에 위치한다. 판재 평면 상에 위치하는 점은, 판재 평면 상에 위치하는 서로 수직인 두 직선 A, B을 축으로 하는 2차원 좌표로 표현될 수 있다.Referring to FIG. 7 , projected points are located on the plate material plane. Points located on the plate material plane may be expressed as two-dimensional coordinates having two mutually perpendicular straight lines A and B located on the plate material plane as axes.

본 발명의 실시예들에서, 프로세서(120)는 먼저 판재 평면의 법선 벡터

Figure 112021142837226-pat00069
및 판재 평면에 평행한 단위 벡터
Figure 112021142837226-pat00070
에 수직인 벡터
Figure 112021142837226-pat00071
를 다음과 같이 구할 수 있다.In embodiments of the present invention, the processor 120 first calculates the normal vector of the plane of the plank.
Figure 112021142837226-pat00069
and a unit vector parallel to the plate plane.
Figure 112021142837226-pat00070
vector perpendicular to
Figure 112021142837226-pat00071
can be obtained as:

Figure 112021142837226-pat00072
Figure 112021142837226-pat00072

프로세서(120)는 전술한

Figure 112021142837226-pat00073
및, 판재 평면 상의 한 점
Figure 112021142837226-pat00074
을 기초로 하여, 카메라 좌표계 상의 점을 판재 평면 상의 좌표로 변환하는 행렬
Figure 112021142837226-pat00075
을 다음과 같이 구할 수 있다.The processor 120 is described above
Figure 112021142837226-pat00073
and, a point on the plate plane
Figure 112021142837226-pat00074
Matrix for converting points on the camera coordinate system to coordinates on the plate plane based on
Figure 112021142837226-pat00075
can be obtained as:

Figure 112021142837226-pat00076
Figure 112021142837226-pat00076

프로세서(120)는 전술한

Figure 112021142837226-pat00077
Figure 112021142837226-pat00078
를 기초로 하여, 투영점들에 대한 판재 평면 상에서의 좌표
Figure 112021142837226-pat00079
를 다음과 같이 결정할 수 있다.The processor 120 is described above
Figure 112021142837226-pat00077
and
Figure 112021142837226-pat00078
Coordinates on the plate plane for projection points, based on
Figure 112021142837226-pat00079
can be determined as follows.

Figure 112021142837226-pat00080
Figure 112021142837226-pat00080

도 8은 일 실시예에 따른 윤곽점 변환 방법의 흐름도이다.8 is a flowchart of a contour point conversion method according to an exemplary embodiment.

도 8을 참조하면, 윤곽점 변환 방법은 먼저, 카메라(200)를 통해 판재를 촬상한 영상인 타깃 영상을 획득하는 단계(S810)를 포함할 수 있다.Referring to FIG. 8 , the contour point conversion method may first include acquiring a target image, which is an image obtained by capturing a plate material through a camera 200 (S810).

그리고, 윤곽점 변환 방법은 S810 단계에서 획득한 타깃 영상에서 복수의 윤곽점들을 결정하는 단계(S820)를 포함할 수 있다.And, the contour point conversion method may include determining a plurality of contour points in the target image acquired in step S810 (S820).

그리고, 윤곽점 변환 방법은 S810 단계에서 획득한 타깃 영상에서 판재 평면을 결정하는 단계(S830)를 포함할 수 있다.And, the contour point conversion method may include determining a plate material plane in the target image acquired in step S810 (S830).

S830 단계는, 일 예로, i) 카메라 또는 ii) 타깃 영상에서 추출된 복수의 연속된 이미지들로부터 추출된 깊이 정보를 기초로 판재 평면을 결정할 수 있다.In operation S830 , for example, a plate material plane may be determined based on depth information extracted from i) a camera or ii) a plurality of consecutive images extracted from a target image.

판재 평면은, 카메라의 위치를 원점으로 하고, 타깃 영상의 가로 방향 축인 x축, 타깃 영상의 세로 방향 축인 y축 및 카메라의 렌즈가 바라보는 방향 축인 z축으로 결정되는 좌표계인 카메라 좌표계 상에서 다음을 만족하는

Figure 112022116673181-pat00082
로 결정될 수 있다.The plate plane is the camera coordinate system, which is a coordinate system determined by the x-axis, which is the horizontal axis of the target image, the y-axis, which is the vertical axis of the target image, and the z-axis, which is the direction axis of the camera lens, with the camera position as the origin. satisfied
Figure 112022116673181-pat00082
can be determined by

Figure 112021142837226-pat00083
Figure 112021142837226-pat00083

이때,

Figure 112021142837226-pat00084
은 판재 평면의 법선 벡터이고,
Figure 112021142837226-pat00085
은 판재 평면 위의 임의의 한 점이다.At this time,
Figure 112021142837226-pat00084
is the normal vector of the plate plane,
Figure 112021142837226-pat00085
is an arbitrary point on the plate plane.

그리고, 윤곽점 변환 방법은 S820 단계에서 결정된 복수의 윤곽점들을 판재 평면에 투영함으로써, 복수의 윤곽점들 중 하나 이상에 대한 투영점들을 결정하는 단계(S840)를 포함할 수 있다.The contour point conversion method may include a step of determining projected points for one or more of the plurality of contour points by projecting the plurality of contour points determined in step S820 onto the plane of the plate (S840).

S840 단계는, 복수의 윤곽점들 중 하나에 해당하는 이미지 좌표인

Figure 112021142837226-pat00086
의 카메라 좌표계 상의 좌표를 구하기 위한 샘플
Figure 112021142837226-pat00087
을 다음과 같이 계산할 수 있다.In step S840, image coordinates corresponding to one of the plurality of contour points
Figure 112021142837226-pat00086
Sample for obtaining coordinates on the camera coordinate system of
Figure 112021142837226-pat00087
can be calculated as:

Figure 112021142837226-pat00088
Figure 112021142837226-pat00088

여기서

Figure 112021142837226-pat00089
이고,here
Figure 112021142837226-pat00089
ego,

Figure 112022116673181-pat00091
는 카메라(200)의 수평 초점거리이고,
Figure 112022116673181-pat00091
is the horizontal focal length of the camera 200,

Figure 112021142837226-pat00092
는 카메라(200)의 수직 초점거리이고,
Figure 112021142837226-pat00092
is the vertical focal length of the camera 200,

Figure 112021142837226-pat00093
는 카메라(200)의 비대칭 계수(skew coefficient)이고,
Figure 112021142837226-pat00093
is the skew coefficient of the camera 200,

Figure 112021142837226-pat00094
는 카메라(200)의 투영 중심점의 x축 상의 좌표값이고,
Figure 112021142837226-pat00094
Is the coordinate value on the x-axis of the projection center point of the camera 200,

Figure 112021142837226-pat00095
는 투영 중심점의 y축 상의 좌표값이다.
Figure 112021142837226-pat00095
is the coordinate value on the y-axis of the projection center point.

일 예로, S840 단계는, 깊이 정보가 타깃 영상에 포함된 픽셀들 중 설정된 임계값 미만의 픽셀에 대한 깊이 정보를 포함하는 경우, 카메라의 카메라 좌표계 상에서의 위치를 나타내는 위치 벡터

Figure 112021142837226-pat00096
에서 샘플
Figure 112021142837226-pat00097
를 향하는 방향 벡터
Figure 112021142837226-pat00098
를 다음과 같이 결정할 수 있다.For example, in step S840, when the depth information includes depth information on a pixel less than a set threshold among pixels included in the target image, a position vector indicating a position of the camera on the camera coordinate system.
Figure 112021142837226-pat00096
sample from
Figure 112021142837226-pat00097
direction vector towards
Figure 112021142837226-pat00098
can be determined as follows.

Figure 112021142837226-pat00099
Figure 112021142837226-pat00099

그리고 S840 단계는, 위치 벡터

Figure 112021142837226-pat00100
에서 방향 벡터
Figure 112021142837226-pat00101
방향으로 뻗은 직선이 판재 평면과 이루는 교점
Figure 112021142837226-pat00102
을 다음과 같이 결정할 수 있다.And step S840, position vector
Figure 112021142837226-pat00100
direction vector from
Figure 112021142837226-pat00101
The point of intersection of a straight line extending in the direction
Figure 112021142837226-pat00102
can be determined as follows.

Figure 112021142837226-pat00103
Figure 112021142837226-pat00103

다른 예로, S840 단계는, 깊이 정보가 타깃 영상에 포함된 픽셀들 중 설정된 임계값 이상의 픽셀에 대한 깊이 정보를 포함하는 경우,

Figure 112021142837226-pat00104
에 대한 카메라 좌표계 상의 좌표인
Figure 112021142837226-pat00105
를 다음과 같이 결정할 수 있다.As another example, in step S840, when the depth information includes depth information about a pixel equal to or greater than a set threshold among pixels included in the target image,
Figure 112021142837226-pat00104
is a coordinate on the camera coordinate system for
Figure 112021142837226-pat00105
can be determined as follows.

Figure 112021142837226-pat00106
Figure 112021142837226-pat00106

이때,

Figure 112021142837226-pat00107
는 타깃 영상에서
Figure 112021142837226-pat00108
에 대응되는 위치의 좌표이고,
Figure 112021142837226-pat00109
Figure 112021142837226-pat00110
에서 z축과 수직인 평면까지의 수직 거리이다.At this time,
Figure 112021142837226-pat00107
in the target image
Figure 112021142837226-pat00108
is the coordinates of the position corresponding to
Figure 112021142837226-pat00109
Is
Figure 112021142837226-pat00110
is the vertical distance from to the plane perpendicular to the z-axis.

그리고 S840 단계는, 카메라의 카메라 좌표계 상에서의 위치를 나타내는 위치 벡터

Figure 112021142837226-pat00111
에서,
Figure 112021142837226-pat00112
를 향하는 방향 벡터
Figure 112021142837226-pat00113
를 다음과 같이 결정할 수 있다.And step S840, the position vector indicating the position of the camera on the camera coordinate system
Figure 112021142837226-pat00111
at,
Figure 112021142837226-pat00112
direction vector towards
Figure 112021142837226-pat00113
can be determined as follows.

Figure 112021142837226-pat00114
Figure 112021142837226-pat00114

그리고 S840 단계는, 위치 벡터

Figure 112021142837226-pat00115
에서 방향 벡터
Figure 112021142837226-pat00116
방향인 직선이 판재 평면과 이루는 교점
Figure 112021142837226-pat00117
을 다음과 같이 결정할 수 있다.And step S840, position vector
Figure 112021142837226-pat00115
direction vector from
Figure 112021142837226-pat00116
The point of intersection of the straight line with the plane of the sheet
Figure 112021142837226-pat00117
can be determined as follows.

Figure 112021142837226-pat00118
Figure 112021142837226-pat00118

한편,

Figure 112021142837226-pat00119
Figure 112021142837226-pat00120
의 거리가 설정된 임계 거리를 초과하는 경우,
Figure 112021142837226-pat00121
는 투영점들에서 제외될 수 있다.Meanwhile,
Figure 112021142837226-pat00119
Wow
Figure 112021142837226-pat00120
If the distance of exceeds the set critical distance,
Figure 112021142837226-pat00121
can be excluded from projection points.

그리고, 윤곽점 변환 방법은, S840 단계에서 결정된 투영점들을 기초로, 복수의 윤곽점들 중 하나 이상에 대한 판재 평면 상의 좌표를 계산하는 단계(S850)를 포함할 수 있다.Further, the contour point conversion method may include calculating coordinates on the plate material plane for one or more of the plurality of contour points based on the projected points determined in step S840 (S850).

S850 단계는, 판재 평면의 법선 벡터

Figure 112021142837226-pat00122
및 판재 평면에 평행한 단위 벡터
Figure 112021142837226-pat00123
에 수직인 벡터
Figure 112021142837226-pat00124
를 다음과 같이 구할 수 있다.Step S850 is the normal vector of the plate plane.
Figure 112021142837226-pat00122
and a unit vector parallel to the plate plane.
Figure 112021142837226-pat00123
vector perpendicular to
Figure 112021142837226-pat00124
can be obtained as:

Figure 112021142837226-pat00125
Figure 112021142837226-pat00125

그리고 S850 단계는,

Figure 112021142837226-pat00126
및 판재 평면 상의 한 점
Figure 112021142837226-pat00127
을 기초로 카메라 좌표계 상의 점을 판재 평면 상에서의 좌표로 변환하는 행렬
Figure 112021142837226-pat00128
을 다음과 같이 구할 수 있다.And step S850,
Figure 112021142837226-pat00126
and a point on the plane of the plate
Figure 112021142837226-pat00127
A matrix that converts points on the camera coordinate system to coordinates on the plate plane based on
Figure 112021142837226-pat00128
can be obtained as:

Figure 112021142837226-pat00129
Figure 112021142837226-pat00129

그리고 S850 단계는, 투영점들에 대한 판재 평면 상에서의 좌표

Figure 112021142837226-pat00130
를 다음과 같이 결정할 수 있다.And step S850, the coordinates on the plate material plane for the projected points
Figure 112021142837226-pat00130
can be determined as follows.

Figure 112021142837226-pat00131
Figure 112021142837226-pat00131

상술한 본 실시예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 실시예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다.The present embodiments described above may be implemented through various means. For example, the present embodiments may be implemented by hardware, firmware, software, or a combination thereof.

하드웨어에 의한 구현의 경우, 본 실시예들에 따른 윤곽점 변환 장치 및 그 방법은 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서, 컨트롤러, 마이크로 컨트롤러 또는 마이크로 프로세서 등에 의해 구현될 수 있다.In the case of hardware implementation, the contour point conversion device and method according to the present embodiments include one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), PLDs ( It can be implemented by Programmable Logic Devices), Field Programmable Gate Arrays (FPGAs), processors, controllers, microcontrollers or microprocessors.

펌웨어나 소프트웨어에 의한 구현의 경우, 본 실시예들에 따른 윤곽점 변환 방법은 이상에서 설명된 기능 또는 동작들을 수행하는 장치, 절차 또는 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드는 메모리 유닛에 저장되어 프로세서에 의해 구동될 수 있다. 메모리 유닛은 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 프로세서와 데이터를 주고 받을 수 있다.In the case of implementation by firmware or software, the contour point conversion method according to the present embodiments may be implemented in the form of a device, procedure, or function that performs the functions or operations described above. The software codes may be stored in a memory unit and driven by a processor. The memory unit may be located inside or outside the processor and exchange data with the processor by various means known in the art.

또한, 위에서 설명한 "시스템", "프로세서", "컨트롤러", "컴포넌트", "모듈", "인터페이스", "모델", 또는 "유닛" 등의 용어는 일반적으로 컴퓨터 관련 엔티티 하드웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어 또는 실행 중인 소프트웨어를 의미할 수 있다. 예를 들어, 전술한 구성요소는 프로세서에 의해서 구동되는 프로세스, 프로세서, 컨트롤러, 제어 프로세서, 개체, 실행 스레드, 프로그램 및/또는 컴퓨터일 수 있지만 이에 국한되지 않는다. 예를 들어, 컨트롤러 또는 프로세서에서 실행 중인 애플리케이션과 컨트롤러 또는 프로세서가 모두 구성 요소가 될 수 있다. 하나 이상의 구성 요소가 프로세스 및/또는 실행 스레드 내에 있을 수 있으며, 구성 요소들은 하나의 장치(예: 시스템, 컴퓨팅 디바이스 등)에 위치하거나 둘 이상의 장치에 분산되어 위치할 수 있다.Also, the terms "system", "processor", "controller", "component", "module", "interface", "model", or "unit" as described above generally refer to computer-related entities hardware, hardware and software. can mean a combination of, software, or running software. For example, but is not limited to, a process driven by a processor, a processor, a controller, a control processor, an object, a thread of execution, a program, and/or a computer. For example, a component can be both an application running on a controller or processor and a controller or processor. One or more components may reside within a process and/or thread of execution, and components may reside on one device (eg, system, computing device, etc.) or may be distributed across two or more devices.

한편, 또 다른 실시예는 전술한 윤곽점 변환 방법을 수행하는, 컴퓨터 기록매체에 저장되는 컴퓨터 프로그램을 제공한다. 또한 또 다른 실시예는 전술한 윤곽점 변환 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다. Meanwhile, another embodiment provides a computer program stored in a computer recording medium that performs the above-described contour point conversion method. In addition, another embodiment provides a computer-readable recording medium on which a program for realizing the above-described contour point conversion method is recorded.

기록매체에 기록된 프로그램은 컴퓨터에서 읽히어 설치되고 실행됨으로써 전술한 단계들을 실행할 수 있다.A program recorded on a recording medium may be read, installed, and executed in a computer to execute the above-described steps.

이와 같이, 컴퓨터가 기록매체에 기록된 프로그램을 읽어 들여 프로그램으로 구현된 기능들을 실행시키기 위하여, 전술한 프로그램은 컴퓨터의 프로세서(CPU)가 컴퓨터의 장치 인터페이스(Interface)를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다.In this way, in order for the computer to read the program recorded on the recording medium and execute the functions implemented by the program, the above-described program is C, C++ that can be read by the computer's processor (CPU) through the computer's device interface. , JAVA, may include a code coded in a computer language such as machine language.

이러한 코드는 전술한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Function Code)를 포함할 수 있고, 전술한 기능들을 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수도 있다.These codes may include functional codes related to functions defining the above-described functions, and may include control codes related to execution procedures necessary for a processor of a computer to execute the above-described functions according to a predetermined procedure.

또한, 이러한 코드는 전술한 기능들을 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조 되어야 하는지에 대한 메모리 참조 관련 코드를 더 포함할 수 있다.In addition, these codes may further include memory reference related codes for which location (address address) of the computer's internal or external memory should be referenced for additional information or media necessary for the computer's processor to execute the above-mentioned functions. .

또한, 컴퓨터의 프로세서가 전술한 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 컴퓨터의 프로세서가 컴퓨터의 통신 모듈을 이용하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야만 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수도 있다.In addition, when the computer processor needs to communicate with any other remote computer or server in order to execute the above-mentioned functions, the code allows the computer processor to use the computer's communication module to communicate with any other remote computer or server. Communication-related codes for how to communicate with other computers or servers, what information or media to transmit/receive during communication, and the like may be further included.

이상에서 전술한 바와 같은 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는, 일 예로, ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 미디어 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함할 수 있다.Recording media that can be read by a computer on which the program as described above is recorded are, for example, ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical media storage device, etc., and also carrier wave (e.g. , Transmission through the Internet) may also include what is implemented in the form of.

또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.In addition, the computer-readable recording medium is distributed in computer systems connected through a network, so that computer-readable codes can be stored and executed in a distributed manner.

그리고, 본 발명을 구현하기 위한 기능적인(Functional) 프로그램과 이와 관련된 코드 및 코드 세그먼트 등은, 기록매체를 읽어서 프로그램을 실행시키는 컴퓨터의 시스템 환경 등을 고려하여, 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론되거나 변경될 수도 있다.In addition, a functional program for implementing the present invention, codes and code segments related thereto, in consideration of the system environment of a computer that reads a recording medium and executes a program, etc., help programmers in the art to which the present invention belongs It may be easily inferred or changed by

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.In the above, even though all the components constituting the embodiment of the present invention have been described as being combined or operated as one, the present invention is not necessarily limited to these embodiments. That is, within the scope of the object of the present invention, all of the components may be selectively combined with one or more to operate.

이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Terms such as "comprise", "comprise" or "having" described above mean that the corresponding component may be inherent unless otherwise stated, and therefore do not exclude other components. It should be construed that it may further include other components. All terms, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the present invention belongs, unless defined otherwise. Commonly used terms, such as terms defined in a dictionary, should be interpreted as consistent with the meaning in the context of the related art, and unless explicitly defined in the present invention, they are not interpreted in an ideal or excessively formal meaning.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely an example of the technical idea of the present invention, and various modifications and variations can be made to those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention, but to explain, and the scope of the technical idea of the present invention is not limited by these embodiments. The protection scope of the present invention should be construed according to the claims below, and all technical ideas within the equivalent range should be construed as being included in the scope of the present invention.

100 : 윤곽점 변환 장치
110 : 메모리
120 : 프로세서
100: contour point converter
110: memory
120: processor

Claims (16)

카메라를 통해 판재를 촬상한 영상인 타깃 영상을 획득하는 단계;
상기 타깃 영상에서 복수의 윤곽점들을 결정하는 단계;
상기 타깃 영상에서 상기 판재에 대응하는 2차원 평면인 판재 평면을 결정하는 단계;
상기 복수의 윤곽점들 중 하나 이상을 상기 판재 평면에 투영하여 생성된 하나 이상의 투영점들을 결정하는 단계; 및
상기 투영점들에 대한 상기 판재 평면 상의 좌표를 계산하는 단계를 포함하고,
상기 타깃 영상에서 상기 판재 평면을 결정하는 단계는,
i) 상기 카메라 또는 ii) 상기 타깃 영상에서 추출된 복수의 연속된 이미지들로부터 추출된 깊이 정보를 기초로 상기 판재 평면을 결정하고,
상기 판재 평면은,
상기 카메라의 위치를 원점으로 하고, 상기 타깃 영상의 가로 방향 축인 x축, 상기 타깃 영상의 세로 방향 축인 y축 및 상기 카메라의 렌즈가 바라보는 방향 축인 z축으로 결정되는 좌표계인 카메라 좌표계 상에서 다음을 만족하는
Figure 112022116673181-pat00238
로 결정되고,
Figure 112022116673181-pat00239

상기
Figure 112022116673181-pat00240
은 상기 판재 평면의 법선 벡터이고,
상기
Figure 112022116673181-pat00241
은 상기 판재 평면 위의 임의의 한 점이고,
상기 투영점들을 결정하는 단계는,
상기 복수의 윤곽점들 중 하나에 해당하는 이미지 좌표인
Figure 112022116673181-pat00242
의 상기 카메라 좌표계 상의 좌표를 구하기 위한 샘플
Figure 112022116673181-pat00243
을 다음과 같이 계산하고,
Figure 112022116673181-pat00244

여기서
Figure 112022116673181-pat00245
이고,
Figure 112022116673181-pat00246
는 상기 카메라의 수평 초점거리이고,
Figure 112022116673181-pat00247
는 상기 카메라의 수직 초점거리이고,
Figure 112022116673181-pat00248
는 상기 카메라의 비대칭 계수(skew coefficient)이고,
Figure 112022116673181-pat00249
는 상기 카메라의 투영 중심점의 상기 x축 상의 좌표값이고,
Figure 112022116673181-pat00250
는 상기 투영 중심점의 상기 y축 상의 좌표값인, 윤곽점 변환 방법.
Obtaining a target image, which is an image obtained by capturing a plate material through a camera;
determining a plurality of contour points in the target image;
determining a plate material plane that is a two-dimensional plane corresponding to the plate material in the target image;
determining one or more projected points generated by projecting one or more of the plurality of contour points onto the plate material plane; and
Calculating coordinates on the plate material plane for the projected points;
Determining the plate material plane in the target image,
i) determining the plate material plane based on depth information extracted from the camera or ii) a plurality of consecutive images extracted from the target image;
The plate plane is
On the camera coordinate system, which is a coordinate system determined by the x-axis, which is the horizontal axis of the target image, the y-axis, which is the vertical axis of the target image, and the z-axis, which is the axis in the direction in which the lens of the camera is viewed, with the position of the camera as the origin, the following satisfied
Figure 112022116673181-pat00238
is determined by
Figure 112022116673181-pat00239

remind
Figure 112022116673181-pat00240
Is the normal vector of the plate material plane,
remind
Figure 112022116673181-pat00241
Is an arbitrary point on the plate material plane,
The step of determining the projected points is,
Image coordinates corresponding to one of the plurality of contour points
Figure 112022116673181-pat00242
Sample for obtaining coordinates on the camera coordinate system of
Figure 112022116673181-pat00243
is calculated as follows,
Figure 112022116673181-pat00244

here
Figure 112022116673181-pat00245
ego,
Figure 112022116673181-pat00246
is the horizontal focal length of the camera,
Figure 112022116673181-pat00247
is the vertical focal length of the camera,
Figure 112022116673181-pat00248
is the skew coefficient of the camera,
Figure 112022116673181-pat00249
Is the coordinate value on the x-axis of the projection center point of the camera,
Figure 112022116673181-pat00250
is a coordinate value on the y-axis of the projection center point, the contour point conversion method.
삭제delete 삭제delete 삭제delete 제1항에 있어서,
상기 투영점들을 결정하는 단계는,
상기 깊이 정보가 상기 타깃 영상에 포함된 픽셀들 중 설정된 임계값 미만의 픽셀에 대한 깊이 정보를 포함하는 경우,
상기 카메라의 상기 카메라 좌표계 상에서의 위치를 나타내는 위치 벡터
Figure 112022116673181-pat00145
에서 상기 샘플
Figure 112022116673181-pat00146
를 향하는 방향 벡터
Figure 112022116673181-pat00147
를 다음과 같이 결정하고,
Figure 112022116673181-pat00148

상기 위치 벡터
Figure 112022116673181-pat00149
에서 상기 방향 벡터
Figure 112022116673181-pat00150
방향으로 뻗은 직선이 상기 판재 평면과 이루는 교점
Figure 112022116673181-pat00151
을 다음과 같이 결정하는, 윤곽점 변환 방법.
Figure 112022116673181-pat00152

According to claim 1,
The step of determining the projected points is,
When the depth information includes depth information on pixels less than a set threshold among pixels included in the target image,
A position vector representing the position of the camera on the camera coordinate system
Figure 112022116673181-pat00145
from the above sample
Figure 112022116673181-pat00146
direction vector towards
Figure 112022116673181-pat00147
is determined as follows,
Figure 112022116673181-pat00148

the position vector
Figure 112022116673181-pat00149
the direction vector from
Figure 112022116673181-pat00150
The point of intersection of the straight line extending in the direction and the plane of the plate
Figure 112022116673181-pat00151
Contour point conversion method, which determines as follows.
Figure 112022116673181-pat00152

제1항에 있어서,
상기 투영점들을 결정하는 단계는,
상기 깊이 정보가 상기 타깃 영상에 포함된 픽셀들 중 설정된 임계값 이상의 픽셀에 대한 깊이 정보를 포함하는 경우,
상기
Figure 112022116673181-pat00153
에 대한 상기 카메라 좌표계 상의 좌표인
Figure 112022116673181-pat00154
를 다음과 같이 결정하고,
Figure 112022116673181-pat00155

Figure 112022116673181-pat00156
는 상기 타깃 영상에서 상기
Figure 112022116673181-pat00157
에 대응되는 위치의 좌표이고,
Figure 112022116673181-pat00158
는 상기
Figure 112022116673181-pat00159
에서 상기 z축과 수직인 평면까지의 수직 거리이고,
상기 카메라의 상기 카메라 좌표계 상에서의 위치를 나타내는 위치 벡터
Figure 112022116673181-pat00160
에서, 상기
Figure 112022116673181-pat00161
를 향하는 방향 벡터
Figure 112022116673181-pat00162
를 다음과 같이 결정하고,
Figure 112022116673181-pat00163

상기 위치 벡터
Figure 112022116673181-pat00164
에서 상기 방향 벡터
Figure 112022116673181-pat00165
방향인 직선이 상기 판재 평면과 이루는 교점
Figure 112022116673181-pat00166
을 다음과 같이 결정하는, 윤곽점 변환 방법.
Figure 112022116673181-pat00167

According to claim 1,
The step of determining the projected points is,
When the depth information includes depth information about a pixel equal to or greater than a set threshold among pixels included in the target image,
remind
Figure 112022116673181-pat00153
Coordinates on the camera coordinate system for
Figure 112022116673181-pat00154
is determined as follows,
Figure 112022116673181-pat00155

Figure 112022116673181-pat00156
In the target image,
Figure 112022116673181-pat00157
is the coordinates of the position corresponding to
Figure 112022116673181-pat00158
said
Figure 112022116673181-pat00159
is the vertical distance from to the plane perpendicular to the z-axis,
A position vector representing the position of the camera on the camera coordinate system
Figure 112022116673181-pat00160
in the above
Figure 112022116673181-pat00161
direction vector towards
Figure 112022116673181-pat00162
is determined as follows,
Figure 112022116673181-pat00163

the position vector
Figure 112022116673181-pat00164
the direction vector from
Figure 112022116673181-pat00165
The point of intersection of the straight line in the direction and the plane of the plate
Figure 112022116673181-pat00166
Contour point conversion method, which determines as follows.
Figure 112022116673181-pat00167

제6항에 있어서,
상기
Figure 112021142837226-pat00168
와 상기
Figure 112021142837226-pat00169
의 거리가 설정된 임계 거리를 초과하는 경우, 상기
Figure 112021142837226-pat00170
는 상기 투영점들에서 제외되는, 윤곽점 변환 방법.
According to claim 6,
remind
Figure 112021142837226-pat00168
and above
Figure 112021142837226-pat00169
If the distance of exceeds the set threshold distance, the
Figure 112021142837226-pat00170
Is excluded from the projection points, the contour point conversion method.
제1항에 있어서,
상기 복수의 윤곽점들 중 하나 이상에 대한 상기 판재 평면 상에서의 좌표를 계산하는 단계는,
상기 판재 평면의 법선 벡터
Figure 112022116673181-pat00171
및 상기 판재 평면에 평행한 단위 벡터
Figure 112022116673181-pat00172
에 수직인 벡터
Figure 112022116673181-pat00173
를 다음과 같이 구하고,
Figure 112022116673181-pat00174

상기
Figure 112022116673181-pat00175
및 상기 판재 평면 상의 한 점
Figure 112022116673181-pat00176
을 기초로 상기 카메라 좌표계 상의 점을 상기 판재 평면 상에서의 좌표로 변환하는 행렬
Figure 112022116673181-pat00177
을 다음과 같이 구하고,
Figure 112022116673181-pat00178

상기 투영점들에 대한 상기 판재 평면 상에서의 좌표
Figure 112022116673181-pat00179
를 다음과 같이 결정하는, 윤곽점 변환 방법.
Figure 112022116673181-pat00180

According to claim 1,
Calculating coordinates on the plate material plane for one or more of the plurality of contour points,
Normal vector of the plate plane
Figure 112022116673181-pat00171
and a unit vector parallel to the plate plane.
Figure 112022116673181-pat00172
vector perpendicular to
Figure 112022116673181-pat00173
is obtained as follows,
Figure 112022116673181-pat00174

remind
Figure 112022116673181-pat00175
and a point on the plate plane.
Figure 112022116673181-pat00176
A matrix for converting points on the camera coordinate system to coordinates on the plate material plane based on
Figure 112022116673181-pat00177
is obtained as follows,
Figure 112022116673181-pat00178

Coordinates on the plate plane for the projected points
Figure 112022116673181-pat00179
Contour point conversion method for determining as follows.
Figure 112022116673181-pat00180

카메라를 통해 판재를 촬상한 영상인 타깃 영상을 저장하는 메모리; 및
상기 타깃 영상에서 복수의 윤곽점들을 결정하고,
상기 타깃 영상에서 상기 판재에 대응하는 2차원 평면인 판재 평면을 결정하고,
상기 복수의 윤곽점들 중 하나 이상을 상기 판재 평면에 투영하여 생성된 하나 이상의 투영점들을 결정하고,
상기 투영점들에 대한 상기 판재 평면 상의 좌표를 계산하는 프로세서;를 포함하고,
상기 프로세서는,
i) 상기 카메라 또는 ii) 상기 타깃 영상으로부터 추출된 복수의 연속된 이미지들로부터 획득한 깊이 정보를 기초로 상기 판재 평면을 결정하고,
상기 판재 평면은,
상기 카메라의 위치를 원점으로 하고, 상기 타깃 영상의 가로 방향 축인 x축, 상기 타깃 영상의 세로 방향 축인 y축 및 상기 카메라의 렌즈가 바라보는 방향 축인 z축으로 결정되는 좌표계인 카메라 좌표계 상에서 다음을 만족하는
Figure 112022116673181-pat00251
로 결정되고,
Figure 112022116673181-pat00252

상기
Figure 112022116673181-pat00253
은 상기 판재 평면의 법선 벡터이고,
상기
Figure 112022116673181-pat00254
은 상기 판재 평면 위의 임의의 한 점이고,
상기 프로세서는,
상기 복수의 윤곽점들 중 하나에 해당하는 이미지 좌표인
Figure 112022116673181-pat00255
의 상기 카메라 좌표계 상의 좌표를 구하기 위한 샘플
Figure 112022116673181-pat00256
을 다음과 같이 계산하고,
Figure 112022116673181-pat00257

여기서
Figure 112022116673181-pat00258
이고,
Figure 112022116673181-pat00259
는 상기 카메라의 수평 초점거리이고,
Figure 112022116673181-pat00260
는 상기 카메라의 수직 초점거리이고,
Figure 112022116673181-pat00261
는 상기 카메라의 비대칭 계수(skew coefficient)이고,
Figure 112022116673181-pat00262
는 상기 카메라의 투영 중심점의 상기 x축 상의 좌표값이고,
Figure 112022116673181-pat00263
는 상기 투영 중심점의 상기 y축 상의 좌표값인, 윤곽점 변환 장치.
a memory for storing a target image, which is an image obtained by capturing a plate material through a camera; and
determining a plurality of contour points in the target image;
Determining a plate material plane, which is a two-dimensional plane corresponding to the plate material, in the target image;
determining one or more projection points generated by projecting one or more of the plurality of contour points onto the plate material plane;
A processor for calculating coordinates of the projected points on the plate material plane;
the processor,
i) determining the plate material plane based on depth information obtained from the camera or ii) a plurality of consecutive images extracted from the target image;
The plate plane is
On the camera coordinate system, which is a coordinate system determined by the x-axis, which is the horizontal axis of the target image, the y-axis, which is the vertical axis of the target image, and the z-axis, which is the axis in the direction in which the lens of the camera is viewed, with the position of the camera as the origin, the following satisfied
Figure 112022116673181-pat00251
is determined by
Figure 112022116673181-pat00252

remind
Figure 112022116673181-pat00253
Is the normal vector of the plate material plane,
remind
Figure 112022116673181-pat00254
Is an arbitrary point on the plate material plane,
the processor,
Image coordinates corresponding to one of the plurality of contour points
Figure 112022116673181-pat00255
Sample for obtaining coordinates on the camera coordinate system of
Figure 112022116673181-pat00256
is calculated as follows,
Figure 112022116673181-pat00257

here
Figure 112022116673181-pat00258
ego,
Figure 112022116673181-pat00259
is the horizontal focal length of the camera,
Figure 112022116673181-pat00260
is the vertical focal length of the camera,
Figure 112022116673181-pat00261
is the skew coefficient of the camera,
Figure 112022116673181-pat00262
Is the coordinate value on the x-axis of the projection center point of the camera,
Figure 112022116673181-pat00263
is a coordinate value of the projection center point on the y-axis.
삭제delete 삭제delete 삭제delete 제9항에 있어서,
상기 프로세서는,
상기 깊이 정보가 상기 타깃 영상에 포함된 픽셀들 중 설정된 임계값 미만의 픽셀에 대한 깊이를 포함하는 경우,
상기 카메라 좌표계 상에서 상기 카메라의 위치를 나타내는 위치 벡터
Figure 112022116673181-pat00194
에서 상기 샘플
Figure 112022116673181-pat00195
를 향하는 방향 벡터
Figure 112022116673181-pat00196
를 다음과 같이 결정하고,
Figure 112022116673181-pat00197

상기 위치 벡터
Figure 112022116673181-pat00198
에서 상기 방향 벡터
Figure 112022116673181-pat00199
방향으로 뻗은 직선이 상기 판재 평면과 이루는 교점
Figure 112022116673181-pat00200
을 다음과 같이 결정하는, 윤곽점 변환 장치.
Figure 112022116673181-pat00201

According to claim 9,
the processor,
When the depth information includes a depth of a pixel less than a set threshold among pixels included in the target image,
A position vector representing the position of the camera on the camera coordinate system
Figure 112022116673181-pat00194
from the above sample
Figure 112022116673181-pat00195
direction vector towards
Figure 112022116673181-pat00196
is determined as follows,
Figure 112022116673181-pat00197

the position vector
Figure 112022116673181-pat00198
the direction vector from
Figure 112022116673181-pat00199
The point of intersection of the straight line extending in the direction and the plane of the plate
Figure 112022116673181-pat00200
A contour point conversion device that determines as follows.
Figure 112022116673181-pat00201

제9항에 있어서,
상기 프로세서는,
상기 깊이 정보가 상기 타깃 영상에 포함된 픽셀들 중 설정된 임계값 이상의 픽셀에 대한 깊이를 포함하는 경우,
상기
Figure 112022116673181-pat00202
에 대한 상기 카메라 좌표계 상의 좌표인
Figure 112022116673181-pat00203
를 다음과 같이 결정하고,
Figure 112022116673181-pat00204

Figure 112022116673181-pat00205
는 상기 타깃 영상에서 상기
Figure 112022116673181-pat00206
에 대응되는 위치의 좌표이고,
Figure 112022116673181-pat00207
는 상기
Figure 112022116673181-pat00208
에서 상기 z축과 수직인 평면까지의 수직 거리이고,
상기 카메라의 상기 카메라 좌표계 상에서의 위치를 나타내는 위치 벡터
Figure 112022116673181-pat00209
에서, 상기
Figure 112022116673181-pat00210
를 향하는 방향 벡터
Figure 112022116673181-pat00211
를 다음과 같이 결정하고,
Figure 112022116673181-pat00212

상기 위치 벡터
Figure 112022116673181-pat00213
에서 상기 방향 벡터
Figure 112022116673181-pat00214
방향인 직선이 상기 판재 평면과 이루는 교점
Figure 112022116673181-pat00215
을 다음과 같이 결정하는, 윤곽점 변환 장치.
Figure 112022116673181-pat00216

According to claim 9,
the processor,
When the depth information includes a depth of a pixel greater than or equal to a set threshold among pixels included in the target image,
remind
Figure 112022116673181-pat00202
Coordinates on the camera coordinate system for
Figure 112022116673181-pat00203
is determined as follows,
Figure 112022116673181-pat00204

Figure 112022116673181-pat00205
In the target image,
Figure 112022116673181-pat00206
is the coordinates of the position corresponding to
Figure 112022116673181-pat00207
said
Figure 112022116673181-pat00208
is the vertical distance from to the plane perpendicular to the z-axis,
A position vector representing the position of the camera on the camera coordinate system
Figure 112022116673181-pat00209
in the above
Figure 112022116673181-pat00210
direction vector towards
Figure 112022116673181-pat00211
is determined as follows,
Figure 112022116673181-pat00212

the position vector
Figure 112022116673181-pat00213
the direction vector from
Figure 112022116673181-pat00214
The point of intersection of the straight line in the direction and the plane of the plate
Figure 112022116673181-pat00215
A contour point conversion device that determines as follows.
Figure 112022116673181-pat00216

제14항에 있어서,
상기
Figure 112021142837226-pat00217
와 상기
Figure 112021142837226-pat00218
의 거리가 설정된 임계 거리를 초과하는 경우, 상기
Figure 112021142837226-pat00219
는 상기 투영점들에서 제외되는, 윤곽점 변환 장치.
According to claim 14,
remind
Figure 112021142837226-pat00217
and above
Figure 112021142837226-pat00218
If the distance of exceeds the set threshold distance, the
Figure 112021142837226-pat00219
Is excluded from the projected points, the contour point conversion device.
제9항에 있어서,
상기 프로세서는,
상기 판재 평면의 법선 벡터
Figure 112022116673181-pat00220
및 상기 판재 평면에 평행한 단위 벡터
Figure 112022116673181-pat00221
에 수직인 벡터
Figure 112022116673181-pat00222
를 다음과 같이 구하고,
Figure 112022116673181-pat00223

상기
Figure 112022116673181-pat00224
및 상기 판재 평면 상의 한 점
Figure 112022116673181-pat00225
을 기초로 상기 카메라 좌표계 상의 점을 상기 판재 평면 상에서의 좌표로 변환하는 행렬
Figure 112022116673181-pat00226
을 다음과 같이 구하고,
Figure 112022116673181-pat00227

상기 투영점들에 대한 상기 판재 평면 상에서의 좌표
Figure 112022116673181-pat00228
를 다음과 같이 결정하는, 윤곽점 변환 장치.
Figure 112022116673181-pat00229
According to claim 9,
the processor,
Normal vector of the plate plane
Figure 112022116673181-pat00220
and a unit vector parallel to the plate plane.
Figure 112022116673181-pat00221
vector perpendicular to
Figure 112022116673181-pat00222
is obtained as follows,
Figure 112022116673181-pat00223

remind
Figure 112022116673181-pat00224
and a point on the plate plane.
Figure 112022116673181-pat00225
A matrix for converting points on the camera coordinate system to coordinates on the plate material plane based on
Figure 112022116673181-pat00226
is obtained as follows,
Figure 112022116673181-pat00227

Coordinates on the plate plane for the projected points
Figure 112022116673181-pat00228
A contour point conversion device that determines as follows.
Figure 112022116673181-pat00229
KR1020210175602A 2021-12-09 2021-12-09 Apparatus and method for transforming contour point KR102481756B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210175602A KR102481756B1 (en) 2021-12-09 2021-12-09 Apparatus and method for transforming contour point
PCT/KR2021/018782 WO2023106472A1 (en) 2021-12-09 2021-12-10 Contour point transformation apparatus and method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210175602A KR102481756B1 (en) 2021-12-09 2021-12-09 Apparatus and method for transforming contour point

Publications (1)

Publication Number Publication Date
KR102481756B1 true KR102481756B1 (en) 2022-12-27

Family

ID=84568222

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210175602A KR102481756B1 (en) 2021-12-09 2021-12-09 Apparatus and method for transforming contour point

Country Status (2)

Country Link
KR (1) KR102481756B1 (en)
WO (1) WO2023106472A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010218226A (en) * 2009-03-17 2010-09-30 Suzuki Motor Corp Measurement map generation device and traveling environment confirmation device
KR20180121259A (en) * 2017-04-28 2018-11-07 (주)대우루컴즈 Distance detecting device of camera mounted computer and its method
KR20210148191A (en) * 2019-03-19 2021-12-07 보스턴 다이나믹스, 인크. detection of boxes

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4138943B2 (en) * 1998-06-04 2008-08-27 株式会社アマダ Plate shape recognition device
JP2019101753A (en) * 2017-12-01 2019-06-24 キヤノン株式会社 Object shape measurement device and method for controlling the same, and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010218226A (en) * 2009-03-17 2010-09-30 Suzuki Motor Corp Measurement map generation device and traveling environment confirmation device
KR20180121259A (en) * 2017-04-28 2018-11-07 (주)대우루컴즈 Distance detecting device of camera mounted computer and its method
KR20210148191A (en) * 2019-03-19 2021-12-07 보스턴 다이나믹스, 인크. detection of boxes

Also Published As

Publication number Publication date
WO2023106472A1 (en) 2023-06-15

Similar Documents

Publication Publication Date Title
CN109242903B (en) Three-dimensional data generation method, device, equipment and storage medium
CN108564082B (en) Image processing method, device, server and medium
EP3627181A1 (en) Multi-sensor calibration method, multi-sensor calibration device, computer device, medium and vehicle
US11048913B2 (en) Focusing method, device and computer apparatus for realizing clear human face
US10909719B2 (en) Image processing method and apparatus
US10776657B2 (en) Template creation apparatus, object recognition processing apparatus, template creation method, and program
CN106845508B (en) The methods, devices and systems of release in a kind of detection image
CN108573471B (en) Image processing apparatus, image processing method, and recording medium
JP7422105B2 (en) Obtaining method, device, electronic device, computer-readable storage medium, and computer program for obtaining three-dimensional position of an obstacle for use in roadside computing device
CN110264523B (en) Method and equipment for determining position information of target image in test image
CN111563950A (en) Texture mapping strategy determination method and device and computer readable storage medium
CN111612852A (en) Method and apparatus for verifying camera parameters
CN110390295B (en) Image information identification method and device and storage medium
US11017557B2 (en) Detection method and device thereof
CN108427110B (en) Distance measurement method and device and electronic equipment
KR102481756B1 (en) Apparatus and method for transforming contour point
CN109934185B (en) Data processing method and device, medium and computing equipment
CN116017129A (en) Method, device, system, equipment and medium for adjusting angle of light supplementing lamp
CN113033426B (en) Dynamic object labeling method, device, equipment and storage medium
CN115511870A (en) Object detection method and device, electronic equipment and storage medium
US20220130138A1 (en) Training data generation apparatus, method and program
CN113870292A (en) Edge detection method and device for depth image and electronic equipment
CN112559342A (en) Method, device and equipment for acquiring picture test image and storage medium
KR102611481B1 (en) Method and apparatus for calculating actual distance between coordinates in iamge
JP7441989B1 (en) Meter reading device, meter reading method and meter reading program

Legal Events

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