Traitement en cours

Veuillez attendre...

Paramétrages

Paramétrages

Aller à Demande

1. WO2020116789 - PROCÉDÉ DE TRAITEMENT D'IMAGE, ET DISPOSITIF ÉLECTRONIQUE ASSOCIÉ

Document

명세서

발명의 명칭

기술분야

1  

배경기술

2   3  

발명의 상세한 설명

기술적 과제

4   5   6   7  

과제 해결 수단

8   9  

발명의 효과

10   11  

도면의 간단한 설명

12   13   14   15   16   17   18   19   20   21   22   23   24   25   26  

발명의 실시를 위한 형태

27   28   29   30   31   32   33   34   35   36   37   38   39   40   41   42   43   44   45   46   47   48   49   50   51   52   53   54   55   56   57   58   59   60   61   62   63   64   65   66   67   68   69   70   71   72   73   74   75   76   77   78   79   80   81   82   83   84   85   86   87   88   89   90   91   92   93   94   95   96   97   98   99   100  

청구범위

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15  

도면

1   2   3   4a   4b   4c   4d   4e   4f   4g   4h   4i   4j   5   6   7   8   9   10a   10b   10c   11   12   13a   13b   13c   14   15  

명세서

발명의 명칭 : 이미지를 처리하기 위한 방법 및 그 전자 장치

기술분야

[1]
본 개시의 다양한 실시 예는 이미지를 처리하기 위한 장치 및 방법에 관한 것이다.

배경기술

[2]
정보통신 기술 및 반도체 기술의 발전으로 각종 전자 장치들이 다양한 기능을 제공하고 있다. 예를 들어, 전자 장치는 음성 통화 서비스, 메시지 서비스, 방송 서비스, 무선 인터넷 서비스, 카메라 서비스 및 음악 재생 서비스와 같은 멀티미디어 서비스를 제공할 수 있다.
[3]
컴퓨터 사진 기술(computational photography capabilities)의 발전으로 스마트 폰과 같은 모바일 장치에서의 카메라 사용이 증가하고 있다. 예를 들어, 2017년 촬영된 1조 개 이상의 사진 중 80% 이상의 사진은 모바일 장치에서 촬영되었다.

발명의 상세한 설명

기술적 과제

[4]
모바일 장치 및 클라우드는 많은 개수(예: 약 4 조 개 이상)의 사진(이미지)를 저장하고 있다. 하지만, 모바일 장치 및/또는 클라우드에 저장된 사진의 상당 수는 상대적으로 품질이 낮거나, 다른 사진과 중복 또는 유사하여 사용되지 않는다. 예를 들어, 모바일 장치의 사용자는 좋은 구도의 사진을 획득하기 위한 방법을 모르는 경우, 동일한 상황(또는 피사체)에 대해 다수 개의 사진들을 촬영할 수 있다. 다수 개의 사진들 중 상대적으로 품질이 좋은 적어도 하나의 사진은 사용자에 의해 좋은 구도의 사진으로 선택될 수 있다. 이 경우, 모바일 장치 및/또는 클라우드는 사용자에 의해 선택된 사진뿐만 아니라 카메라를 통해 촬영된 나머지 사진까지 저장하여 메모리가 낭비되는 문제가 발생할 수 있다.
[5]
본 개시의 실시 예는 전자 장치에서 사진 촬영 시, 사진 촬영을 위한 구조 규칙(composition rule)을 추천하기 위한 장치 및 방법을 제공할 수 있다.
[6]
본 개시의 실시 예는 전자 장치에서 이미지(사진)를 자동으로 편집하기 위한 장치 및 방법을 제공할 수 있다.
[7]
본 개시의 실시 예들은 이상에서 언급한 실시 예에 제한되지 않으며, 언급되지 않은 또 다른 실시 예들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.

과제 해결 수단

[8]
본 개시의 실시 예에 따르면, 전자 장치는 카메라, 디스플레이, 기 정의된 다수 개의 구도 규칙(composition rule)을 저장하는 메모리, 및 상기 카메라를 통해 이미지를 획득하고, 상기 각각의 구도 규칙에 의한 이상적인 이미지의 구도와 상기 이미지의 구도 사이의 거리를 검출하고, 상기 거리에 기반하여 상기 다수 개의 구도 규칙 중 어느 하나를 선택하고, 상기 선택된 구도 규칙에 기반하여 이미지 획득을 위한 가이드 정보를 출력하는 프로세서를 포함할 수 있다.
[9]
본 개시의 다양한 실시 예에 따르면, 전자 장치의 동작 방법은, 상기 전자 장치와 기능적으로 연결된 카메라를 통해 이미지를 획득하는 동작과 기 정의된 각각의 구도 규칙에 의한 이상적인 이미지의 구도와 상기 이미지의 구도 사이의 거리를 검출하는 동작과 상기 거리에 기반하여 상기 다수 개의 구도 규칙 중 어느 하나를 선택하는 동작, 및 상기 선택된 구도 규칙에 기반하여 이미지 획득을 위한 가이드 정보를 출력하는 동작을 포함할 수 있다.

발명의 효과

[10]
본 개시의 실시 예에 따른 전자 장치 및 그 동작 방법은, 이미지 획득을 위한 이미지의 구도 규칙에 기반한 가이드 정보를 제공함으로써, 카메라를 통해 획득하는 이미지의 구도 및/또는 초점 상태가 개선되어 디지털 쓰레기(digital garbage)의 양을 줄일 수 있다.
[11]
본 개시의 실시 예에 따른 전자 장치 및 그 동작 방법은, 구도 규칙에 기반하여 이미지를 편집함으로써, 전자 장치에 저장된 이미지의 품질(예: 구도, 밝기, 대비, 색상 등)을 개선할 수 있다.

도면의 간단한 설명

[12]
도 1은 본 개시의 실시 예에 따른 전자 장치의 블록도이다.
[13]
도 2는 본 개시의 실시 예에 따른 이미지를 처리하기 위한 프로세서의 블록도이다.
[14]
도 3은 본 개시의 실시 예에 따른 전자 장치에서 이미지를 캡쳐하기 위한 흐름도이다.
[15]
도 4a, 도 4b, 도 4c, 도 4d, 도 4e, 도 4f, 도 4g, 도 4h, 도 4i 및 도 4j는 본 개시의 실시 예에 따른 이미지를 캡쳐하기 위한 화면이다.
[16]
도 5는 본 개시의 실시 예에 따른 전자 장치에서 이미지를 편집하기 위한 흐름도이다.
[17]
도 6은 본 개시의 일 실시 예에 따른 이미지를 편집하기 위한 화면이다.
[18]
도 7은 본 개시의 다른 실시 예에 따른 이미지를 편집하기 위한 화면이다.
[19]
도 8은 본 개시의 실시 예에 따른 전자 장치에서 잘린 객체를 복원하기 위한 흐름도이다.
[20]
도 9는 본 개시의 실시 예에 따른 전자 장치에서 이미지를 보완하기 위한 흐름도이다.
[21]
도 10a, 10b 및 도 10c는 본 개시의 실시 예에 따른 이미지에서 객체를 검출 및 인식하기 위한 구성이다.
[22]
도 11은 본 개시의 실시 예에 따른 이미지에서 객체의 깊이를 검출하기 위한 구성이다.
[23]
도 12는 본 개시의 실시 예에 따른 이미지에서 관심 영역을 검출하기 위한 구성이다.
[24]
도 13a, 13b 및 도 13c는 본 개시의 실시 예에 따른 이미지에서 구도 규칙과 이미지의 구조 사이의 거리를 검출하기 위한 구성이다.
[25]
도 14는 본 개시의 실시 예에 따른 이미지의 밝기, 색상 및 대비를 개선하기 위한 구성이다.
[26]
도 15는 본 개시의 실시 예에 따른 이미지에서 스타일을 전환하기 위한 구성이다.

발명의 실시를 위한 형태

[27]
본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 개시는 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시 예들은 본 개시의 개시가 완전하도록 하며, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시는 청구항의 범주에 의해 정의될 뿐이다.
[28]
본 개시에서 "제 1", "제 2" 등의 표현은 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제 1 구성요소는 본 개시의 기술적 사상 내에서 제 2 구성요소일 수도 있음은 물론이다.
[29]
이하 설명에서 전자 장치는 다양한 형태의 장치가 될 수 있다. 예를 들어, 전자 장치는, 휴대용 통신 장치 (예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 카메라, 웨어러블 장치, 또는 가전 장치 중 적어도 하나를 포함할 수 있다. 본 문서의 실시 예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
[30]
이하 설명에서 이미지 캡쳐는 카메라를 이용하여 사진을 촬영하는 일련의 동작을 포함할 수 있다.
[31]
도 1은 본 개시의 실시 예에 따른 전자 장치의 블록도이다.
[32]
도 1을 참조하면, 전자 장치(101)는 버스(110), 프로세서(120), 메모리(130), 입출력 인터페이스(150), 디스플레이(160), 통신 인터페이스(170) 또는 카메라(180) 중 적어도 하나를 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(101)는, 구성요소들 중 적어도 하나를 생략하거나 다른 구성요소를 추가적으로 구비할 수 있다. 일 예로. 도 1에서 입출력 인터페이스(150) 및 통신 인터페이스(170)는 생략될 수 있다.
[33]
버스(110)는, 예를 들면, 구성요소들(120 내지 180)을 서로 연결하고, 구성요소들 간의 신호(예: 제어 메시지 및/또는 데이터)를 전달하는 회로를 포함할 수 있다.
[34]
프로세서(120)는, 중앙처리장치(CPU), 어플리케이션 프로세서(AP, application processor), 커뮤니케이션 프로세서 (CP, communication processor) 또는 이미지 신호 프로세서(ISP, image signal processor) 중 하나 또는 그 이상을 포함할 수 있다. 예를 들어, 프로세서(120)는 전자 장치(101)의 적어도 하나의 다른 구성요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 실행할 수 있다.
[35]
한 실시 예에 따르면, 프로세서(120)는 이미지와 관련된 구도 규칙(composition rule)을 추천할 수 있다. 예를 들어, 프로세서(120)는 카메라(180)를 통해 획득한 이미지의 구도와 메모리(130)에 저장된 각각의 기하학적 구도 규칙(geometric composition rule)의 따른 이상적인 구도 사이의 거리를 검출한다. 프로세서(120)는 이미지의 구도와 거리가 최소인 기하학적 구도 규칙을 사진 촬영을 위한 구도 규칙으로 선택할 수 있다. 프로세서(120)는 사진 촬영을 위한 구도 규칙에 기반하여 카메라(180)를 제어하거나, 피사체의 이동과 같은 가이드 정보를 출력하도록 입/출력 인터페이스(150) 또는 디스플레이(160) 중 적어도 하나를 제어할 수 있다. 다른 예를 들어, 프로세서(120)는 사용자에 의해 선택된 이미지의 구도와 메모리(130)에 저장된 각각의 기하학적 구도 규칙의 따른 이상적인 구도 사이의 거리를 검출한다. 프로세서(120)는 이미지의 구도와 거리가 최소인 기하학적 구도 규칙을 이미지 편집을 위한 구도 규칙으로 추천할 수 있다. 예컨대, 이미지의 구도는 이미지에 포함된 적어도 하나의 객체의 위치 및 크기를 포함할 수 있다.
[36]
메모리(130)는 전자 장치(101)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장할 수 있다. 예를 들어, 메모리(130)는 전자 장치(130)에 내장된 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 다른 예를 들어, 메모리(130)는 전자 장치(101)와 기능적으로 연결된 외부 메모리를 포함할 수 있다. 일 예로, 외부 메모리는 서버(예: 클라우드) 또는 메모리 카드 중 적어도 하나를 포함할 수 있다.
[37]
입출력 인터페이스(150)는 사용자 또는 다른 외부 기기로부터 입력된 명령 또는 데이터를 전자 장치(101)의 다른 구성요소(들)에 전달하거나, 전자 장치(101)의 다른 구성요소(들)로부터 수신된 명령 또는 데이터를 사용자 또는 다른 외부 기기로 출력할 수 있다. 예를 들어, 입출력 인터페이스(150)는 홈 버튼, 전원 버튼 및 볼륨 제어 버튼 등과 같은 적어도 하나의 물리적인 버튼을 포함할 수 있다. 예를 들어, 입출력 인터페이스(150)는 오디오 신호를 출력하기 위한 스피커 및 오디오 신호를 수집하기 위한 마이크를 포함할 수 있다.
[38]
디스플레이(160)는 사용자에게 각종 콘텐츠(예: 텍스트, 이미지, 비디오, 아이콘, 및/또는 심볼 등)을 표시할 수 있다. 예를 들어, 디스플레이(160)는, 터치 스크린을 포함할 수 있다. 예컨대, 디스플레이(160)는 전자 펜 또는 사용자의 신체의 일부를 이용한 터치, 제스쳐, 근접, 또는 호버링 입력을 수신할 수 있다. 다른 예를 들어, 디스플레이(160)는 카메라(180)를 통해 수집한 이미지를 사용자가 관찰할 수 있도록 표시하는 뷰 파인더(view finder)로 동작할 수 있다.
[39]
통신 인터페이스(170)는 전자 장치(101)와 외부 장치(예: 다른 전자 장치 또는 서버) 간의 통신을 설정할 수 있다. 예를 들면, 통신 인터페이스(170)는 무선 통신 또는 유선 통신을 통해서 네트워크에 연결되어 외부 장치와 통신할 수 있다.
[40]
카메라(180)는 피사체에 대한 이미지 정보를 수집하여 정지 영상(사진) 및 동영상을 촬영할 수 있다. 예를 들어, 카메라(180)는 수집 또는 촬영된 데이터(예: 영상)를 디스플레이(160) 및 프로세서(120)에 전달할 수 있다. 예컨대, 카메라(180)는 적어도 하나의 이미지 센서, 렌즈, 이미지 신호 프로세서(ISP), 또는 플래시(예: LED 또는 xenon lamp 등) 중 적어도 하나를 포함할 수 있다. 예를 들어, 카메라(180)는 전자 장치(101)의 전면 또는 후면에 배치되는 다수 개의 카메라를 포함할 수 있다.
[41]
본 개시의 다른 실시 예에 따르면, 전자 장치(101)는 디스플레이(160)와 다른 별도의 뷰 파인더를 포함할 수도 있다.
[42]
도 2는 본 개시의 실시 예에 따른 이미지를 처리하기 위한 프로세서의 블록도이다.
[43]
도 2를 참조하면, 프로세서(120)는 이미지 전처리 모듈(image preprocessing module)(210), 객체 완성 모듈(object completion module)(220), 구도 측정 모듈(image composition metrics measurement module)(230), 추천 모듈(geometric composition rule recommender)(240), 이미지 개선 모듈(image enhancement module)(250) 또는 ACSE 모듈(automatic composition and style enhancer)(260) 중 적어도 하나를 포함할 수 있다. 어떤 실시 예에서는, 프로세서(120)는, 구성요소들 중 적어도 하나를 생략하거나 다른 구성요소를 추가적으로 구비할 수 있다. 일 예로. 도 2에서 점선으로 표시된 모듈(예: 객체 완성 모듈(220) 및 ACSE 모듈(260)은 생략될 수 있다.
[44]
이미지 전처리 모듈(210)은 이미지에 포함된 적어도 하나의 객체와 관련된 정보를 획득하기 위한 전처리를 수행할 수 있다. 객체와 관련된 정보를 획득하기 위한 전처리는 객체 검출, 객체 인식, 객체 깊이 검출 및 관심 영역(ROI: region of interest detection) 검출을 포함할 수 있다. 예를 들어, 이미지 전처리 모듈(210)은 RPN(region proposal network)을 이용하여 이미지에서 적어도 하나의 객체를 검출(detection)할 수 있다. 이미지에서 검출된 적어도 하나의 객체는 고속-RCNN(fast region convolutional neural network)를 사용하여 인식(recognition)될 수 있다. 예를 들어, 이미지 전처리 모듈(210)은 이미지의 그레이스케일 깊이 맵(grayscale depth map)의 생성하여 이미지에서 인식된 각각의 객체에 대한 깊이를 검출할 수 있다. 예를 들어, 이미지 전처리 모듈(210)은 객체의 깊이, 위치 및 이름과 같은 네트워크에 공급되는 정보에 기반한 DNN(depth neural network)를 이용하여 이미지의 관심 영역을 검출할 수 있다. 예를 들어, 이미지 전처리 모듈(210)은 이미지에 대한 객체 인식을 통해, 랜드마크, 유명하거나 중요한 객체를 확인할 수 있다. 예컨대, 이미지는 카메라(180)를 통해 획득한 이미지 또는 메모리(130)에 저장된 이미지 중 적어도 하나를 포함할 수 있다.
[45]
객체 완성 모듈(220)은 이미지에 포함된 잘린 객체의 잘린 부분을 복원할 수 있다. 예를 들어, 객체 완성 모듈(220)은 메모리(130)에 저장된 이미지 중 편집을 위한 이미지가 선택되는 경우, 해당 이미지에 잘린 객체가 존재하는지 확인할 수 있다. 객체 완성 모듈(220)은 잘린 객체가 존재하는 경우, 메모리(130)(예: 이미지 저장 모듈(270))에 저장된 다른 이미지에서 잘린 객체와 유사한 객체를 존재하는지 검색할 수 있다. 잘린 객체는 잘린 객체와 유사한 객체를 존재하는 경우, 유사한 객체로부터 얻은 정보 및 GAN(generative adversarial network)를 사용하여 잘린 부분이 복원되도록 확장(extend)될 수 있다. 예컨대, 객체 완성 모듈(220)은 이미지에서 랜드 마크, 중요한 객체 또는 유명한 객체가 잘린 경우, 해당 객체의 잘린 부분을 복원할 수 있다.
[46]
이미지 저장 모듈(270)은 이미지 개선을 위해 수행되는 딥 러닝(deep learning)을 위한 데이터(training data)를 저장할 수 있다. 예를 들어, 이미지 저장 모듈(270)은 사용자들 사이에서 이미지의 접속(access)을 공유하도록 설정될 수 있다. 이미지 저장 모듈(270)은 다른 사용자에 의한 이미지 접속을 수락한 전자 장치(101)의 사용자와 관련된 온라인 및 오프라인의 저장소를 포함할 수 있다. 예컨대, 전자 장치(101)의 사용자와 관련된 온라인 및 오프라인의 저장소는 사용자가 공유를 수락한 전자 장치(101)의 적어도 하나의 폴더(예: 갤러리), 전자 장치(101)와 연결된 외부 메모리, 전자 장치(101)를 사용하는 사용자의 소셜 미디어 계정에 연결된 소셜 미디어의 저장 영역 및 클라우드의 저장 영역 중 적어도 하나를 포함할 수 있다. 이미지 저장 모듈(270)은 전자 장치(101)의 사용자가 접속 가능한 다른 사용자와 관련된 온라인 및 오프라인의 저장소를 포함할 수 있다. 예컨대, 다른 사용자와 관련된 온라인 및 오프라인의 저장소는 다른 사용자가 공유를 수락한 다른 전자 장치의 적어도 하나의 폴더, 다른 전자 장치와 연결된 외부 메모리, 다른 사용자의 소셜 미디어 계정에 연결된 소셜 미디어의 저장 영역 및 클라우드 중 적어도 하나를 포함할 수 있다.
[47]
구도 측정 모듈(230)은 이미지의 구도와 기 정의된 기하학적 구도 규칙에 따른 이상적인 이미지의 구도 사이의 거리를 측정할 수 있다. 이미지의 구도는 이미지 전처리 모듈(210)에서 인식된 이미지에 포함된 적어도 하나의 객체의 크기 및 위치에 의해 결정될 수 있다. 예를 들어, 구도 측정 모듈(230)은 이미지의 관심 영역으로부터 이미지의 구조 측정을 시작할 수 있다.
[48]
추천 모듈(240)은 구도 측정 모듈(230)에서 측정한 각각의 기하학적 구도 규칙과 이미지의 구도 사이의 거리에 기반하여 이미지의 구도를 개선하는데 사용할 구도 규칙을 선택할 수 있다. 예를 들어, 추천 모듈(240)은 이미지의 구도와의 거리가 최소인 기하학적 구도 규칙을 이미지의 구도를 개선하는데 사용할 구도 규칙으로 선택할 수 있다.
[49]
추천 모듈(240)은 이미지의 구도를 개선하는데 사용할 구도 규칙에 기반하여 카메라(180)를 제어하거나, 피사체의 이동과 같은 가이드 정보를 출력하도록 제어할 수 있다. 예를 들어, 디스플레이(160)는 카메라(180)로부터 제공받는 프리뷰 이미지에 중첩하여 가이드 정보를 출력할 수 있다. 예컨대, 카메라(180)의 제어는 패닝(panning), 확대, 축소 또는 촬영 각도 변화 중 적어도 하나를 포함할 수 있다.
[50]
이미지 개선 모듈(250)은 메모리(130)(예: 이미지 저장 모듈(270))에 저장된 다른 이미지의 정보를 이용하여 구도가 개선된 이미지의 밝기(brightness), 대기(contrast) 및 색상(color)을 개선할 수 있다. 예를 들어, 이미지 개선 모듈(250)은 이미지 저장 모듈(270)에 저장된 사진 전문가에 의해 생성된 이미지에 기반한 GAN(generative adversarial network)를 이용하여 이미지의 밝기, 대비 및 색상 중 적어도 하나를 개선할 수 있다.
[51]
ACSE 모듈(260)은 추천 모듈(240)에서 선택한 구도 규칙에 기반하여 기 저장된 이미지의 구도를 개선하고, 스타일을 전환할 수 있다. 예를 들어, ACSE 모듈(260)은 추천 모듈(240)에서 선택한 구도 규칙에 기반하여 기 저장된 이미지의 적어도 하나의 객체의 위치를 변경한 경우, GAN을 이용하여 객체의 위치 변경으로 발생된 빈 공간(hole)을 채울 수 있다. 예컨대, ACSE 모듈(260)은 이미지 저장 모듈(270)에서 검출한 유사 이미지의 정보를 이용하여 구도가 개선된 이미지의 빈 공간을 채울 수 있다. 예를 들어, ACSE 모듈(260)은 기준 스타일(style representation)과 이미지의 콘텐트 표시(content representation)를 매칭하여 새로운 스타일의 새로운 이미지를 생성할 수 있다.
[52]
도 3은 본 개시의 실시 예에 따른 전자 장치에서 이미지를 캡쳐하기 위한 흐름도이다. 도 4a 내지 도 4j는 본 개시의 실시 예에 따른 이미지를 캡쳐하기 위한 화면이다. 도 13a 내지 도 13c는 본 개시의 실시 예에 따른 이미지에서 구도 규칙과 이미지의 구조 사이의 거리를 검출하기 위한 구성이다. 이하 설명에서 전자 장치는 도 1의 전자 장치(101) 또는 전자 장치(101)의 적어도 일부(예: 프로세서(120))를 포함할 수 있다.
[53]
도 3을 참조하면, 전자 장치는 동작 301에서, 이미지를 획득할 수 있다. 예를 들어, 프로세서(120)는 도 4a와 같이, 카메라(180)를 통해 수집되는 실시간 이미지(프리뷰 이미지)를 디스플레이(160)를 통해 표시할 수 있다.
[54]
전자 장치는 동작 303에서, 이미지의 전처리를 통해 이미지에 포함된 적어도 하나의 객체의 정보를 획득할 수 있다. 예를 들어, 프로세서(120)는 도 4a의 이미지에 대한 객체 검출, 객체 인식, 객체 깊이 검출 및 관심 영역 검출을 수행하여 이미지에 포함된 객체의 종류, 위치, 크기, 깊이, 관심 영역, 랜드마크 및 중요 객체 정보 중 적어도 하나를 획득할 수 있다. 디스플레이(160)는 도 4b와 같이, 이미지에서 인식된 객체(예: 신호등, 건물, 꽃, 쓰레기통, 오토바이)에 경계 박스(bounding box)(401) 및 라벨(label)(403)을 표시할 수 있다. 예컨대, 프로세서(120)는 이미지 편집을 위해 중요 객체에 태그를 삽입할 수 있다.
[55]
전자 장치는 동작 305에서, 메모리(130)에 저장된 각각의 기하적 구도 규칙과 이미지의 구도 사이의 거리를 검출할 수 있다. 예를 들어, 프로세서(120)는 도 13a와 같이, 황금 비율(golden ratio), 3등분 법칙(rule of thirds) 및 길잡이선(leading lines)과 같은 다수 개의 기하학적 구도 규칙(1303)을 포함할 수 있다. 프로세서(120)는 이미지 전처리를 통해 획득한 이미지의 관심 영역(1301)에 각각의 기하학적 구도 규칙(1305)을 적용함에 따른 오류(error)를 측정할 수 있다. 구체적으로, 프로세서(120)는 도 13b와 같이, 황금 비율에 따른 이상적인 이미지의 구도와 이미지의 관심 영역(1301) 사이의 거리를 측정할 수 있다. 예컨대, 프로세서(120)는 도 13b와 같이, 적어도 하나의 관심 영역에 기반하여 이미지의 강조 포인트(emphasis point)(1311)를 검출할 수 있다. 강조 포인트는 관심 영역의 크기에 기반하여 이미지에 포함된 모든 관심 영역의 비율로, 도 13b에서 관심 영역 1(ROI1)과 관심 영역 2(ROI2)의 크기 비율에 따른 x1 및 x2의 크기에 기반하여 결정될 수 있다. 프로세서(120)는 황금 비율의 초점(focus point)(1313)과 이미지의 강조 포인트(1311) 사이의 거리(1315)를 황금 비율에 따른 이상적인 이미지의 구도와 이미지의 관심 영역(1301) 사이의 거리로 판단할 수 있다.
[56]
전자 장치는 동작 307에서, 메모리(130)에 저장된 각각의 기하적 구도 규칙과 이미지의 구도 사이의 거리에 기반하여 이미지의 구도를 개선하는데 사용할 구도 규칙을 결정할 수 있다. 예를 들어, 프로세서(120)는 이미지의 구도와 기하적 구도 규칙에 따른 이상적인 이미지의 구도 사이의 거리가 최소인 기하학적 구도 규칙의 오류가 가장 적은 것으로 판단할 수 있다. 이에 따라, 프로세서(120)는 이미지의 구도와의 거리가 최소인 기하학적 구도 규칙을 이미지의 구도를 개선하기 위한 구도 규칙으로 선택할 수 있다.
[57]
전자 장치는 동작 309에서, 이미지의 구도를 개선하는데 사용할 구도 규칙에 대응하는 가이드 정보를 출력할 수 있다. 예를 들어, 프로세서(120)는 3등분 법칙을 이미지의 구도 개선을 위한 규칙으로 선택한 경우, 도 4c와 같이, 3등분 법칙에 따른 구도 규칙과 3등분 법칙의 구도에 대응하는 이미지를 획득하기 위한 카메라의 제어 및/또는 객체의 움직임 제어를 위한 가이드 정보(411)를 디스플레이(160)(뷰 파인더)를 통해 출력할 수 있다. 구체적으로, 디스플레이(160)는 프리뷰 이미지의 적어도 일부에 중첩되도록 "스쿠터가 오른쪽 가운데 격자에 배치되도록 카메라를 패닝 또는 밀고, 쓰레기통을 제거하세요"의 가이드 정보(411)를 표시할 수 있다. 예를 들어, 프로세서(120)는 프리뷰 이미지의 적어도 일부에 표시된 구도 규칙 버튼(415)의 입력이 감지된 경우, 도 4d와 같이, 이미지에 적용 가능한 구도 규칙 목록을 표시할 수 있다. 프로세서(120)는 입출력 인터페이스(150)를 통해 수신한 구도 규칙 목록에 대한 입력 정보에 기반하여 이미지에 적용할 구도 규칙을 수동적으로 선택할 수 있다.
[58]
전자 장치는 동작 311에서, 캡쳐 이벤트가 발생하는지 확인할 수 있다. 예를 들어, 프로세서(120)는 도 4c에서 촬영 버튼(413)에 대한 선택 입력이 감지되는지 확인할 수 있다.
[59]
전자 장치는 캡쳐 이벤트가 발생하지 않은 경우, 전자 장치의 카메라를 통해 획득되는 이미지의 변화에 대응하는 구도 규칙을 선택하여 가이드 정보를 지속적으로 출력할 수 있다.
[60]
전자 장치는 동작 313에서, 캡쳐 이벤트가 발생한 경우, 캡쳐 이벤트가 발생한 시점에 대응하는 이미지를 캡쳐할 수 있다. 캡쳐 이벤트가 발생한 시점은 촬영 버튼(413)의 선택 입력을 감지한 시점을 포함할 수 있다. 예를 들어, 프로세서(120)는 이미지 개선 기능이 자동으로 설정된 경우, 카메라(180)가 구동되는 동안 이미지의 밝기, 대비 및 색상을 자동으로 갱신할 수 있다. 구체적으로, 프로세서(120)는 도 4e와 같이, 동작 307에서 결정한 구도 규칙에 대응하는 이미지(421)를 획득하는 동안, 이미지의 밝기, 대비 및 색상을 자동으로 갱신할 수 있다. 이 경우, 디스플레이(160)(뷰 파인더)는 이미지 개선 기능의 자동 설정 상태 정보(423)를 표시할 수 있다. 예를 들어, 프로세서(120)는 사용자 입력(예: 제 1 방향으로의 스와이프)에 기반하여 도 4f와 같이, 이미지 개선 기능의 설정 화면(425)을 디스플레이(160)를 통해 표시할 수 있다. 프로세서(120)는 pro 버튼에 대응하는 선택 입력을 감지한 경우, 이미지 개선 기능을 수동으로 전환할 수 있다. 이 경우, 디스플레이(160)(뷰 파인더)는 이미지 개선 기능의 수동 설정 상태 정보(427), 밝기 조절 메뉴(429), 대비 설정 메뉴(431) 및 색상 설정 메뉴(433)를 표시할 수 있다. 예컨대, 디스플레이(160)(뷰 파인더)는 밝기 조절 메뉴(429)에 대응하는 선택 입력을 감지한 경우, 도 4g와 같이, 밝기 조절 바(435)를 이미지의 적어도 일부에 표시할 수 있다. 예를 들어, 프로세서(120)는 카메라(180)를 통해 이미지의 구도 규칙에 부합되는 이미지를 획득한 경우, 도 4i와 같이, 구도 규칙의 충족 정보(441)를 표시하도록 디스플레이(160)를 제어할 수 있다. 프로세서(120)는 촬영 버튼(413)의 입력이 감지된 경우, 현재 구도의 이미지를 캡쳐(촬영)할 수 있다. 예컨대, 프로세서(120)는 추후 이미지 처리를 위해 카메라(180)가 구동되는 동안 백그라운드(background)에서 기준 시간(예: 5초) 간격의 전체 해상도를 갖는 기준 프레임 수(예: 15fps)의 이미지를 저장할 수 있다. 프로세서(120)는 도 4j와 같이, 백그라운드에서 저장된 이미지들 중 캡쳐 이미지에 대응하는 기준 개수(예: 5개)의 이미지(451)를 디스플레이(160)를 통해 표시할 수 있다. 프로세서(120)는 디스플레이(160)에 표시된 기준 개수의 이미지 중 사용자 입력에 기반하여 선택된 이미지를 캡쳐 이미지로 저장할 수 있다. 예컨대, 기준 개수의 이미지는 백그라운드에서 저장된 이미지들의 선명도, 흔들림, 색상 또는 밝기 중 적어도 하나를 비교하여 선택될 수 있다. 예를 들어, 프로세서(120)는 이미지의 구도가 구도 규칙에 부합되지 않은 상태에서 촬영 버튼(413)의 입력이 감지된 경우, 현재 구도의 이미지를 캡쳐(촬영)할 수 있다. 예컨대, 이미지의 구도 규칙에 부합되는 이미지는 구도 규칙에 의한 이상적인 이미지 구도에 매칭되는 구도를 포함하는 이미지를 포함할 수 있다. 구도의 매칭은 구도 규칙에 의한 이상적인 이미지 구도와 이미지의 구도 사이의 거리가 기준 거리 이하인 상태를 포함할 수 있다.
[61]
본 개시의 실시 예에 따르면, 전자 장치는 이미지에 포함된 적어도 하나의 객체를 이용하여 기하학적 구도 규칙과 이미지 사이의 거리를 측정할 수 있다. 예를 들어, 프로세서(120)는 도 13c와 같이, 관심 영역에 대응하는 영역 A(area A)이외에 위치한 객체 i 및 객체 j와 황금 비율의 초점과의 거리를 검출할 수 있다. 이때, 프로세서(120)는 이미지에 대한 관심 영역의 객체의 기여도(contribution) 나머지 다른 객체보다 높다고 판단하여 관심 영역의 객체에 상대적으로 높은 가중치를 적용할 수 있다. 예컨대, 프로세서(120)는 도 13c에서, 영역 A의 관심 영역 객체가 다른 객체(객체 i 및 객체 j)와의 거리에 비교하여 밀도(dense)가 높기 때문에 황금 비율을 이미지의 구조를 개선하기 위한 구도 비율로 선택할 수 있다.
[62]
본 개시의 실시 예에 따르면, 전자 장치는 기하학적 구도 규칙에 기반하여 카메라 및/또는 피사체를 제어하는 가이드 정보를 제공함으로써, 사진 촬영 기술이 미흡한 사용자가 고품질의 구도 규칙에 대응하는 이미지를 캡쳐할 수 있다.
[63]
도 5는 본 개시의 실시 예에 따른 전자 장치에서 이미지를 편집하기 위한 흐름도이다. 도 6은 본 개시의 일 실시 예에 따른 이미지를 편집하기 위한 화면이다. 이하 설명에서 전자 장치는 도 1의 전자 장치(101) 또는 전자 장치(101)의 적어도 일부(예: 프로세서(120))를 포함할 수 있다.
[64]
도 5를 참조하면, 전자 장치는 동작 501에서, 메모리(130)에 저장된 이미지들 중 편집하기 위한 이미지를 선택할 수 있다. 예를 들어, 프로세서(120)는 도 6의 (a)와 같이, 메모리(130)에 저장된 이미지들의 목록(601)을 표시하도록 디스플레이(160)를 제어할 수 있다. 프로세서(120)는 이미지 목록(601)에서 사용자 입력이 감지된 적어도 하나의 이미지(603)를 선택된 이미지로 인식할 수 있다. 디스플레이(160)는 도 6의 (b)와 같이, 선택된 이미지(611)를 표시할 수 있다. 예컨대, 이미지 목록(601)은 각 이미지의 섬네일을 표시할 수 있다.
[65]
전자 장치는 동작 503에서, 이미지의 전처리를 통해 이미지에 포함된 적어도 하나의 객체의 정보를 획득할 수 있다. 예를 들어, 디스플레이(160)는 도 6의 (b)와 같이, 이미지(611)의 적어도 일부에 이미지 편집과 관련된 버튼(613)을 표시할 수 있다. 프로세서(120)는 이미지 편집과 관련된 버튼(613)의 선택 입력을 감지한 경우, 해당 이미지의 전처리를 수행할 수 있다. 이 경우, 프로세서(120)는 원본 이미지를 복사하여 원본 이미지와 별도의 편집을 위한 이미지를 생성할 수 있다. 이미지의 전처리를 통해 획득할 수 있는 객체의 정보는 이미지에 대한 객체 검출, 객체 인식, 객체 깊이 검출 및 관심 영역 검출을 통해 획득한 이미지에 포함된 객체의 종류, 위치, 크기, 깊이, 관심 영역, 랜드마크 및 중요 객체 정보 중 적어도 하나를 획득할 수 있다. 예컨데, 중요 객체는 사용자에 의해 기 정의된 특정 객체 또는 이미지 내에서 초점이 설정된 객체를 포함할 수 있다.
[66]
전자 장치는 동작 505에서, 이미지에서 잘린 객체가 검출되는지 확인할 수 있다. 예를 들어, 프로세서(120)는 이미지에 인식된 랜드 마크나 중요 객체 중 일부가 잘린 객체가 존재하는지 확인할 수 있다.
[67]
전자 장치는 동작 507에서, 이미지 내에서 잘린 객체를 검출한 경우(예: 동작 605의 '예'), 잘린 객체의 잘린 부분을 복원하여 객체를 완성할 수 있다. 예를 들어, 프로세서(120)는 도 6의 (b)와 같이, 중요 객체(예: '피사의 사탑')의 일부가 잘린 경우, 메모리(130)(예: 도 2의 이미지 저장 모듈(270))에서 중요 객체를 포함하는 다른 이미지를 검색한다. 프로세서(120)는 다른 이미지에서 획득한 중요 객체의 정보를 이용하여 중요 객체의 잘린 부분을 복원할 수 있다.
[68]
전자 장치는 동작 509에서, 메모리(130)에 저장된 각각의 기하적 구도 규칙과 이미지의 구도 사이의 거리에 기반하여 이미지를 대응하는 구도 규칙을 결정할 수 있다. 예를 들어, 프로세서(120)는 이미지의 구도와 기하적 구도 규칙의 초점(focus point)와 주요 객체에 의한 강조점 사이의 거리가 최소인 기하학적 구도 규칙을 이미지를 편집하기 위한 구도 규칙으로 선택할 수 있다. 주요 객체는 이미지 내에서 초점이 설정된 객체, 관심 영역의 객체 또는 랜드마크 중 적어도 하나를 포함할 수 있다.
[69]
전자 장치는 동작 511에서, 구도 규칙에 기반하여 이미지를 갱신할 수 있다. 예를 들어, 프로세서(120)는 이미지의 구도와 기하적 구도 규칙에 따른 이상적인 이미지의 구도 사이의 거리가 최소인 기하학적 구도 규칙에 기반하여 이미지에 포함된 적어도 하나의 객체의 위치를 변경할 수 있다. 프로세서(120)는 객체의 위치 변경으로 인해 이미지 내에서 빈 공간이 발생하는 경우, GAN을 이용하여 빈 공간을 채울 수 있다.
[70]
전자 장치는 동작 513에서, 구도 규칙에 기반하여 갱신된 이미지를 저장할 수 있다. 예를 들어, 디스플레이(160)는 도 6의 (c)와 같이, 이미지 편집과 관련된 버튼(613)의 입력을 감지하여 이미지를 전처리하는 시점부터 이미지 편집 중임을 나타내는 메시지(621)를 표시할 수 있다. 디스플레이(160)는 도 6의 (d)와 같이, 이미지 편집이 완료된 경우, 편집 완료 메시지를 표시할 수 있다. 프로세서(120)는 편집 완료 메시지에 대한 선택 입력을 감지한 경우, 도 6의 (e)와 같이, 잘린 객체가 복원되고 전체적인 구도가 갱신된 이미지를 구도 규칙과 함께 디스플레이(160)를 통해 표시할 수 있다. 디스플레이(160)는 도 6의 (f)와 같이, 기준 시간(예: 1초)이 경과하면 구도 규칙과 관련된 정보의 표시를 제거할 수 있다.
[71]
본 개시의 실시 예에 따르면, 전자 장치는 잘린 객체를 복원하는 동작(동작 507)과 구도 규칙에 기반하여 이미지를 갱신하는 동작(동작 509 내지 511)을 병렬적으로 수행할 수 있다.
[72]
도 7은 본 개시의 다른 실시 예에 따른 이미지를 편집하기 위한 화면이다. 이하 설명에서 전자 장치는 도 1의 전자 장치(101) 또는 전자 장치(101)의 적어도 일부(예: 프로세서(120))를 포함할 수 있다.
[73]
전자 장치는 도 7의 (a)와 같이, 메모리(130)에 저장된 이미지들의 목록(701)을 출력할 수 있다. 예를 들어, 전자 장치는 갤러리 어플리케이션이 실행되는 경우, 갤러리 어플리케이션에 포함된 이미지들의 목록(701)을 디스플레이(160)에 표시할 수 있다. 예컨대, 이미지 목록(701)은 각 이미지의 섬네일을 표시할 수 있다.
[74]
전자 장치는 도 7의 (a)에서 적어도 하나의 이미지(703)의 선택 입력을 감지한 경우, 도 7의 (b)와 같이, 선택 입력에 대응하는 이미지(711)를 디스플레이(160)를 통해 출력할 수 있다. 디스플레이(160)는 도 7의 (b)와 같이, 이미지(711)의 적어도 일부에 중첩되게 이미지 편집을 위한 버튼(713)을 표시할 수 있다.
[75]
전자 장치는 이미지 편집을 위한 버튼(713)의 입력을 감지한 경우, 이미지 편집을 수행할 수 있다. 이 경우, 전자 장치는 도 7의 (c)와 같이, 이미지 편집 중임을 나타내는 메시지(721)를 디스플레이(160)를 통해 표시할 수 있다. 예를 들어, 전자 장치는 이미지 편집을 위한 버튼(713)의 입력을 감지한 경우, 원본 이미지를 복사하여 편집을 위한 별도의 이미지를 생성할 수 있다. 전자 장치는 이미지의 전처리를 통해 이미지에 포함된 주요 객체(예: 초점이 설정된 객체)를 검출할 수 있다. 전자 장치는 주요 객체(예: 도 7의 (b)의 오토바이)에 적합한 구도 규칙을 결정하여 이미지의 구도를 갱신할 수 있다. 전자 장치는 주요 객체가 불완전하거나, 주요 객체와 다른 불완전한 중요 객체(예: 도 7의 (b)의 '피사의 사탑')가 검출되는 경우, 불완전한 중요 객체를 복원할 수 있다. 예컨대, 불완전한 객체는 이미지 내에서 객체의 일부분이 잘린 객체를 나타낼 수 있다. 객체의 복원은 이미지 내에서 일부분이 잘린 객체의 잘린 부분을 복원하여 완전한 객체를 표시하는 일련의 과정을 포함할 수 있다.
[76]
전자 장치는 도 7의 (d)와 같이, 이미지 편집이 완료된 경우, 편집 완료 메시지를 디스플레이(160)의 적어도 일부에 표시할 수 있다. 예를 들어, 전자 장치는 편집 완료 메시지에 대한 선택 입력을 감지한 경우, 도 7의 (e)와 같이, 잘린 중요 객체가 복원되고 전체적인 구도가 갱신된 이미지를 구도 규칙(예: 황금 비율)과 함께 디스플레이(160)를 통해 출력할 수 있다. 디스플레이(160)는 도 7의 (f)와 같이, 기준 시간(예: 1초)이 경과하면 구도 규칙과 관련된 정보의 표시를 제거하고, 편집된 이미지를 표시할 수 있다. 예컨대, 전자 장치는 황금 비율에 기반하여 주요 객체인 '오토바이'가 중심 위치에 위치하도록 이미지를 편집할 수 있다.
[77]
전자 장치는 이미지의 밝기, 대비, 색상 및 스타일을 갱신할 수 있다. 예를 들어, 전자 장치는 도 7의 (g)와 같이, 이미지의 밝기, 대비, 색상 및 스타일에 따른 다수 개의 후보 목록을 제공할 수 있다. 전자 장치는 후보 목록 중 사용자 입력에 기반하여 선택된 후보 목록에 기반하여 이미지의 밝기, 대비, 색상 및 스타일 중 적어도 하나를 갱신하여 저장할 수 있다.
[78]
도 8은 본 개시의 실시 예에 따른 전자 장치에서 잘린 객체를 복원하기 위한 흐름도이다. 이하 설명은 도 5의 동작 507에서, 잘린 객체의 잘린 부분을 생성하는 동작을 포함할 수 있다. 이하 설명에서 전자 장치는 도 1의 전자 장치(101) 또는 전자 장치(101)의 적어도 일부(예: 프로세서(120))를 포함할 수 있다.
[79]
도 8을 참조하면, 전자 장치는 동작 801에서, 이미지 내에서 잘린 객체가 존재하는 경우(예: 도 5의 동작 505의 '예'), 메모리(130)에 저장된 적어도 하나의 다른 이미지에서 잘린 객체와 유사한 객체를 검색할 수 있다. 예를 들어, 프로세서(120)는 이미지에 포함된 주요 객체(예: 랜드마크, 중요 객체, 관심 영역의 객체)의 일부가 잘린 경우, 이미지 저장 모듈(270)에 저장된 적어도 하나의 다른 이미지에서 주요 객체와 유사한 객체를 검색할 수 있다.
[80]
전자 장치는 동작 803에서, 메모리(130)에 대한 검색을 통해, 잘린 객체와 유사한 객체가 검출되었는지 확인할 수 있다. 예를 들어, 프로세서(120)는 잘린 객체와 유사한 객체가 검출되지 않는 경우, 잘린 객체의 복원이 제한되는 것으로 판단할 수 있다. 프로세서(120)는 잘린 객체의 복원을 중단할 수 있다. 다른 예를 들어, 프로세서(120)는 잘린 객체와 유사한 객체가 존재하지 않는 경우, 외부 장치(예: 다른 전자 장치 또는 서버)로 잘린 객체와 유사한 객체의 검색을 확장할 수 있다.
[81]
전자 장치는 동작 805에서, 잘린 객체와 유사한 객체를 검출한 경우, 유사한 객체를 이용하여 잘린 객체의 잘린 부분을 복원할 수 있다. 예를 들어, 프로세서(120)는 잘린 객체와 유사한 객체에 기반한 GAN을 사용하여 잘린 객체의 확장을 시도할 수 있다. 잘린 객체의 확장은 잘린 객체의 잘린 부분을 새롭게 생성하는 일련의 동작을 나타낼 수 있다.
[82]
도 9는 본 개시의 실시 예에 따른 전자 장치에서 이미지를 보완하기 위한 흐름도이다. 이하 설명은 도 5의 동작 511에서, 구도 규칙에 기반하여 이미지를 갱신하는 동작을 포함할 수 있다. 이하 설명에서 전자 장치는 도 1의 전자 장치(101) 또는 전자 장치(101)의 적어도 일부(예: 프로세서(120))를 포함할 수 있다.
[83]
도 9를 참조하면, 전자 장치는 동작 901에서, 이미지의 주요 객체에 적합한 구도 규칙을 결정한 경우(예: 도 5의 동작 509), 구도 규칙에 기반하여 이미지에 포함된 객체의 위치를 변경할 수 있다. 예를 들어, 프로세서(120)는 이미지에 주요 객체를 추출하여 구도 규칙에 대응하는 위치로 주요 객체의 위치를 변경할 수 있다. 다른 예를 들어, 프로세서(120)는 주요 객체의 위치가 구도 규칙에 대응하도록 프레임 내에서 이미지의 위치를 변경할 수 있다.
[84]
전자 장치는 동작 903에서, 객체의 위치 변경에 기반하여 이미지 내에 빈 공간(hole)이 발생하는지 확인할 수 있다.
[85]
전자 장치는 동작 905에서, 객체의 위치 변경으로 이미지 내에 빈 공간이 발생한 경우, 이미지와 유사한 다른 이미지를 이용하여 이미지 내에 발생한 빈 공간을 보완할 수 있다. 예를 들어, 프로세서(120)는 이미지 캡쳐(촬영) 시, 이미지 캡쳐 시점을 기준으로 기준 시간 동안 촬영된 유사한 이미지를 저장할 수 있다. 프로세서(120)는 메모리(130)에 저장된 빈 공간이 발생한 이미지와 유사한 시점에 촬영된 다른 이미지와 GAN을 사용하여 이미지의 빈 공간을 채울 수 있다.
[86]
도 10a 내지 도 10c는 본 개시의 실시 예에 따른 이미지에서 객체를 검출 및 인식하기 위한 구성이다.
[87]
전자 장치는 도 10a와 같이, 이미지에 대한 CNN(convolution neural network)를 이용하여 이미지의 특징 맵(feature MAP)을 추출할 수 있다. 전자 장치는 이미지의 특징 맵에 기반한 RPN(region proposal network)을 사용하여 이미지에 포함된 객체를 검출할 수 있다. 예컨대, RPN은 이미지의 특징 맵을 입력으로 사용하여 각각의 객관적인 점수(objectiveness score)를 포함하는 직사각형의 객체 제안(object proposal)의 집합을 출력할 수 있다.
[88]
전자 장치는 RPN을 사용하는 경우, 도 10b와 같이, 이미지의 특징 맵의 슬라이딩 윈도우(sliding window)에서 일정한 크기를 캡쳐하여 영역 제안(region proposal)을 생성할 수 있다. 특징 맵을 이용하여 생성된 영역 제안은 박스 회귀 레이어(reg-layer, box-regression layer)와 박스 분류 레이어(cls layer, box-classification layer)와 같이 완전히 연결된 레이어(fully connected layer)로 공급된다. 전자 장치는 각각의 슬라이딩 윈도우의 위치에서, 다수의 영역 제안을 동시에 추측할 수 있다. 예컨대, 각각의 슬라이딩 윈도우의 위치에 대한 최대 제안(proposal)의 수를 K로 표시하는 경우, 박스 회귀 레이어는 K 박스(k box)의 좌표(coordinate)를 인코딩하여 4K를 출력하고, 박스 분류 레이어는 각 제안(proposal)에 대해 확률을 추정하거나, 객체가 아닌 2K 점수를 출력할 수 있다
[89]
전자 장치는 RPN을 사용하여 이미지에서 검출한 적어도 하나의 객체를 고속 RCNN(fast region CNN)을 이용하여 인식할 수 있다.
[90]
고속 RCNN은 도 10c와 같이, 특징 맵과 RPN에 의해 검출한 객체 제한(object proposal)의 세트를 입력받는다. 관심 영역 풀링 레이어(RoI Polling layer)는 특징 맵에서 각각의 객체 제안을 위한 고정 길이의 특징 벡터(feature vector)를 추출한다. 각각의 특징 벡터는 완전히 연결된 레이어의 시퀀스로 공급된다. 예컨대, 완전히 연결된 레이어는 두 개의 출력 레이어로 분기될 수 있다. 두 개의 출력 레이어는 K 개체 클래스에 대한 소프트맥스(softmax) 확률 예상치를 생성하는 레이어와 K 객체 클래스의 각각에 대해 4 개의 실제 값(real valued)을 출력하는 레이어를 포함할 수 있다.
[91]
도 11은 본 개시의 실시 예에 따른 이미지에서 객체의 깊이를 검출하기 위한 구성이다.
[92]
전자 장치는 이미지에서 객체의 깊이를 검출하기 위해, 이미지의 그레이스케일 깊이 맵을 생성할 수 있다. 예를 들어, 프로세서(120)는 도 11의 (a)와 같은 이미지에 대해, 도 11의 (b)와 같은 그레이스케일 깊이 맵을 생성할 수 있다. 예컨대, 그레이스케일 깊이 맵은, 모션을 이용한 깊이 인식, 스테레오 카메라를 이용한 깊이 인식, 적외선(IR, infrared) 카메라를 이용한 깊이 인식, 구조 광(structure light)을 이용한 깊이 인식 및 인공 지능을 이용한 깊이 인식 중 적어도 하나에 기반하여 생성될 수 있다.
[93]
이미지에서 검출된 객체의 깊이는 각 객체의 경계 박스(bounding box) 안의 도미넌트 픽셀(dominant pixel)의 평균으로 추정될 수 있다. 예를 들어, 전자 장치는 도 11의 (c)와 같이, 이미지에서 검출한 빌딩의 깊이를 300, 신호등과 카페의 깊이를 15, 오토바이의 깊이를 7 및 쓰레기통의 깊이를 5로 추정할 수 있다. 도미넌트 픽셀은 경계 박스 내의 픽셀을 색상에 기반하여 그룹화하고, 가장 많은 픽셀을 포함하는 그룹의 픽셀을 포함할 수 있다. 예컨대, 전자 장치는 이미지 내에서 대부분의 픽셀을 포함하는 그룹을 배경으로 인식될 수 있다. 그레이스케일 깊이 맵에서 상대적으로 밝은 픽셀은 객체가 카메라(180)에 상대적으로 가깝다는 것을 의미한다.
[94]
도 12는 본 개시의 실시 예에 따른 이미지에서 관심 영역을 검출하기 위한 구성이다.
[95]
관심 영역(ROI, Region of interest)는 이미지 내에서 사용자가 집중할 가능성이 높은 주요 영역을 나타낼 수 있다. 전자 장치는 도 12와 같이, 이미지에서 검출한 객체의 위치, 깊이 및 이름과 같은 정보에 기반한 DNN(depth neural network)을 사용하여 적어도 하나의 관심 영역을 검출할 수 있다.
[96]
도 14는 본 개시의 실시 예에 따른 이미지의 밝기, 색상 및 대비를 개선하기 위한 구성이다.
[97]
도 14를 참조하면, 전자 장치는 GAN(generative adversarial network)을 이용하여 이미지의 밝기, 대비 및 색상 중 적어도 하나를 개선할 수 있다. 예를 들어, 전자 장치는 GAN을 이용하여 원본 이미지(M')와 개선된 이미지(M)를 구분할 수 없을 때까지 밝기와 색상의 구성을 찾아 원본 이미지의 밝기, 대비 및 색상 중 적어도 하나를 개선할 수 있다. 예컨대, 개선된 이미지는 사용자에 의해 이전에 편집된 이미지 또는 전문가에 의해 수정된 이미지를 포함할 수 있다.
[98]
도 15는 본 개시의 실시 예에 따른 이미지에서 스타일을 전환하기 위한 구성이다.
[99]
도 15를 참조하면, 전자 장치는 이미지의 스타일을 전환하기 위해, 이미지와 이미지를 전환하기 위한 스타일을 합성하여 스타일이 전환된 새로운 이미지를 생성할 수 있다. 전자 장치는 하나의 레이어에 있는 사진(photograph)의 콘텐츠 표현(content representation)과 CNN의 여러 레이어에 정의된 그림(painting)의 스타일 표현(style representation)으로부터 화이트 노이즈 이미지(white noise image)의 특징 표현(feature representation)의 거리를 공동으로 최소화할 수 있다. 예를 들어, 전자 장치는 CNN을 통해 기준 사진의 종이 질감을 원본 이미지로 전송하여 종이 질감의 이미지를 새롭게 생성할 수 있다. 예를 들어, 전자 장치는 CNN을 통해 기준 사진의 어두운 색상을 주간에 찍은 원본 이미지로 전송하여 기준 사진과 유사하게 어두운 색상의 이미지를 새롭게 생성할 수 있다. 예컨대, 스타일은 아트웍(artwork)의 스타일로 한정하지 않으며, 특정 테마나 스타일을 갖는 다른 사진이나 그림의 스타일을 포함할 수 있다.
[100]
그리고 본 문서에 개시된 실시 예는 개시된, 기술 내용의 설명 및 이해를 위해 제시된 것이며, 본 개시의 다양한 실시 예의 범위를 한정하는 것은 아니다. 따라서, 본 개시의 다양한 실시 예의 범위는, 본 개시의 다양한 실시 예의 기술적 사상에 근거한 모든 변경 또는 다양한 다른 실시 예를 포함하는 것으로 해석되어야 한다.

청구범위

[청구항 1]
전자 장치에 있어서, 카메라; 디스플레이; 기 정의된 다수 개의 구도 규칙(composition rule)을 저장하는 메모리; 및 상기 카메라를 통해 이미지를 획득하고, 상기 각각의 구도 규칙에 의한 이상적인 이미지의 구도와 상기 이미지의 구도 사이의 거리를 검출하고, 상기 거리에 기반하여 상기 다수 개의 구도 규칙 중 어느 하나를 선택하고, 상기 선택된 구도 규칙에 기반하여 이미지 획득을 위한 가이드 정보를 출력하는 프로세서를 포함하는 전자 장치.
[청구항 2]
제 1항에 있어서, 상기 구도 규칙은, 황금 비율(golden ratio), 3등분 법칙(rule of thirds) 및 길잡이선(leading lines) 중 적어도 하나를 포함하는 전자 장치.
[청구항 3]
제 1항에 있어서, 상기 프로세서는, 상기 이미지의 전처리를 통해, 이미지에 포함된 적어도 하나의 객체, 객체의 위치, 객체의 깊이 및 적어도 하나의 관심 영역 중 적어도 하나를 검출하고, 상기 객체의 위치, 상기 객체의 깊이 및 상기 적어도 하나의 관심 영역 중 적어도 하나에 기반하여 각각의 구도 규칙에 의한 이상적인 이미지의 구도와의 거리를 검출하는 전자 장치.
[청구항 4]
제 3항에 있어서, 상기 프로세서는, 상기 이미지에서 검출한 상기 적어도 하나의 관심 영역의 크기에 기반하여 상기 이미지의 기준 점을 생성하고, 상기 각각의 구도 규칙의 초점(focus point)과 기준 점의 거리를 검출하는 전자 장치.
[청구항 5]
제 1항에 있어서, 상기 프로세서는, 상기 다수 개의 구도 규칙 중 상기 이미지의 구도와의 거리가 최소인 구도 규칙을 선택하는 전자 장치.
[청구항 6]
제 1항에 있어서, 상기 디스플레이는, 뷰 파인더를 포함하는 전자 장치.
[청구항 7]
제 1항에 있어서, 상기 프로세서는, 상기 선택된 구도 규칙에 기반하여 상기 카메라를 제어하거나 피사체의 움직임 제어를 위한 가이드 정보를 상기 디스플레이를 통해 표시하는 전자 장치.
[청구항 8]
제 1항에 있어서, 상기 프로세서는, 상기 선택한 구도 규칙에 의한 이상적인 이미지 구도와 상기 이미지의 구도가 매칭되는 경우, 상기 구도 규칙에 대한 매칭 정보를 상기 디스플레이를 통해 표시하는 전자 장치.
[청구항 9]
제 1항에 있어서, 상기 프로세서는, 캡쳐 이벤트가 발생하는 경우, 상기 캡쳐 이벤트의 발생 시점에 상기 카메라를 통해 획득한 이미지를 캡쳐 및 저장하고, 상기 이미지의 캡쳐 시점의 전/후로 기준 시간 동안 획득된 적어도 하나의 다른 이미지를 추가적으로 저장하는 전자 장치.
[청구항 10]
제 1항에 있어서, 상기 프로세서는, 상기 이미지와 관련된 적어도 하나의 기준 이미지를 이용한 GAN(generative adversarial network)을 통해 상기 디스플레이에 표시된 상기 이미지의 밝기(brightness), 대비(contrast) 및 색상(color) 중 적어도 하나를 갱신하는 전자 장치.
[청구항 11]
전자 장치의 동작 방법에 있어서, 상기 전자 장치와 기능적으로 연결된 카메라를 통해 이미지를 획득하는 동작; 기 정의된 각각의 구도 규칙에 의한 이상적인 이미지의 구도와 상기 이미지의 구도 사이의 거리를 검출하는 동작; 상기 거리에 기반하여 상기 다수 개의 구도 규칙 중 어느 하나를 선택하는 동작; 및 상기 선택된 구도 규칙에 기반하여 이미지 획득을 위한 가이드 정보를 출력하는 동작을 포함하는 방법.
[청구항 12]
제 11항에 있어서, 상기 구도 규칙은, 황금 비율(golden ratio), 3등분 법칙(rule of thirds) 및 길잡이선(leading lines) 중 적어도 하나를 포함하는 방법.
[청구항 13]
제 11항에 있어서, 상기 거리를 검출하는 동작은, 상기 이미지의 전처리를 통해, 이미지에 포함된 적어도 하나의 객체, 객체의 위치, 객체의 깊이 및 적어도 하나의 관심 영역 중 적어도 하나를 검출하는 동작; 및 상기 객체의 위치, 상기 객체의 깊이 및 상기 적어도 하나의 관심 영역 중 적어도 하나에 기반하여 각각의 구도 규칙에 의한 이상적인 이미지의 구도와의 거리를 검출하는 동작을 포함하는 방법.
[청구항 14]
제 13항에 있어서, 상기 거리를 검출하는 동작은, 상기 이미지에서 검출한 상기 적어도 하나의 관심 영역의 크기에 기반하여 상기 이미지의 기준 점을 생성하는 동작; 및 상기 각각의 구도 규칙의 초점(focus point)과 기준 점의 거리를 검출하는 동작을 포함하는 방법.
[청구항 15]
제 11항에 있어서, 상기 구도 규칙을 선택하는 동작은, 상기 기 정의된 다수 개의 구도 규칙 중 상기 이미지의 구도와의 거리가 최소인 구도 규칙을 선택하는 동작을 포함하는 방법.

도면

[도1]

[도2]

[도3]

[도4a]

[도4b]

[도4c]

[도4d]

[도4e]

[도4f]

[도4g]

[도4h]

[도4i]

[도4j]

[도5]

[도6]

[도7]

[도8]

[도9]

[도10a]

[도10b]

[도10c]

[도11]

[도12]

[도13a]

[도13b]

[도13c]

[도14]

[도15]