KR102160224B1 - 약한 지도학습 객체 검출기에 기반한 의미론적 객체 영역 분할 방법 및 시스템 - Google Patents
약한 지도학습 객체 검출기에 기반한 의미론적 객체 영역 분할 방법 및 시스템 Download PDFInfo
- Publication number
- KR102160224B1 KR102160224B1 KR1020180166708A KR20180166708A KR102160224B1 KR 102160224 B1 KR102160224 B1 KR 102160224B1 KR 1020180166708 A KR1020180166708 A KR 1020180166708A KR 20180166708 A KR20180166708 A KR 20180166708A KR 102160224 B1 KR102160224 B1 KR 102160224B1
- Authority
- KR
- South Korea
- Prior art keywords
- learned
- network
- cam
- image
- division
- Prior art date
Links
- 230000011218 segmentation Effects 0.000 title claims abstract description 64
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000001514 detection method Methods 0.000 claims abstract description 71
- 230000004913 activation Effects 0.000 claims description 29
- 230000006870 function Effects 0.000 claims description 27
- 238000000605 extraction Methods 0.000 claims description 19
- 238000011176 pooling Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 4
- 238000009499 grossing Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000013135 deep learning Methods 0.000 description 6
- 230000002085 persistent effect Effects 0.000 description 6
- 238000003709 image segmentation Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000000746 purification Methods 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G06T5/002—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/12—Bounding box
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
약한 지도학습 객체 검출기에 기반한 의미론적 객체 영역 분할 기술이 개시된다. 일 실시예에 따른 컴퓨터로 구현되는 시스템은 컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 이미지를 객체 영역 분할 네트워크에 구성된 복수 개의 분기에 입력하는 입력부; 상기 이미지으로부터 객체를 검출하도록 학습된 객체 검출기에 의해 객체 영역을 검출하는 검출부; 및 상기 검출된 객체 영역의 정보 및 상기 검출된 객체 영역과 관련된 바운딩 박스를 이용하여 학습함에 따라 인스턴스를 분할(segmentation)하는 분할부를 포함할 수 있다.
Description
아래의 설명은 약한 지도 학습 기반의 객체 영역 분할 기술에 관한 것이다.
대규모 데이터 셋인 이미지 넷에서 영상 분류를 위한 딥 러닝 아키텍처의 성공 이후, 수 많은 딥 러닝 기반의 영상 인식 연구가 진행되었고, 그 결과 객체 검출 및 의미론적 영역 분할 등의 높은 성능 향상이 있었다. 객체 영역 분할은 이미지 내 존재하는 객체의 범주 및 영역을 예측하는 문제, 이는 객체의 영역을 사각형으로 예측하는 객체 검출 및 객체 구분이 필요 없는 의미론적 영상 분할보다 고도화된 형태의 기술이라 볼 수 있다. 이러한 딥 러닝 기반의 영상 인식 알고리즘은 대부분 지도 학습 패러다임에 의존적이다. 지도 학습 기반의 학습은 객체에 일일이 레이블링된 대규모의 데이터 셋을 필요하며, 이미지 내 존재하는 객체의 정보를 사람이 일일이 레이블링하는 것은 많은 비용이 요구된다. 특히, 객체 영역 분할의 경우 기존 영상 인식 분야의 문제에서 제일 일반적인 형태인 만큼 데이터 셋 구출을 위해서 상대적으로 더 많은 비용을 필요로 한다.
현재 이미지 레벨의 약한 지도학습 기반의 객체 영역 분할 알고리즘은 PRM이 유일하다. 그러나 이 방법은 MCG에 기반하여 최종 분할 영역을 선택하기 때문에 MCG에 민감한 결과를 보인다. 또한 같은 클래스의 객체가 겹쳐있는 상황에서는 CAM으로는 각각의 객체를 제대로 분리할 수 없고, CAM은 객체의 크기에 민감하기 때문에 객체의 크기가 아주 크거나 작은 경우 CAM 추출에 실패할 수 있다.
객체 검출 및 의미론적 영상 분할은 딥 러닝의 도입 이전에도 많은 연구가 진행되었고, 최근 들어 딥 러닝 아키텍처의 도움으로 좋은 성능을 보이는 알고리즘이 많이 등장하고 있다. 객체 검출 및 의미론적 영상 분할의 일반화된 문제로 볼 수 있는 객체 영역 분할 연구는 기존에 연구되었던 문제들의 성취에 기반하여 발전하고 있다. 이는 개별 객체를 인식해야 된다는 점에서 의미론적 영상 분할보다는 객체 검출과 좀 더 유사한 문제로 생각할 수 있다. 현재 다수의 객체 영역 분할 연구는 객체 검출을 위한 딥 러닝 아키텍처에 영역 분할이 가능한 모듈을 부가하고 이를 학습하는 식으로 진행되고 있다.
약한 지도학습에 기반한 객체 검출 알고리즘에 기반하여 객체 영역을 분할하는 방법 및 시스템을 제공할 수 있다.
컴퓨터로 구현되는 시스템은, 컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 이미지를 객체 영역 분할 네트워크에 구성된 복수 개의 분기에 입력하는 입력부; 상기 이미지으로부터 객체를 검출하도록 학습된 객체 검출기에 의해 객체 영역을 검출하는 검출부; 및 상기 검출된 객체 영역의 정보 및 상기 검출된 객체 영역과 관련된 바운딩 박스를 이용하여 학습함에 따라 인스턴스를 분할(segmentation)하는 분할부를 포함할 수 있다.
상기 객체 영역 분할 네트워크는, 객체 검출을 위한 검출 분기와 인스턴스를 분할하기 위한 분할 분기로 구성되고, 상기 검출 분기 및 상기 분할 분기가 상기 이미지로부터 이미지의 특징을 추출하는 특징 추출 네트워크를 공유하는 것을 포함하고, 상기 객체 영역 분할 네트워크에 기반하여 상기 검출 분기 및 상기 분할 분기가 공동으로 학습될 수 있다.
상기 분할부는, 상기 이미지로부터 획득된 특징 맵과 상기 검출된 객체 영역의 클래스 정보를 이용하여 CAM을 학습하고, 상기 학습된 CAM을 이용하여 획득된 GT 마스크를 사용하여 인스턴스 분할 네트워크를 학습하는 것을 포함하고, 상기 분할부에서, 분류 손실 함수를 이용하여 CAM 네트워크가 학습되고, 상기 CAM 네트워크를 학습함에 따라 획득된 GT 마스크와 분할 손실 함수를 이용하여 인스턴스 분할 네트워크가 학습될 수 있다.
상기 GT 마스크는, 멀티-레벨 CAM으로부터 획득된 분할(segmentation) 마스크를 사용하여 인스턴스 분할 네트워크를 학습할 수 있다.
상기 CAM은, 상기 이미지로부터 획득된 특징 맵에 비선형 활성화 로그 함수를 적용하여 객체의 전체 영역을 나타내도록 액티베이션 스무딩(Activation Smooting)을 수행할 수 있다.
상기 CAM은, 상기 검출된 객체 영역과 관련된 객체 클래스에 배경 클래스를 추가하여 배경 액티베이션을 학습할 수 있다.
상기 CAM은, 상기 검출된 객체 영역과 관련된 바운딩 박스의 중심에 가중치를 부여하는 LWAP (Local Weighted Average Pooling)를 적용할 수 있다.
상기 CAM은, 상기 이미지로부터 특징 맵을 추출하기 위한 특징 추출 네트워크에 구성된 복수의 레이어에 CAM 구조를 부가하여 멀티 레벨에서 CAM을 추출하도록 구성될 수 있다.
상기 입력부는, 상기 이미지를 특징 추출 네트워크를 통하여 학습시킴에 따라 이미지를 인코딩한 큰 특징 맵을 생성하고, 상기 생성된 큰 특징 맵에 RolAlign 방법을 적용하여 상기 이미지의 각 후보 영역에 대한 특징 맵을 획득하고, 상기 이미지로부터 획득된 특징 맵을 상기 객체 영역 분할 네트워크의 객체 검출을 위한 검출 분기와 인스턴스를 분할하기 위한 분할 분기에 각각 입력할 수 있다.
상기 검출부는, 약한 지도 학습에 기반한 객체 검출기를 이용하여 상기 이미지로부터 획득된 특징 맵에 기반하여 각 객체의 후보 영역 별로 객체 검출과 관련된 스코어 정보를 획득하고, 상기 획득된 스코어 정보에 기초하여 GT 마스크를 생성하여 역전파를 통한 학습을 수행하는 것을 포함하고, 상기 객체 검출기는, 상기 객체 검출기의 WSDDN에서 학습하는 분류 손실과 정제 과정에서 학습하는 검출 손실을 이용하여 학습될 수 있다.
컴퓨터로 구현되는 시스템에 의해 수행되는 객체 영역 분할 방법은, 이미지를 객체 영역 분할 네트워크에 구성된 복수 개의 분기에 입력하는 단계; 상기 이미지으로부터 객체를 검출하도록 학습된 객체 검출기에 의해 객체 영역을 검출하는 단계; 및 상기 검출된 객체 영역의 정보 및 상기 검출된 객체 영역과 관련된 바운딩 박스를 이용하여 학습함에 따라 인스턴스를 분할(segmentation)하는 단계를 포함할 수 있다.
컴퓨터로 구현되는 시스템에 의해 수행되는 객체 영역 분할 방법을 실행시키기 위하여 컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램은, 이미지를 객체 영역 분할 네트워크에 구성된 복수 개의 분기에 입력하는 단계; 상기 이미지으로부터 객체를 검출하도록 학습된 객체 검출기에 의해 객체 영역을 검출하는 단계; 및 상기 검출된 객체 영역의 정보 및 상기 검출된 객체 영역과 관련된 바운딩 박스를 이용하여 학습함에 따라 인스턴스를 분할(segmentation)하는 단계를 포함할 수 있다.
객체 영역 이미지 단위의 레이블링을 적용하여 비용을 효율화할 수 있다.
객체 영역 분할 네트워크에 기반하여 이미지로부터 객체의 검출과 분할을 동시에 수행함으로써 성능을 향상시킬 수 있다. 이를 통하여 객체 검출기의 성능을 높일 뿐만 아니라, 객체 영역에 기반하여 인스턴스의 분할이 가능하다.
도 1은 일 실시예에 있어서, 컴퓨터 시스템의 내부 구성의 일례를 설명하기 위한 블록도이다.
도 2는 일 실시예에 따른 컴퓨터 시스템의 프로세서가 포함할 수 있는 구성요소의 예를 도시한 블록도이다.
도 3은 일 실시예에 따른 컴퓨터 시스템이 수행할 수 있는 객체 영역 분할 방법의 예를 도시한 흐름도이다.
도 4는 일 실시예에 따른 객체 영역 분할 네트워크의 개괄적인 구조를 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 객체 영역 분할 네트워크의 세부적인 구조를 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 객체 영역 분할 네트워크에 기반하여 객체 영역 분할 동작을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 객체 영역 분할 네트워크에 기반하여 인스턴스가 분할된 결과를 나타낸 예이다.
도 2는 일 실시예에 따른 컴퓨터 시스템의 프로세서가 포함할 수 있는 구성요소의 예를 도시한 블록도이다.
도 3은 일 실시예에 따른 컴퓨터 시스템이 수행할 수 있는 객체 영역 분할 방법의 예를 도시한 흐름도이다.
도 4는 일 실시예에 따른 객체 영역 분할 네트워크의 개괄적인 구조를 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 객체 영역 분할 네트워크의 세부적인 구조를 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 객체 영역 분할 네트워크에 기반하여 객체 영역 분할 동작을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 객체 영역 분할 네트워크에 기반하여 인스턴스가 분할된 결과를 나타낸 예이다.
이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
도 1은 본 발명의 일 실시예에 있어서 컴퓨터 시스템의 내부 구성의 일례를 설명하기 위한 블록도이다. 예를 들어 실시예에 따른 객체 영역 분할 시스템이 도 1의 컴퓨터 시스템(100)을 통해 구현될 수 있다. 도 1에 도시한 바와 같이, 컴퓨터 시스템(100)은 객체 영역 분할 방법을 실행하기 위한 구성요소로서 프로세서(110), 메모리(120), 영구 저장 장치(130), 버스(140), 입출력 인터페이스(150) 및 네트워크 인터페이스(160)를 포함할 수 있다.
프로세서(110)는 객체 영역 분할을 위한 구성요소로서 명령어들의 시퀀스를 처리할 수 있는 임의의 장치를 포함하거나 그의 일부일 수 있다. 프로세서(110)는 예를 들어 컴퓨터 프로세서, 이동 장치 또는 다른 전자 장치 내의 프로세서 및/또는 디지털 프로세서를 포함할 수 있다. 프로세서(110)는 예를 들어, 서버 컴퓨팅 디바이스, 서버 컴퓨터, 일련의 서버 컴퓨터들, 서버 팜, 클라우드 컴퓨터, 컨텐츠 플랫폼 등에 포함될 수 있다. 프로세서(110)는 버스(140)를 통해 메모리(120)에 접속될 수 있다.
메모리(120)는 컴퓨터 시스템(100)에 의해 사용되거나 그에 의해 출력되는 정보를 저장하기 위한 휘발성 메모리, 영구, 가상 또는 기타 메모리를 포함할 수 있다. 메모리(120)는 예를 들어 랜덤 액세스 메모리(RAM: random access memory) 및/또는 다이내믹 RAM(DRAM: dynamic RAM)을 포함할 수 있다. 메모리(120)는 컴퓨터 시스템(100)의 상태 정보와 같은 임의의 정보를 저장하는 데 사용될 수 있다. 메모리(120)는 예를 들어 객체 영역 분할 네트워크 기반의 객체 영역 분할을 위한 명령어들을 포함하는 컴퓨터 시스템(100)의 명령어들을 저장하는 데에도 사용될 수 있다. 컴퓨터 시스템(100)은 필요에 따라 또는 적절한 경우에 하나 이상의 프로세서(110)를 포함할 수 있다.
버스(140)는 컴퓨터 시스템(100)의 다양한 컴포넌트들 사이의 상호작용을 가능하게 하는 통신 기반 구조를 포함할 수 있다. 버스(140)는 예를 들어 컴퓨터 시스템(100)의 컴포넌트들 사이에, 예를 들어 프로세서(110)와 메모리(120) 사이에 데이터를 운반할 수 있다. 버스(140)는 컴퓨터 시스템(100)의 컴포넌트들 간의 무선 및/또는 유선 통신 매체를 포함할 수 있으며, 병렬, 직렬 또는 다른 토폴로지 배열들을 포함할 수 있다.
영구 저장 장치(130)는 (예를 들어, 메모리(120)에 비해) 소정의 연장된 기간 동안 데이터를 저장하기 위해 컴퓨터 시스템(100)에 의해 사용되는 바와 같은 메모리 또는 다른 영구 저장 장치와 같은 컴포넌트들을 포함할 수 있다. 영구 저장 장치(130)는 컴퓨터 시스템(100) 내의 프로세서(110)에 의해 사용되는 바와 같은 비휘발성 메인 메모리를 포함할 수 있다. 영구 저장 장치(130)는 예를 들어 플래시 메모리, 하드 디스크, 광 디스크 또는 다른 컴퓨터 판독 가능 매체를 포함할 수 있다.
입출력 인터페이스(150)는 키보드, 마우스, 음성 명령 입력, 디스플레이 또는 다른 입력 또는 출력 장치에 대한 인터페이스들을 포함할 수 있다. 구성 명령들 및/또는 객체 영역 분할 네트워크 기반의 객체 영역 분할을 위한 입력이 입출력 인터페이스(150)를 통해 수신될 수 있다.
네트워크 인터페이스(160)는 근거리 네트워크 또는 인터넷과 같은 네트워크들에 대한 하나 이상의 인터페이스를 포함할 수 있다. 네트워크 인터페이스(160)는 유선 또는 무선 접속들에 대한 인터페이스들을 포함할 수 있다. 구성 명령들 및/또는 객체 영역 분할 네트워크 기반의 객체 영역 분할을 위한 입력이 네트워크 인터페이스(160)를 통해 수신될 수 있다.
또한, 다른 실시예들에서 컴퓨터 시스템(100)은 도 1의 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 컴퓨터 시스템(100)은 상술한 입출력 인터페이스(150)와 연결되는 입출력 장치들 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), GPS(Global Positioning System) 모듈, 카메라, 각종 센서, 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다.
도 2는 일 실시예에 따른 컴퓨터 시스템의 프로세서가 포함할 수 있는 구성요소의 예를 도시한 블록도이고, 도 3은 일 실시예에 따른 컴퓨터 시스템이 수행할 수 있는 객체 영역 분할 방법의 예를 도시한 흐름도이다.
도 2에 도시된 바와 같이, 프로세서(110)는 입력부(210), 검출부(220) 및 분할부(230)를 포함할 수 있다. 이러한 프로세서(110)의 구성요소들은 적어도 하나의 프로그램 코드에 의해 제공되는 제어 명령에 따라 프로세서(110)에 의해 수행되는 서로 다른 기능들(different functions)의 표현들일 수 있다. 프로세서(110) 및 프로세서(110)의 구성요소들은 도 3의 객체 영역 분할 네트워크 기반의 객체 영역 분할 방법이 포함하는 단계들(310 내지 330)을 수행할 수 있다. 예를 들어, 프로세서(110) 및 프로세서(110)의 구성요소들은 메모리(120)가 포함하는 운영체제의 코드와 상술한 적어도 하나의 프로그램 코드에 따른 명령(instruction)을 실행하도록 구현될 수 있다. 여기서, 적어도 하나의 프로그램 코드는 객체 영역 분할 네트워크 기반의 객체 영역 분할 방법을 처리하기 위해 구현된 프로그램의 코드에 대응될 수 있다. 객체 영역 분할 네트워크 기반의 객체 영역 분할 방법은 도시된 순서대로 발생하지 않을 수 있으며, 단계들 중 일부가 생략되거나 추가의 과정이 더 포함될 수 있다.
프로세서(110)는 객체 영역 분할 네트워크 기반의 객체 영역 분할 방법을 위한 프로그램 파일에 저장된 프로그램 코드를 메모리(120)에 로딩할 수 있다. 예를 들어, 객체 영역 분할 방법을 위한 프로그램 파일은 도 2를 통해 설명한 영구 저장 장치(130)에 저장되어 있을 수 있고, 프로세서(110)는 버스를 통해 영구 저장 장치(130)에 저장된 프로그램 파일로부터 프로그램 코드가 메모리(120)에 로딩되도록 컴퓨터 시스템(110)을 제어할 수 있다. 이때, 프로세서(110) 및 프로세서(110)가 포함하는 입력부(210), 검출부(220) 및 분할부(230) 각각은 메모리(120)에 로딩된 프로그램 코드 중 대응하는 부분의 명령을 실행하여 이후 단계들(310 내지 330)을 실행하기 위한 프로세서(110)의 서로 다른 기능적 표현들일 수 있다. 단계들(310 내지 330)의 실행을 위해, 프로세서(110) 및 프로세서(110)의 구성요소들은 직접 제어 명령에 따른 연산을 처리하거나 또는 컴퓨터 시스템(100)을 제어할 수 있다.
설명의 이해를 돕기 위하여 도 6의 객체 영역 분할 네트워크에 기반하여 객체 영역을 분할하는 동작을 참고하기로 한다. 객체 영역 분할 네트워크는 4개의 서브 네트워크로 구성될 수 있다. 예를 들면, 객체 영역 분할 네트워크는 특징 추출 네트워크, 약한 지도학습 기반의 객체 검출 네트워크, CAM 네트워크 및 인스턴스 분할 네트워크로 구성될 수 있다. 특징 추출 네트워크에서 채널의 수와 각 특징 맵의 크기는 각 레이어의 이름과 함께 표시될 수 있다. 이러한 각각의 네트워크는 종단 간(end-to-end) 학습이 수행될 수 있다.
단계(310)에서 입력부(210)는 이미지(601)를 객체 영역 분할 네트워크에 구성된 복수 개의 분기에 입력할 수 있다. 객체 영역 분할 네트워크는 객체 검출을 위한 검출 분기와 인스턴스를 분할하기 위한 분할 분기로 구성되고, 검출 분기 및 분할 분기가 이미지(601)로부터 이미지의 특징을 추출하는 특징 추출 네트워크를 공유할 수 있다. 입력부(210)는 이미지(601)를 특징 추출 네트워크를 통하여 학습시킴에 따라 이미지 전체를 인코딩한 큰 특징 맵을 생성하고, 생성된 큰 특징 맵에 RolAlign 방법을 적용하여 이미지(601)의 각 후보 영역에 대한 특징 맵을 획득하고, 이미지로부터 획득된 특징 맵을 객체 영역 분할 네트워크의 객체 검출을 위한 검출 분기와 인스턴스를 분할하기 위한 분할 분기에 각각 입력할 수 있다.
단계(320)에서 검출부(220)는 이미지(601)로부터 객체를 검출하도록 학습된 객체 검출기에 의해 객체 영역(602)을 검출할 수 있다(610). 검출부(220)는 약한 지도 학습에 기반한 객체 검출기, 예를 들면, OICR(611)를 이용하여 이미지(601)로부터 획득된 특징 맵에 기반하여 각 객체의 후보 영역 별로 객체 검출과 관련된 스코어 정보를 획득하고, 획득된 스코어 정보에 기초하여 GT 마스크를 생성하여 역전파를 통한 학습을 수행할 수 있다. 이때, 객체 검출기는 객체 검출기의 WSDDN에서 학습하는 분류 손실과 정제 과정에서 학습하는 검출 손실을 이용하여 학습될 수 있다.
단계(330)에서 분할부(230)는 검출된 객체 영역의 정보 및 검출된 객체 영역과 관련된 바운딩 박스를 이용하여 학습함에 따라 인스턴스를 분할할 수 있다. 구체적으로, 분할부(230)는 이미지로부터 획득된 특징 맵과 검출된 객체 영역의 클래스 정보를 이용하여 CAM을 학습할 수 있다(620). 이때, 분류 손실 함수를 이용하여 CAM 네트워크가 학습되고, CAM 네트워크를 학습함에 따라 획득된 GT 마스크와 분할 손실 함수를 이용하여 인스턴스 분할 네트워크가 학습될 수 있다. 분할부(230)는 학습된 CAM을 이용하여 획득된 GT 마스크를 사용하여 인스턴스 분할 네트워크를 학습할 수 있다. 분할부(230)는 분류 손실 함수를 이용하여 CAM 네트워크를 학습하고, CAM 네트워크를 학습함에 따라 획득된 GT 마스크와 분할 손실 함수를 이용하여 인스턴스 분할 네트워크를 학습할 수 있다. 이때, GT 마스크는, 멀티-레벨 CAM으로부터 획득된 분할(segmentation) 마스크를 사용하여 인스턴스 분할 네트워크를 학습할 수 있다.
도 4는 일 실시예에 따른 객체 영역 분할 네트워크의 개괄적인 구조를 설명하기 위한 도면이다.
객체 영역 분할 네트워크(400)는 객체 검출을 위한 검출 분기(410)와 인스턴스를 분할하기 위한 분할 분기(420)로 구성될 수 있다. 이때, 객체 영역 분할 네트워크(400)는 검출 분기(410) 및 분할 분기(420)를 공동으로 학습하여 객체 영역 검출의 성능을 향상시키고, 인스턴스를 기반으로 객체를 분할할 수 있다. 또한, 검출 분기(410) 및 분할 분기(420)는 이미지로부터 이미지의 특징을 추출하는 특징 추출 네트워크를 공유할 수 있다. 이에, 객체의 검출과 분할을 동시에 수행함으로써 성능을 향상시킬 수 있다.
특징 추출 네트워크는 이미지의 특징을 추출하는 네트워크로서, 이미지가 입력됨을 수신할 수 있다. 이미지를 특징 추출 네트워크를 통하여 학습시킴에 따라 특징 맵이 생성될 수 있고, 생성된 특징 맵을 SPP(Spatial Pyramid Pooling) 레이어(402)를 통과하여 검출 분기(410)와 분할 분기(420)에 각각 입력될 수 있다. 이때, 특징 맵(401)은 CNN 기반의 특징 맵이 생성될 수 있으며, 검출 분기(410) 및 분할 분기(420)와 공유될 수 있다.
객체 영역 분할 네트워크(400)는 약한 지도학습 기반의 객체 영역을 분할하는 작업을 수행할 수 있다. 객체 영역 분할 네트워크(400)는 Mask R-CNN의 변형된 버전으로서, 예를 들면, 약한 지도 학습 기반의 객체 검출기(411)를 통하여 이미지로부터 객체 영역을 검출할 수 있다. Mask R-CNN은 특징점 재추출 방법인 RoI Pooling이 갖는 부정합 문제를 해결한 기술로서, 양자화 대신 이중선형 보강법으로 대체하여 계산하는 RoIAlign 기법을 제안하여 객체 영역 분할 및 사람 자세 추정 등의 수행 결과를 도출할 수 있다.
객체 영역 분할 네트워크(400)의 검출 분기(410)는 이미지으로부터 객체를 검출하도록 학습된 객체 검출기(411)에 의해 객체 영역을 검출할 수 있다. 객체 영역 분할 네트워크(400)의 분할 분기(420)는 검출 분기(410)에서 획득된 객체 영역의 정보(예를 들면, 클래스 정보)와 특징 맵을 이용하여 CAM(Class Activation Map)(421)을 학습할 수 있다. 학습된 CAM(421)을 이용하여 특징 맵의 각 위치마다 각 클래스에 대한 우도(Likelihood)에 해당하는 값이 추정될 수 있다.
CAM(421)은 객체의 범주 별로 구별되는 영역을 학습하는 방법으로, 기존의 이미지 넷과 같은 빅 데이터로부터 학습된 CNN의 이미지 분류 학습 방법을 수정하여 구현될 수 있다. 일반적으로, CAM(421)은 클래스 점수 맵을 생성하고, 여기에 전역 평균/최대 풀링(GAP/GMP)을 취해서 클래스 점수를 작성하는 식으로 간접적으로 분류 점수맵을 획득할 수 있다. CAM(421)은 마지막 합성곱 특징 맵에서 GAP를 취함에 따라 획득된 특징 벡터에서 다시 분류 점수를 도출하는 방식이 적용될 수 있다. 이에 따라, 클래스의 특징적인 영역에 주로 활성값(activation)이 몰리는 문제를 해결하고, CAM(421)의 경우 특징 맵 단계에서 점수 맵을 만들어 이를 완화할 수 있다. 예를 들면, CAM(421)으로부터 각 클래스마다 일정 활성값 이상을 가지는 영역에 바운딩 박스를 타이트하게 그림으로써 객체 검출을 수행할 수 있다.
이미지로부터 획득된 특징 맵과 검출된 객체 영역의 클래스 정보를 이용하여 CAM(421)을 학습하고, 학습된 CAM(421)을 이용하여 획득된 GT 마스크를 사용하여 인스턴스 분할 네트워크(422)가 학습될 수 있다. 이때, GT 마스크는, 멀티-레벨 CAM으로부터 획득된 분할(segmentation) 마스크를 사용하여 인스턴스 분할 네트워크(422)를 학습할 수 있다. 이러한 과정을 인스턴스 분할 네트워크(422)가 학습함으로써 최종적인 모델이 학습될 수 있다.
도 5는 일 실시예에 따른 객체 영역 분할 네트워크의 세부적인 구조를 설명하기 위한 도면이다.
이미지가 입력되었을 때, 이미지에 대한 분할 정보를 획득하고자 함에 있어서, 기존에는 클래스 레벨(Class Level)(예를 들면, 사람인지, 고양이인지, 강아지인지 등)을 이용하여 분할을 수행하였다. 실시예에서는 클래스 레벨뿐만 아니라 오브젝트의 단위인 객체의 인스턴스에 기초하여, 예를 들면, 사람이 한 명 존재할 경우, 한 명이 분할되고, 세 명이 존재할 경우, 세 명이 각각 분할되는 방법을 설명하고자 한다.
객체 영역 분할 네트워크에 영상(이미지)가 입력(501)될 수 있다. 입력된 이미지로부터 이미지의 특징을 추출하기 위한 특징 추출 네트워크를 통과시킬 수 있다. 이때, 특징 추출 네트워크에 복수 개의 컨볼루션 레이어(502)가 구성될 수 있으며, 이외에도 다양한 종류의 레이어가 포함될 수도 있다. 이러한 복수 개의 컨볼루션 레이어를 통과함에 따라 이미지에 대한 특징 맵이 획득될 수 있다. 구체적으로, 특징 추출 네트워크에서 4번째의 풀링 레이어는 생략될 수 있고, conv 5에서 확장된 컨볼루션 레이어를 사용할 수 있다. 또한, 마지막 풀링 레이어를 SPP 레이어로 변경할 수 있다. SPP 레이어를 통과한 출력은 객체 검출기(411)에 연결될 수 있다. 또한, CAM은 conv3_3, con4_3, con 5_3의 출력을 사용할 수 있다.
검출 분기(410)에서 각 객체 후보 영역 별로 객체 검출에 대한 스코어 정보를 획득하고, 획득된 스코어 정보를 바탕으로 GT마스크를 생성하고 역전파를 통하여 학습을 수행할 수 있다. 이때, 검출 분기(410)에서 이미지으로부터 객체를 검출하도록 학습된 약한 지도학습 기반의 객체 검출기(411)로 예를 들면, WSDDN 또는 OICR가 사용될 수 있다. WSDDN은 약한 지도 학습의 객체 검출을 위한 아키텍처로 객체 후보 영역을 효과적으로 사용하기 위한 것으로, 이미지 넷 및 PASCAL VOC 데이터 셋에서 이미지 분류로 학습된 네트워크를 전이하여 사용하고, 네트워크의 분류기 부분을 객체 분류 및 검출을 위한 양 줄기의 분기로 변경하여 분류 줄기에서는 각 후보 영역이 어떤 범주에 속하는지를 학습하도록 하며, 검출 줄기에서는 객체를 포함할 확률이 높은 영역을 선택하도록 학습한 후, 분류 및 검출 줄기의 점수를 곱해서 객체 영역에 대한 최종 점수를 획득한다. 구체적으로 분류 점수는 각 후보 영역 내의 분류 점수를 소프트맥스로 정규화를 하며, 검출 점수는 동일한 분류에 대해서 후보 영역 내의 점수를 소프트맥스로 정규화를 한다. 이러한 구조를 통해서 분류 줄기는 객체 범주를 예측하며, 검출 줄기는 일종의 상대적인 객체성(objectness), 중요도(saliency)를 구하는 역할을 수행한다.
OICR는 WSDDN의 마지막 전결합 레이어(fully connected layer) 이후에 K(K는 자연수)개의 정제 단계(refinement step)를 추가한 것이다. 각 정제 단계는 후보 영역별 분류 방식으로 객체 검출이 이루어진다. OICR은 가장 큰 검출 점수를 가진 후보 영역으로부터 중첩되는 부분이 기 설정된 기준 이상의 큰 영역으로 레이블을 전파하여 정제 단계에 활용할 수 있다.
실시예에서는 객체 검출기(411)로 OICR를 사용하는 것을 예를 들어 설명하기로 한다. 이때, 설명의 이해를 돕기 위하여 OICR를 예를 들어 설명하는 것일 뿐, 이에 한정되는 것은 아니며 다른 약한 지도학습 기반의 객체 검출기가 사용될 수도 있다. 검출 분기(410)는 OICR의 WSDDN 부분에서 학습하는 분류 손실과 정제 단계에서 학습하는 검출 손실을 함께 이용하여 학습될 수 있다. 이때, 가장 큰 검출 스코어를 가진 후보 영역으로부터 중첩되는 부분이 큰 영역으로 레이블을 전파하여 정제 단계에 활용할 수 있다. 이때, 검출 성능을 높이기 위하여 가장 큰 검출 점수를 가진 후보 영역뿐만 아니라 기 설정된 기준의 이상의 스코어에 해당하는 바운딩 박스가 함께 사용될 수 있다. 최종적으로 객체 검출기(411)를 통해 검출된 객체 영역은 분할 분기(420)에서 인스턴스 분할 네트워크(422)를 학습하는데 이용될 수 있다.
분할 분기(420)는 CAM(421)과 인스턴스 분할 네트워크(422)로 구성될 수 있다. 분할 분기(420)는 검출된 객체 영역과 관련된 바운딩 박스의 레이블을 이용한 CAM 네트워크와 의미론적 영상을 위한 인스턴스 분할 네트워크(422)로 구성될 수 있다. 분할 분기(420)에 대한 손실 함수는 CAM 네트워크를 학습하는데 사용되는 분류 손실 함수와 CAM을 이용하여 획득한 GT 마스크를 이용하여 인스턴스 분할 네트워크를 학습하는 분할 손실 함수로 구성된다.
실시예에서 객체 영역 분할 네트워크는 RoI 단위의 CAM 네트워크를 학습하기 위하여 변형된 CAM을 제안하였다. 실시예에서 제안된 변형된 CAM은Activation Smoothing, Learning Background Activation, Local Weighted Average Pooling(LWAP), Multi-level Class Activation Map을 수행할 수 있다.
구체적으로, 객체 분류를 위하여 가장 주요한 특징점을 나타내는 작은 영역만을 찾는 경향이 있는 CAM을 이미지로부터 획득된 특징 맵에 비선형 활성화 로그 함수를 적용하여 객체의 전체 영역을 나타내도록 액티베이션 스무딩(Activation Smooting)을 수행할 수 있다.
또한, CAM에서 검출된 객체 영역과 관련된 복수 개의 의미론적 객체 클래스에 배경 클래스를 추가하여 배경 활성화(액티베이션)을 학습하도록 함으로써 CAM이 객체 영역을 배경 영역으로 오탐지하는 것을 방지할 수 있다. 다시 말해서, 인스턴스 분할 네트워크(422)와 협력하여 분할 레이블을 예측하기 위하여 배경 활성화를 학습하는 것이다. 인스턴스 분할 네트워크(422)가 배경 클래스용 추가 채널을 가지고 있기 때문에 배경 클래스용 CAM을 계산할 수 있다. 실제로 네트워크가 배경 활성화에 대하여 학습할 때, 객체와 배경을 더욱 잘 구별할 수 있고, 추론 시 분할 정확도를 향상시킬 수 있다.
또한, CAM은 GAP(Global Average Pooling)를 사용하여 각 특징 채널의 스코어 정보(활성화 스코어)를 집계하고, 채널의 기여도를 학습함에 따라 이미지 레벨의 클래스 레이블을 기반으로 객체를 지역화한다. 이에, CAM 에서 검출된 객체 영역과 관련된 바운딩 박스의 중심에 가중치를 부여하는 지역 가중 평균 풀링(LWAP: Local Weighted Average Pooling)를 적용할 수 있다. 이때, 가중치로 가우시안 가중치가 부여될 수 있다. 가우시안 마스크를 이용한 GAP을 사용하여 배경에 대한 영향을 줄일 수 있다. 도 5를 참고하면, 가중화된 GAP을 확인할 수 있다. 다시 말해서, 검출된 객체 영역과 관련된 바운딩 박스에서 CAM을 추정하기 때문에 약한 지도학습으로 수행되더라도 중심 픽셀을 강조한 특징 맵에 지역 가중 평균 풀링을 적용할 수 있다.
또한, 이미지로부터 특징 맵을 추출하기 위한 특징 추출 네트워크에 구성된 복수 개의 레이어에 CAM 구조를 부가하여 멀티 레벨에서 CAM을 추출할 수 있다. 이때, conv3_3, conv4_3 및 con 5_3의 활성화를 CAM 네트워크의 입력으로 활용하여 개별 레이어의 보완적 특성을 활용할 수 있다. CAM을 학습하기 위하여, 평균 분류 스코어를 채택할 수 있다.
학습된 CAM을 이용하여 객체에 대한 활성화 맵을 획득하고, 획득된 활성화 맵을 이용하여 인스턴스 분할 네트워크(422)를 학습할 수 있다. 획득된 활성화 맵에 대하여 객체의 GT 마스크를 획득하고, 획득된 GT 마스크를 이용하여 인스턴스 분할 네트워크(422)를 학습할 수 있다. 도 7을 참고하면, 객체 영역 분할 네트워크에 기반하여 인스턴스가 분할된 결과를 나타낸 예를 확인할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Claims (12)
- 컴퓨터로 구현되는 시스템에 있어서,
컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로세서는,
이미지를 객체 영역 분할 네트워크에 구성된 복수 개의 분기에 입력하는 입력부;
상기 이미지로부터 객체를 검출하도록 학습된 객체 검출기에 의해 객체 영역을 검출하는 검출부; 및
상기 검출된 객체 영역의 정보 및 상기 검출된 객체 영역과 관련된 바운딩 박스를 이용하여 학습함에 따라 인스턴스를 분할(segmentation)하는 분할부
를 포함하고,
상기 분할부는,
상기 이미지로부터 획득된 특징 맵과 상기 검출된 객체 영역의 클래스 정보를 이용하여 CAM (Class Activation Map)을 학습하고, 상기 학습된 CAM을 이용하여 획득된 GT (Ground Truth) 마스크를 사용하여 인스턴스 분할 네트워크를 학습하되,
상기 분할부에서, 분류 손실 함수를 이용하여 CAM 네트워크가 학습되고, 상기 CAM 네트워크가 학습됨에 따라 획득된 GT 마스크와 분할 손실 함수를 이용하여 인스턴스 분할 네트워크가 학습되고,
상기 CAM 네트워크가 학습됨에 따라 획득된 GT 마스크로서 멀티-레벨 CAM으로부터 획득된 분할(segmentation) 마스크를 사용하여 인스턴스 분할 네트워크가 학습되는 시스템. - 제1항에 있어서,
상기 객체 영역 분할 네트워크는,
객체 검출을 위한 검출 분기와 인스턴스를 분할하기 위한 분할 분기로 구성되고, 상기 검출 분기 및 상기 분할 분기가 상기 이미지로부터 이미지의 특징을 추출하는 특징 추출 네트워크를 공유하는
것을 포함하고,
상기 객체 영역 분할 네트워크에 기반하여 상기 검출 분기 및 상기 분할 분기가 공동으로 학습되는
것을 특징으로 하는 시스템. - 삭제
- 삭제
- 컴퓨터로 구현되는 시스템에 있어서,
컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로세서는,
이미지를 객체 영역 분할 네트워크에 구성된 복수 개의 분기에 입력하는 입력부;
상기 이미지로부터 객체를 검출하도록 학습된 객체 검출기에 의해 객체 영역을 검출하는 검출부; 및
상기 검출된 객체 영역의 정보 및 상기 검출된 객체 영역과 관련된 바운딩 박스를 이용하여 학습함에 따라 인스턴스를 분할(segmentation)하는 분할부
를 포함하고,
상기 분할부는,
상기 이미지로부터 획득된 특징 맵과 상기 검출된 객체 영역의 클래스 정보를 이용하여 CAM (Class Activation Map)을 학습하고, 상기 학습된 CAM을 이용하여 획득된 GT (Ground Truth) 마스크를 사용하여 인스턴스 분할 네트워크를 학습하되,
상기 분할부에서, 분류 손실 함수를 이용하여 CAM 네트워크가 학습되고, 상기 CAM 네트워크가 학습됨에 따라 획득된 GT 마스크와 분할 손실 함수를 이용하여 인스턴스 분할 네트워크가 학습되고,
상기 CAM에 대해서는, 상기 이미지로부터 획득된 특징 맵에 비선형 활성화 로그 함수를 적용하여, 상기 CAM이 객체의 전체 영역을 나타내도록 하는 액티베이션 스무딩(Activation Smooting)이 수행되는
것을 특징으로 하는 시스템. - 컴퓨터로 구현되는 시스템에 있어서,
컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로세서는,
이미지를 객체 영역 분할 네트워크에 구성된 복수 개의 분기에 입력하는 입력부;
상기 이미지로부터 객체를 검출하도록 학습된 객체 검출기에 의해 객체 영역을 검출하는 검출부; 및
상기 검출된 객체 영역의 정보 및 상기 검출된 객체 영역과 관련된 바운딩 박스를 이용하여 학습함에 따라 인스턴스를 분할(segmentation)하는 분할부
를 포함하고,
상기 분할부는,
상기 이미지로부터 획득된 특징 맵과 상기 검출된 객체 영역의 클래스 정보를 이용하여 CAM (Class Activation Map)을 학습하고, 상기 학습된 CAM을 이용하여 획득된 GT (Ground Truth) 마스크를 사용하여 인스턴스 분할 네트워크를 학습하되,
상기 분할부에서, 분류 손실 함수를 이용하여 CAM 네트워크가 학습되고, 상기 CAM 네트워크가 학습됨에 따라 획득된 GT 마스크와 분할 손실 함수를 이용하여 인스턴스 분할 네트워크가 학습되고,
상기 CAM에 대해서는, 상기 검출된 객체 영역과 관련된 객체 클래스에 배경 클래스를 추가하여, 배경 액티베이션이 더 학습되는
것을 특징으로 하는 시스템. - 컴퓨터로 구현되는 시스템에 있어서,
컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로세서는,
이미지를 객체 영역 분할 네트워크에 구성된 복수 개의 분기에 입력하는 입력부;
상기 이미지로부터 객체를 검출하도록 학습된 객체 검출기에 의해 객체 영역을 검출하는 검출부; 및
상기 검출된 객체 영역의 정보 및 상기 검출된 객체 영역과 관련된 바운딩 박스를 이용하여 학습함에 따라 인스턴스를 분할(segmentation)하는 분할부
를 포함하고,
상기 분할부는,
상기 이미지로부터 획득된 특징 맵과 상기 검출된 객체 영역의 클래스 정보를 이용하여 CAM (Class Activation Map)을 학습하고, 상기 학습된 CAM을 이용하여 획득된 GT (Ground Truth) 마스크를 사용하여 인스턴스 분할 네트워크를 학습하되,
상기 분할부에서, 분류 손실 함수를 이용하여 CAM 네트워크가 학습되고, 상기 CAM 네트워크가 학습됨에 따라 획득된 GT 마스크와 분할 손실 함수를 이용하여 인스턴스 분할 네트워크가 학습되고,
상기 CAM은, 상기 검출된 객체 영역과 관련된 바운딩 박스의 중심에 가중치를 부여하는 LWAP(Local Weighted Average Pooling)를 적용하여 학습되는
것을 특징으로 하는 시스템. - 컴퓨터로 구현되는 시스템에 있어서,
컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로세서는,
이미지를 객체 영역 분할 네트워크에 구성된 복수 개의 분기에 입력하는 입력부;
상기 이미지로부터 객체를 검출하도록 학습된 객체 검출기에 의해 객체 영역을 검출하는 검출부; 및
상기 검출된 객체 영역의 정보 및 상기 검출된 객체 영역과 관련된 바운딩 박스를 이용하여 학습함에 따라 인스턴스를 분할(segmentation)하는 분할부
를 포함하고,
상기 분할부는,
상기 이미지로부터 획득된 특징 맵과 상기 검출된 객체 영역의 클래스 정보를 이용하여 CAM (Class Activation Map)을 학습하고, 상기 학습된 CAM을 이용하여 획득된 GT (Ground Truth) 마스크를 사용하여 인스턴스 분할 네트워크를 학습하되,
상기 분할부에서, 분류 손실 함수를 이용하여 CAM 네트워크가 학습되고, 상기 CAM 네트워크가 학습됨에 따라 획득된 GT 마스크와 분할 손실 함수를 이용하여 인스턴스 분할 네트워크가 학습되고,
상기 CAM은,
상기 이미지로부터 특징 맵을 추출하기 위한 특징 추출 네트워크에 구성된 복수의 레이어에 CAM 구조가 부가됨으로써 멀티 레벨로부터 추출되는 CAM인
것을 특징으로 하는 시스템. - 제1항에 있어서,
상기 입력부는,
상기 이미지를 특징 추출 네트워크를 통하여 학습시킴에 따라 이미지를 인코딩한 큰 특징 맵을 생성하고, 상기 생성된 큰 특징 맵에 RolAlign 방법을 적용하여 상기 이미지의 각 후보 영역에 대한 특징 맵을 획득하고, 상기 이미지로부터 획득된 특징 맵을 상기 객체 영역 분할 네트워크의 객체 검출을 위한 검출 분기와 인스턴스를 분할하기 위한 분할 분기에 각각 입력하는
것을 특징으로 하는 시스템. - 컴퓨터로 구현되는 시스템에 있어서,
컴퓨터에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로세서는,
이미지를 객체 영역 분할 네트워크에 구성된 복수 개의 분기에 입력하는 입력부;
상기 이미지로부터 객체를 검출하도록 학습된 객체 검출기에 의해 객체 영역을 검출하는 검출부; 및
상기 검출된 객체 영역의 정보 및 상기 검출된 객체 영역과 관련된 바운딩 박스를 이용하여 학습함에 따라 인스턴스를 분할(segmentation)하는 분할부
를 포함하고,
상기 검출부는,
약한 지도 학습에 기반한 상기 객체 검출기를 이용하여 상기 이미지로부터 획득된 특징 맵에 기반하여 각 객체의 후보 영역 별로 객체 검출과 관련된 스코어 정보를 획득하고, 상기 획득된 스코어 정보에 기초하여 GT (Ground Truth) 마스크를 생성하여 역전파를 통한 학습을 수행하고,
상기 객체 검출기는, 상기 객체 검출기의 WSDDN (Weakly Supervised Deep Detection Network)에서 학습하는 분류 손실과 정제 과정에서 학습하는 검출 손실을 이용하여 학습되는
것을 특징으로 하는 시스템. - 컴퓨터로 구현되는 시스템에 의해 수행되는 객체 영역 분할 방법에 있어서,
이미지를 객체 영역 분할 네트워크에 구성된 복수 개의 분기에 입력하는 단계;
상기 이미지으로부터 객체를 검출하도록 학습된 객체 검출기에 의해 객체 영역을 검출하는 단계; 및
상기 검출된 객체 영역의 정보 및 상기 검출된 객체 영역과 관련된 바운딩 박스를 이용하여 학습함에 따라 인스턴스를 분할(segmentation)하는 단계
를 포함하고,
상기 분할하는 단계는,
상기 이미지로부터 획득된 특징 맵과 상기 검출된 객체 영역의 클래스 정보를 이용하여 CAM (Class Activation Map)을 학습하고, 상기 학습된 CAM을 이용하여 획득된 GT (Ground Truth) 마스크를 사용하여 인스턴스 분할 네트워크를 학습하는 단계
를 포함하고,
상기 분할 네트워크를 학습하는 단계에서, 분류 손실 함수를 이용하여 CAM 네트워크가 학습되고, 상기 CAM 네트워크가 학습됨에 따라 획득된 GT 마스크와 분할 손실 함수를 이용하여 인스턴스 분할 네트워크가 학습되고, 상기 CAM 네트워크가 학습됨에 따라 획득된 GT 마스크로서 멀티-레벨 CAM으로부터 획득된 분할(segmentation) 마스크를 사용하여 인스턴스 분할 네트워크가 학습되는 객체 영역 분할 방법. - 컴퓨터로 구현되는 시스템에 의해 수행되는 객체 영역 분할 방법을 실행시키기 위하여 컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램에 있어서,
이미지를 객체 영역 분할 네트워크에 구성된 복수 개의 분기에 입력하는 단계;
상기 이미지으로부터 객체를 검출하도록 학습된 객체 검출기에 의해 객체 영역을 검출하는 단계; 및
상기 검출된 객체 영역의 정보 및 상기 검출된 객체 영역과 관련된 바운딩 박스를 이용하여 학습함에 따라 인스턴스를 분할(segmentation)하는 단계
를 포함하고,
상기 분할하는 단계는,
상기 이미지로부터 획득된 특징 맵과 상기 검출된 객체 영역의 클래스 정보를 이용하여 CAM (Class Activation Map)을 학습하고, 상기 학습된 CAM을 이용하여 획득된 GT (Ground Truth) 마스크를 사용하여 인스턴스 분할 네트워크를 학습하는 단계
를 포함하고,
상기 분할 네트워크를 학습하는 단계에서, 분류 손실 함수를 이용하여 CAM 네트워크가 학습되고, 상기 CAM 네트워크가 학습됨에 따라 획득된 GT 마스크와 분할 손실 함수를 이용하여 인스턴스 분할 네트워크가 학습되고, 상기 CAM 네트워크가 학습됨에 따라 획득된 GT 마스크로서 멀티-레벨 CAM으로부터 획득된 분할(segmentation) 마스크를 사용하여 인스턴스 분할 네트워크가 학습되는 컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180166708A KR102160224B1 (ko) | 2018-12-20 | 2018-12-20 | 약한 지도학습 객체 검출기에 기반한 의미론적 객체 영역 분할 방법 및 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180166708A KR102160224B1 (ko) | 2018-12-20 | 2018-12-20 | 약한 지도학습 객체 검출기에 기반한 의미론적 객체 영역 분할 방법 및 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200077321A KR20200077321A (ko) | 2020-06-30 |
KR102160224B1 true KR102160224B1 (ko) | 2020-09-25 |
Family
ID=71120983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180166708A KR102160224B1 (ko) | 2018-12-20 | 2018-12-20 | 약한 지도학습 객체 검출기에 기반한 의미론적 객체 영역 분할 방법 및 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102160224B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7214825B1 (ja) | 2021-09-17 | 2023-01-30 | 延世大学校 産学協力団 | 擬似マスク基盤の弱教師ありセマンティック分割装置及び方法 |
KR20230099941A (ko) | 2021-12-28 | 2023-07-05 | 연세대학교 산학협력단 | 자기 지도학습과 복사-붙이기 데이터 증강을 이용한 건설객체 분할모델 일반화방법 및 일반화시스템 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112014399B (zh) * | 2020-07-22 | 2023-08-25 | 湖北工业大学 | 粮箱内带式谷物破碎率和含杂率检测装置和方法 |
CN112053358B (zh) * | 2020-09-28 | 2024-09-13 | 腾讯科技(深圳)有限公司 | 图像中像素的实例类别确定方法、装置、设备及存储介质 |
KR102537947B1 (ko) * | 2020-10-16 | 2023-05-26 | 연세대학교 산학협력단 | 약한 지도학습 기반 객체 위치 검출 방법 및 장치 |
KR102265678B1 (ko) * | 2021-03-23 | 2021-06-16 | 주식회사 에이모 | 이미지 파일의 바운딩 박스 작업의 난이도를 예측하는 방법 및 이를 수행하는 컴퓨터 장치 |
CN113505781B (zh) * | 2021-06-01 | 2024-06-25 | 北京旷视科技有限公司 | 目标检测方法、装置、电子设备及可读存储介质 |
KR102479672B1 (ko) * | 2021-11-30 | 2022-12-21 | 주식회사 오토피디아 | 차량의 파손 영역을 검출하기 위한 방법 |
KR102587288B1 (ko) * | 2023-07-10 | 2023-10-10 | 연세대학교 산학협력단 | 건설객체 데이터셋의 의미적 분할 모델의 학습을 위한 자기 지도학습 기반의 고품질 의사 라벨 생성시스템 및 생성방법 |
-
2018
- 2018-12-20 KR KR1020180166708A patent/KR102160224B1/ko active IP Right Grant
Non-Patent Citations (2)
Title |
---|
Mask R-CNN* |
의미적 분할을 위한 약지도 기계 학습* |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7214825B1 (ja) | 2021-09-17 | 2023-01-30 | 延世大学校 産学協力団 | 擬似マスク基盤の弱教師ありセマンティック分割装置及び方法 |
KR20230041851A (ko) | 2021-09-17 | 2023-03-27 | 연세대학교 산학협력단 | 모조 마스크 기반 약지도 시맨틱 분할 장치 및 방법 |
JP2023044598A (ja) * | 2021-09-17 | 2023-03-30 | 延世大学校 産学協力団 | 擬似マスク基盤の弱教師ありセマンティック分割装置及び方法 |
US11798171B2 (en) | 2021-09-17 | 2023-10-24 | Uif (University Industry Foundation), Yonsei University | Weakly supervised semantic segmentation device and method based on pseudo-masks |
KR20230099941A (ko) | 2021-12-28 | 2023-07-05 | 연세대학교 산학협력단 | 자기 지도학습과 복사-붙이기 데이터 증강을 이용한 건설객체 분할모델 일반화방법 및 일반화시스템 |
Also Published As
Publication number | Publication date |
---|---|
KR20200077321A (ko) | 2020-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102160224B1 (ko) | 약한 지도학습 객체 검출기에 기반한 의미론적 객체 영역 분할 방법 및 시스템 | |
US10860837B2 (en) | Deep multi-task learning framework for face detection, landmark localization, pose estimation, and gender recognition | |
US10902615B2 (en) | Hybrid and self-aware long-term object tracking | |
CN111738231B (zh) | 目标对象检测方法、装置、计算机设备和存储介质 | |
CN111782840B (zh) | 图像问答方法、装置、计算机设备和介质 | |
US20180114071A1 (en) | Method for analysing media content | |
US20170147905A1 (en) | Systems and methods for end-to-end object detection | |
KR20200075344A (ko) | 검출기, 객체 검출 방법, 학습기 및 도메인 변환을 위한 학습 방법 | |
Raghavan et al. | Optimized building extraction from high-resolution satellite imagery using deep learning | |
KR102011788B1 (ko) | 계층적 시각 특징을 이용한 시각 질의 응답 장치 및 방법 | |
CN110622177A (zh) | 实例分割 | |
CN111274994B (zh) | 漫画人脸检测方法、装置、电子设备及计算机可读介质 | |
KR102117654B1 (ko) | 자연어 기반의 비디오 생성 방법 및 장치 | |
KR101963404B1 (ko) | 2-단계 최적화 딥 러닝 방법, 이를 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체 및 딥 러닝 시스템 | |
CN111460877A (zh) | 利用图像级联及cnn的客体检测方法及装置 | |
KR20210143401A (ko) | 객체 검출 시스템 및 방법 | |
KR20220122455A (ko) | 영상 데이터에 포함된 객체 분할 방법 및 이를 수행하는 장치 | |
KR101993085B1 (ko) | 심층 학습을 이용하는 의미적 영상 분할 방법 | |
KR20200077942A (ko) | 객체의 미래 움직임 예측을 통한 동영상에서의 객체 추적을 위한 방법 및 시스템 | |
KR102138747B1 (ko) | 가로 글자와 세로 글자를 동시에 처리하기 위한 방법 및 시스템 | |
KR102143031B1 (ko) | 정지 영상에서 객체의 미래 움직임을 예측하는 방법 및 시스템 | |
KR102026280B1 (ko) | 딥 러닝을 이용한 씬 텍스트 검출 방법 및 시스템 | |
Vlachynska et al. | Dogface detection and localization of dogface’s landmarks | |
KR20200029652A (ko) | 카메라 기반의 차선 변경 가능 시점을 학습하는 방법 및 시스템, 그리고 차선 변경 가능 시점을 예측하는 방법 및 시스템 | |
KR20220062961A (ko) | 자율주행 자동차의 판단에 대한 근거 설명 모델 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |