KR102385188B1 - 외부 전자 장치에서 생성된 정보를 이용하여 이미지 데이터를 처리하는 방법 및 전자 장치 - Google Patents

외부 전자 장치에서 생성된 정보를 이용하여 이미지 데이터를 처리하는 방법 및 전자 장치 Download PDF

Info

Publication number
KR102385188B1
KR102385188B1 KR1020170127582A KR20170127582A KR102385188B1 KR 102385188 B1 KR102385188 B1 KR 102385188B1 KR 1020170127582 A KR1020170127582 A KR 1020170127582A KR 20170127582 A KR20170127582 A KR 20170127582A KR 102385188 B1 KR102385188 B1 KR 102385188B1
Authority
KR
South Korea
Prior art keywords
image
electronic device
external electronic
information
level
Prior art date
Application number
KR1020170127582A
Other languages
English (en)
Other versions
KR20190037842A (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 KR1020170127582A priority Critical patent/KR102385188B1/ko
Priority to PCT/KR2018/011356 priority patent/WO2019066450A1/ko
Priority to US16/652,159 priority patent/US11330197B2/en
Publication of KR20190037842A publication Critical patent/KR20190037842A/ko
Application granted granted Critical
Publication of KR102385188B1 publication Critical patent/KR102385188B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2628Alteration of picture size, shape, position or orientation, e.g. zooming, rotation, rolling, perspective, translation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration by the use of more than one image, e.g. averaging, subtraction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/179Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scene or a shot
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234363Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the spatial resolution, e.g. for clients with a lower screen resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/66Remote control of cameras or camera parts, e.g. by remote control devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/95Computational photography systems, e.g. light-field imaging systems
    • H04N23/951Computational photography systems, e.g. light-field imaging systems by using two or more images to influence resolution, frame rate or aspect ratio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/272Means for inserting a foreground image in a background image, i.e. inlay, outlay
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging

Abstract

본 발명의 다양한 실시예들은, 전자 장치에 있어서, 카메라; 통신 모듈; 디스플레이; 및 프로세서를 포함하고, 상기 프로세서는, 상기 카메라를 이용하여, 외부 객체에 대응하는 로우 이미지를 획득하고, 상기 로우 이미지를 이용하여, 제1 속성을 갖는 제1 레벨 이미지 및 제2 속성을 갖는 제2 레벨 이미지를 생성하고, 상기 제1 레벨 이미지의 적어도 일부가 인코딩된 제1 이미지를, 외부 전자 장치가 상기 제1 이미지에 대한 분석 정보를 생성하도록, 상기 외부 전자 장치로 상기 통신 모듈을 이용하여 전송하고, 상기 분석 정보에 적어도 기반하여, 상기 제2 레벨 이미지의 적어도 일부가 인코딩된 제2 이미지를 생성하고, 상기 외부 전자 장치로 상기 통신 모듈을 이용하여 상기 제2 이미지를 전송하도록 설정될 수 있다.
또한, 본 발명의 다양한 실시예들은 다른 실시예들이 가능할 수 있다.

Description

외부 전자 장치에서 생성된 정보를 이용하여 이미지 데이터를 처리하는 방법 및 전자 장치 {ELECTRONIC DEVICE AND METHOD FOR PROCESSING IMAGE DATA IN THE ELECTRONIC DEVICE}
본 발명의 다양한 실시예들은 카메라를 이용하여 획득한 이미지 데이터를 처리하는 전자 장치 및 전자 장치에서 이미지 데이터를 처리하는 방법에 관한 것이다.
이미지를 처리하는 전자 장치는, 이미지 센서를 통하여 로우(raw) 이미지를 획득할 수 있으며, 획득된 로우 이미지를 내장된 이미지 신호 프로세서(image signal processor: ISP)를 이용하여 처리할 수 있다. 이미지 신호 프로세서는, 화질 개선 알고리즘을 이용하여 수신된 로우 이미지를 처리할 수 있으며, 이에 따라 화질이 개선된 이미지를 제공할 수 있다. 이미지 프로세서는, 화이트 밸런스(white balance) 조절, 컬러 조정(color adjustment)(예: color matrix, color correction, color enhancement), 색 필터 배열 보간(color filter array interpolation), 잡음 감소(noise reduction) 처리 또는 샤프닝(sharpening), 이미지 개선(image enhancement)(예:HDR(high-dynamic-range), face detection 등) 등의 다양한 처리를 수행할 수 있다. 이미지 신호 프로세서로부터 출력된 이미지는, 예를 들어 YUV 포맷을 가질 수도 있다. 이미지 신호 프로세서로부터 출력된 이미지는, 예를 들어 JPEG(joint photographic experts group) 압축되고, 압축된 이미지가 전자 장치에 저장될 수 있다.
다양한 실시예에 따라, 이미지 백업 및 새로운 미디어 컨텐트를 생성하기 위한 이미지 처리 클라우드 시스템에 의한 서비스가 제공되고 있다. 클라우드 서버에 업로드된 이미지는, 영상 매칭 등의 기법과 같이 단말 장치에서 수행되기 어려운 컴퓨터 비전 기반의 기술이 적용될 수 있다. 예를 들어, 머신 러닝 기반의 소프트웨어를 이용하여, 클라우드 서버는 이미지 인식을 수행할 수 있다.
ISP는, 주로 전자 장치의 AP(application processor) 내에 배치된다. AP 내의 ISP 배치로 인하여, 칩(chip) 가격 증가 및 발열 이슈도 지속 되고 있는 상황이다. 아울러, 변화되는 센서 사양 그리고 그에 따른 처리 알고리즘의 수정에 따라, 이미지를 처리하는 전자 장치 또한 새로운 하드웨어 ISP를 장착하여야 하는 문제점이 발생할 수 있다.
본 발명의 다양한 실시예에 따른 이미지를 처리하는 전자 장치는, 외부 전자 장치(예컨대, 클라우드 서버)로부터 전자 장치의 ISP에서는 산출해 내기 어려운 또는 산출하는데 시간이 많이 걸리는 이미지 보정 정보를 획득할 수 있으며, 획득된 보정 정보를 이용하여 이미지를 처리할 수 있다. 이에 따라, 최신의 알고리즘에 따른 이미지 보정이 수행될 수 있다.
본 발명의 다양한 실시예들은, 이미지 센서에서 촬영된 로우 이미지를 처리할 때, 상기 외부 전자 장치에서 분석한 이미지 보정 정보에 기반하여 각 영역별 중요도에 따라 차등적으로 이미지 처리를 수행함으로써 동일 데이터 크기의 정보로 화질 개선을 효과를 얻을 수 있는 전자 장치 및 전자 장치에서 이미지 데이터를 처리하는 방법을 제공할 수 있다.
전술한 과제 또는 다른 과제를 해결하기 위한, 한 실시예에 따른 전자 장치는, 카메라; 통신 모듈; 디스플레이; 및 프로세서를 포함하고, 상기 프로세서는, 상기 카메라를 이용하여, 외부 객체에 대응하는 로우 이미지를 획득하고, 상기 로우 이미지를 이용하여, 제1 속성을 갖는 제1 레벨 이미지 및 제2 속성을 갖는 제2 레벨 이미지를 생성하고, 상기 제1 레벨 이미지의 적어도 일부가 인코딩된 제1 이미지를, 외부 전자 장치가 상기 제1 이미지에 대한 분석 정보를 생성하도록, 상기 외부 전자 장치로 상기 통신 모듈을 이용하여 전송하고, 상기 분석 정보에 적어도 기반하여, 상기 제2 레벨 이미지의 적어도 일부가 인코딩된 제2 이미지를 생성하고, 상기 외부 전자 장치로 상기 통신 모듈을 이용하여 상기 제2 이미지를 전송하도록 설정될 수 있다.
전술한 과제 또는 다른 과제를 해결하기 위한, 한 실시예에 따른 전자 장치는, 통신 모듈; 및 프로세서를 포함하고, 상기 프로세서는, 카메라로부터 획득한 로우 이미지로부터 생성된 제1 속성을 갖는 제1 레벨 이미지를 인코딩한 제1 이미지를 외부 전자 장치로부터 상기 통신 모듈을 이용하여 수신하고, 상기 수신된 제1 이미지를 디코딩하고, 상기 디코딩한 제1 이미지를 분석하여 분석 정보를 생성하고, 상기 생성한 분석 정보를 상기 외부 전자 장치로 전송하고, 상기 분석 정보에 기반하여 상기 로우 이미지로부터 생성된 제2 속성을 갖는 제2 레벨 이미지를 인코딩한 제2 이미지를 상기 외부 전자 장치로부터 수신하고, 상기 디코딩한 제1 이미지와 상기 수신한 제2 이미지를 병합하여 합성된 이미지를 생성하도록 설정될 수 있다.
또한, 다양한 실시예 중 어느 하나에 따른 전자 장치에서 이미지 데이터를 처리하는 방법은, 카메라를 이용하여, 외부 객체에 대응하는 로우 이미지를 획득하는 동작; 상기 로우 이미지를 이용하여, 제1 속성을 갖는 제1 레벨 이미지 및 제2 속성을 갖는 제2 레벨 이미지를 생성하는 동작; 상기 제1 레벨 이미지의 적어도 일부가 인코딩된 제1 이미지를, 외부 전자 장치가 상기 제1 이미지에 대한 분석 정보를 생성하도록, 상기 외부 전자 장치로 전송하는 동작; 상기 분석 정보에 적어도 기반하여, 상기 제2 레벨 이미지의 적어도 일부가 인코딩된 제2 이미지를 생성하는 동작; 및 상기 외부 전자 장치로 상기 제2 이미지를 전송하는 동작;을 포함할 수 있다.
또한, 다양한 실시예 중 어느 하나에 따른 전자 장치에서 이미지 데이터를 처리하는 방법은, 카메라로부터 획득한 로우 이미지로부터 생성된 제1 속성을 갖는 제1 레벨 이미지를 인코딩한 제1 이미지를 외부 전자 장치로부터 수신하는 동작; 상기 수신된 제1 이미지를 디코딩하는 동작; 상기 디코딩한 제1 이미지를 분석하여 분석 정보를 생성하는 동작; 상기 생성한 분석 정보를 상기 외부 전자 장치로 전송하는 동작; 상기 분석 정보에 기반하여 상기 로우 이미지로부터 생성된 제2 속성을 갖는 제2 레벨 이미지를 인코딩한 제2 이미지를 상기 외부 전자 장치로부터 수신하는 동작; 및 상기 디코딩한 제1 이미지와 상기 수신한 제2 이미지를 병합하여 합성된 이미지를 생성하는 동작;을 포함할 수 있다.
다양한 실시예에 따른 전자 장치 및 이미지 데이터를 처리하는 방법은, 이미지 센서에서 촬영된 로우 이미지를 처리할 때, 각 영역별 중요도에 따라 차등적으로 이미지 처리를 수행함으로써 동일 데이터 크기의 정보로 화질 개선을 효과를 얻을 수 있다.
예컨대, 영상을 인코딩하는 전자 장치에서 스케일러블 영상 데이터의 정보 내용(예컨대, 순서, 정보량, 방법)을 결정하기 위해 외부 전자 장치(예컨대, 클라우드 서버)에서 분석된 영상 정보를 이용할 수 있다. 이로 인해 종래 기술 대비 동일 데이터 크기의 확장 레벨 이미지 정보로 화질 향상, 영상 인식률 향상 등의 효과를 얻을 수 있다.
도 1은 본 발명의 일 실시예에 따른 네트워크 구성 예를 나타내는 도면이다.
도 2는 다양한 실시예들에 따른, 카메라 모듈의 블럭도이다.
도 3은 본 발명의 다앙한 실시예에 따른 네트워크 구성 예를 나타내는 도면이다.
도 4는 본 발명의 다양한 실시예에 따른 전자 장치에서 이미지 데이터를 처리하는 절차를 나타내는 흐름도이다.
도 5는 본 발명의 다양한 실시예에 따른 전자 장치 및 외부 전자 장치에서 이미지 데이터를 처리하는 예를 나타내는 네트워크 구성의 예시도이다.
도 6은 본 발명의 다양한 실시예에 따른 기본 레벨 이미지 및 확장 레벨 이미지의 개념을 나타내는 도면이다.
도 7은 본 발명의 다양한 실시예에 따른 기본 레벨 이미지 및 확장 레벨 이미지의 개념을 나타내는 도면이다.
도 8은 본 발명의 다양한 실시예에 따른 기본 레벨 이미지 및 확장 레벨 이미지의 개념을 나타내는 도면이다.
도 9는 본 발명의 다양한 실시예에 따른 기본 레벨 이미지 및 확장 레벨 이미지의 개념을 나타내는 도면이다.
도 10은 본 발명의 다양한 실시예에 따른 기본 레벨 이미지 및 확장 레벨 이미지의 개념을 나타내는 도면이다.
도 11은 본 발명의 다양한 실시예에 따른 전자 장치 및 외부 전자 장치에서 이미지 데이터를 처리하는 예를 나타내는 네트워크 구성의 예시도이다.
도 12는 본 발명의 다양한 실시예에 따른 전자 장치 및 외부 전자 장치에서 이미지 데이터를 처리하는 예를 나타내는 네트워크 구성의 예시도이다.
도 13은 본 발명의 다양한 실시예에 따른 외부 전자 장치에서 이미지 데이터를 분석하는 예를 나타내는 도면이다.
도 14는 본 발명의 다양한 실시예에 따른 외부 전자 장치에서 이미지 데이터를 분석하는 예를 나타내는 도면이다.
도 15는 본 발명의 다양한 실시예에 따른 외부 전자 장치에서 이미지 데이터를 분석하는 예를 나타내는 도면이다.
도 16은 본 발명의 다양한 실시예에 따른 외부 전자 장치에서 이미지 데이터를 분석하는 예를 나타내는 도면이다.
도 17은 본 발명의 다양한 실시예에 따른 이미지 분석을 위한 원본 이미지를 나타내는 도면이다.
도 18은 본 발명의 다양한 실시예에 따른 기본 이미지에 대한 이미지 분석 결과를 나타내는 도면이다.
도 19는 본 발명의 다양한 실시예에 따른 확장 레벨 인코더에 대한 세부 구성을 나타내는 블록도이다.
도 20은 본 발명의 다양한 실시예에 따른 확장 레벨 디코더에 대한 세부 구성을 나타내는 블록도이다.
도 21은 본 발명의 다양한 실시예에 따른 전자 장치 및 외부 전자 장치에서 이미지 데이터를 처리하는 예를 나타내는 네트워크 구성의 예시도이다.
도 22는 본 발명의 다양한 실시예에 따른 전자 장치의 ISP 및 외부 전자 장치의 ISP의 블록도를 도시한다.
도 23은 본 발명의 다양한 실시예에 따른 이미지 분류를 사용하여 AWB(auto white balance)의 정확도의 개선을 설명하기 위한 개념도를 도시한다.
도 24는 본 발명의 다양한 실시예에 따른 전자 장치 및 외부 전자 장치에서 이미지 데이터를 처리하는 절차를 나타내는 신호 흐름도이다.
도 25는 본 발명의 일 실시예에 따른 전자 장치의 세부 구조를 나타내는 블록도이다.
도 26은 본 발명의 일 실시예에 따른 전자 장치 및 외부 전자 장치의 세부 구조를 나타내는 도면이다.
도 27은 본 발명의 일 실시예에 따른 프로그램 모듈의 세부 구조를 나타내는 도면이다.
이하, 본 발명의 다양한 실시예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 실시예의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
본 문서에서, "가진다", "가질 수 있다", "포함한다", 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 문서에서, "A 또는 B", "A 또는/및 B 중 적어도 하나", 또는 "A 또는/및 B 중 하나 또는 그 이상" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B", " A 및 B 중 적어도 하나", 또는 " A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
다양한 실시예에서 사용된 "제1", "제2", "첫째", 또는 "둘째" 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 해당 구성요소들을 한정하지 않는다. 상기 표현들은 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 수 있다. 예를 들면, 제1 사용자 기기와 제2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 바꾸어 명명될 수 있다.
어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 문서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)", "~하는 능력을 가지는(having the capacity to)", "~하도록 설계된(designed to)", "~하도록 변경된(adapted to)", "~하도록 만들어진(made to)", 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성(또는 설정)된"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성(또는 설정)된 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 애플리케이션 프로세서(application processor))를 의미할 수 있다.
본 문서에서 사용된 용어들은 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 다른 실시예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 일반적으로 사용되는 사전에 정의된 용어들은 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미를 가지는 것으로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 발명의 실시예들을 배제하도록 해석될 수 없다.
본 발명의 다양한 실시예들에 따른 전자 장치는, 예를 들면, 전자 장치는 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 화상 전화기, 전자북 리더기(e-book reader), 데스크탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 장치(wearable device)(예: 스마트 안경, 머리 착용형 장치(head-mounted-device(HMD)), 전자 의복, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 전자 문신, 스마트 미러, 또는 스마트 와치(smart watch))중 적어도 하나를 포함할 수 있다.
어떤 실시예들에서, 전자 장치는 스마트 가전 제품(smart home appliance)일 수 있다. 스마트 가전 제품은, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토매이션 컨트롤 패널(home automation control panel), 보안 컨트롤 패널(security control panel), TV 박스(예: 삼성 HomeSync™, 애플TV™, 또는 구글 TV™), 게임 콘솔(예: Xbox™, PlayStation™), 전자 사전, 전자 키, 캠코더(camcorder), 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션(navigation) 장치, GPS 수신기(global positioning system receiver), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 금융 기관의 ATM(automatic teller's machine), 상점의 POS(point of sales), 또는 사물 인터넷 장치(internet of things; IoT)(예: 전구, 각종 센서, 전기 또는 가스 미터기, 스프링클러 장치, 화재경보기, 온도조절기(thermostat), 가로등, 토스터(toaster), 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다.
어떤 실시예에 따르면, 전자 장치는 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터(projector), 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시예에서, 전자 장치는 전술한 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 어떤 실시예에 따른 전자 장치는 플렉서블 전자 장치일 수 있다. 또한, 본 발명의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않으며, 기술 발전에 따른 새로운 전자 장치를 포함할 수 있다.
후술하는 본 발명의 다양한 실시예들은, 이미지 센서에서 촬영된 로우 이미지를 처리할 때, 상기 외부 전자 장치에서 분석한 이미지 보정 정보에 기반하여 각 영역별 중요도에 따라 차등적으로 이미지 처리를 수행함으로써 동일 데이터 크기의 정보로 화질 개선을 효과를 얻을 수 있는 전자 장치 및 전자 장치에서 이미지 데이터를 처리하는 방법을 개시한다.
후술하는 본 발명의 다양한 실시예들에서, 이미지 센서(예컨대, 카메라)로부터 획득한 이미지 데이터를 설명의 편의상 '로우 이미지(raw image)' 또는 로우 이미지 데이터로 지칭하기로 한다. 상기 로우 이미지는 특정 포맷의 데이터를 한정하여 지칭하는 것이 아니라 특정 포맷의 데이터로 이미지 프로세싱을 거치기 전 이미지 센서로부터 획득한 데이터를 의미하는 최광의의 개념을 지칭한다. 예컨대, 다양한 실시예에 따라, 상기 이미지 센서의 종류, 크기 및 형태 등에 따라 상기 로우 이미지는 다양한 포맷을 가질 수 있다. 예컨대, 상기 로우 이미지는 하나의 전체 이미지에 대응하는 프레임을 구성하는 복수의 픽셀(pixel)들에 대한 데이터를 포함할 수 있으며, 각 픽셀에 대한 픽셀 값은 복수의 비트들로 표현되어 처리될 수 있다.
후술하는 본 발명의 다양한 실시예들에서, '기본 이미지(basic image)'는 상기 카메라로부터 획득된 로우 이미지 보다 크기 또는 해상도가 축소된 저해상도 이미지, 상기 로우 이미지의 저주파수 영역 이미지, 또는 상기 로우 이미지의 상위 비트플레인 이미지 정보 중 적어도 하나를 포함하는 이미지를 지칭할 수 있으며, 설명의 편의상 '기본 레벨 이미지', '기본 레이어 이미지', 또는 '제1 레벨 이미지' 등으로 지칭될 수 있다.
후술하는 본 발명의 다양한 실시예들에서, '확장 이미지(extended image)'는 상기 기본 이미지 또는 상기 '제1 레벨 이미지'보다 크기 또는 해상도가 확장된 고해상도 이미지, 상기 제1 레벨 이미지보다 고주파수 정보를 포함하는 이미지, 또는 상기 제1 레벨 이미지보다 하위 비트플레인 정보를 포함하는 이미지 중 적어도 하나를 포함하는 이미지를 지칭할 수 있으며, 설명의 편의상 '확장 레벨 이미지', '확장 레이어 이미지', 또는 '제2 레벨 이미지' 등으로 지칭될 수 있다. 다양한 실시예에 따라, 상기 확장 이미지는 상기 로우 이미지와 동일 또는 유사한 이미지를 지칭할 수도 있다.
다양한 실시예에 따라, 상기 로우 이미지는 상기 기본 이미지 및 상기 확장 이미지를 적어도 포함하여 구성될 수도 있으며, 상기 로우 이미지로부터 다양한 알고리즘에 따라 변한하여 상기 기본 이미지 또는 상기 확장 이미지를 생성할 수도 있다. 다양하 실시예에 따라, 상기 기본 이미지 또는 상기 확장 이미지는 상기 로우 이미지의 적어도 일부를 포함할 수도 있으며, 상기 기본 이미지는 상기 확장 이미지의 적어도 일부를 포함할 수도 있다. 상기 기본 이미지 또는 상기 확장 이미지를 생성하는 다양한 실시예들은 후술하기로 한다.
후술하는 본 발명의 다양한 실시예들에서, '비트플레인'은 적어도 하나의 비트를 포함하여 구성될 수 있으며, 이미지 데이터를 구성하는 특정 픽셀에 대한 픽셀 값을 비트 값으로 표현할 때, 각각의 비트플레인은 상기 비트 값에서의 각 위치(또는 자리)에 대응할 수 있다. 예컨대, 각 픽셀에 대한 픽셀 값을 제0 비트 내지 제9비트(MSB(most significant bit)에 대응)의 10비트 데이터로 표현할 경우, 복수의 픽셀들에 대한 각 픽셀값에서 동일한 비트 위치에 대응하는 데이터에 기반하여 각 비트 위치별 비트플레인들을 구성할 수 있다. 예컨대, 상기 픽셀 값이 10비트 데이터일 경우 복수의 픽셀들로부터 제0 비트에 대응하는 제0 비트플레인, 제1 비트에 대응하는 제1 비트플레인,…, 및 제9 비트에 대응하는 제9 비트플레인을 구성할 수 있다. 이하, 첨부 도면을 참조하여, 다양한 실시예에 따른 전자 장치가 설명된다. 본 문서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
도 1은, 다양한 실시예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블럭도이다. 도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제1 네트워크(198)(예: 근거리 무선 통신)를 통하여 전자 장치(102)와 통신하거나, 또는 제2 네트워크(199)(예: 원거리 무선 통신)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(160), 입력 장치(150), 음향 출력 장치(155), 표시 장치(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 및 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 표시 장치(160) 또는 카메라 모듈(180))가 생략되거나 다른 구성 요소가 추가될 수 있다. 어떤 실시예에서는, 예를 들면, 표시 장치(160)(예: 디스플레이)에 임베디드된 센서 모듈(176)(예: 지문 센서, 홍채 센서, 또는 조도 센서)의 경우와 같이, 일부의 구성요소들이 통합되어 구현될 수 있다.
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(220))를 구동하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)을 제어할 수 있고, 다양한 데이터 처리 및 연산을 수행할 수 있다. 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(162)에 로드하여 처리하고, 결과 데이터를 비휘발성 메모리(164)에 저장할 수 있다. 일실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서), 및 이와는 독립적으로 운영되고, 추가적으로 또는 대체적으로, 메인 프로세서(121)보다 저전력을 사용하거나, 또는 지정된 기능에 특화된 보조 프로세서(123)(예: 그래픽 처리 장치, 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 여기서, 보조 프로세서(123)는 메인 프로세서(121)와 별개로 또는 임베디드되어 운영될 수 있다.
이런 경우, 보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 수행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 표시 장치(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성 요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부 구성 요소로서 구현될 수 있다. 메모리(160)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서모듈(176))에 의해 사용되는 다양한 데이터, 예를 들어, 소프트웨어(예: 프로그램(220)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 저장할 수 있다. 메모리(160)는, 휘발성 메모리(162) 또는 비휘발성 메모리(164)를 포함할 수 있다.
프로그램(220)은 메모리(160)에 저장되는 소프트웨어로서, 예를 들면, 운영 체제(222), 미들 웨어(224) 또는 어플리케이션(226)을 포함할 수 있다.
입력 장치(150)는, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신하기 위한 장치로서, 예를 들면, 마이크, 마우스, 또는 키보드를 포함할 수 있다.
음향 출력 장치(155)는 음향 신호를 전자 장치(101)의 외부로 출력하기 위한 장치로서, 예를 들면, 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용되는 스피커와 전화 수신 전용으로 사용되는 리시버를 포함할 수 있다. 일실시예에 따르면, 리시버는 스피커와 일체 또는 별도로 형성될 수 있다.
표시 장치(160)는 전자 장치(101)의 사용자에게 정보를 시각적으로 제공하기 위한 장치로서, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 표시 장치(160)는 터치 회로(touch circuitry) 또는 터치에 대한 압력의 세기를 측정할 수 있는 압력 센서를 포함할 수 있다.
오디오 모듈(170)은 소리와 전기 신호를 쌍방향으로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(170)은, 입력 장치(150)를 통해 소리를 획득하거나, 음향 출력 장치(155), 또는 전자 장치(101)와 유선 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102)(예: 스피커 또는 헤드폰))를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 내부의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 외부 전자 장치(예: 전자 장치(102))와 유선 또는 무선으로 연결할 수 있는 지정된 프로토콜을 지원할 수 있다. 일실시예에 따르면, 인터페이스(177)는 HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD 카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102))를 물리적으로 연결시킬 수 있는 커넥터, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈, 이미지 센서, 이미지 시그널 프로세서, 또는 플래시를 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리하기 위한 모듈로서, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구성될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성 요소에 전력을 공급하기 위한 장치로서, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108))간의 유선 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되는, 유선 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함하고, 그 중 해당하는 통신 모듈을 이용하여 제1 네트워크(198)(예: 블루투스, WiFi direct 또는 IrDA(infrared data association) 같은 근거리 통신 네트워크) 또는 제2 네트워크(199)(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치와 통신할 수 있다. 상술한 여러 종류의 통신 모듈(190)은 하나의 칩으로 구현되거나 또는 각각 별도의 칩으로 구현될 수 있다.
일실시예에 따르면, 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 사용자 정보를 이용하여 통신 네트워크 내에서 전자 장치(101)를 구별 및 인증할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부로 송신하거나 외부로부터 수신하기 위한 하나 이상의 안테나들을 포함할 수 있다. 일시예에 따르면, 통신 모듈(190)(예: 무선 통신 모듈(192))은 통신 방식에 적합한 안테나를 통하여 신호를 외부 전자 장치로 송신하거나, 외부 전자 장치로부터 수신할 수 있다.
상기 구성요소들 중 일부 구성요소들은 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input/output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))를 통해 서로 연결되어 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일실시예에 따르면, 명령 또는 데이터는 제2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 외부 전자 장치에서 실행될 수 있다. 일실시예에 따르면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 외부 전자 장치에게 요청할 수 있다. 상기 요청을 수신한 외부 전자 장치는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
도 2는 다양한 실시예들에 따른, 카메라 모듈(180)의 블럭도(200)이다. 도 2를 참조하면, 카메라 모듈(180)은 렌즈 어셈블리(210), 플래쉬(220), 이미지 센서(230), 이미지 스태빌라이저(240), 메모리(250)(예: 버퍼 메모리), 또는 이미지 시그널 프로세서(260)를 포함할 수 있다. 렌즈 어셈블리(210)는 이미지 촬영의 대상인 피사체로부터 방출되는 빛을 수집할 수 있다. 렌즈 어셈블리(210)는 하나 또는 그 이상의 렌즈들을 포함할 수 있다. 일실시예에 따르면, 카메라 모듈(180)은 복수의 렌즈 어셈블리(210)들을 포함할 수 있다. 이런 경우, 카메라 모듈(180)은, 예를 들면, 듀얼 카메라, 360도 카메라, 또는 구형 카메라(spherical camera)일 수 있다. 복수의 렌즈 어셈블리(210)들은 동일한 렌즈 속성(예: 화각, 초점 거리, 자동 초점, f 넘버(f number), 또는 광학 줌)을 갖거나, 또는 적어도 하나의 렌즈 어셈블리는 다른 렌즈 렌즈 어셈블리와 적어도 하나의 다른 렌즈 속성을 가질 수 있다. 렌즈 어셈블리(210)는, 예를 들면, 광각 렌즈 또는 망원 렌즈를 포함할 수 있다. 플래쉬(220)는 피사체로부터 방출되는 빛을 강화하기 위하여 사용되는 광원을 방출할 수 있다. 플래쉬(220)는 하나 이상의 발광 다이오드들(예: RGB(red-green-blue) LED, white LED, infrared LED, 또는 ultraviolet LED), 또는 xenon lamp를 포함할 수 있다.
이미지 센서(230)는 피사체로부터 렌즈 어셈블리(210) 를 통해 전달된 빛을 전기적인 신호로 변환함으로써, 상기 피사체에 대응하는 이미지를 획득할 수 있다. 일실시예에 따르면, 이미지 센서(230)는, 예를 들면, RGB 센서, BW(black and white) 센서, IR 센서, 또는 UV 센서와 같이 속성이 다른 이미지 센서들 중 선택된 하나의 이미지 센서, 동일한 속성을 갖는 복수의 이미지 센서들, 또는 다른 속성을 갖는 복수의 이미지 센서들을 포함할 수 있다. 이미지 센서(230)에 포함된 각각의 이미지 센서는, 예를 들면, CCD(charged coupled device) 센서 또는 CMOS(complementary metal oxide semiconductor) 센서로 구현될 수 있다.
이미지 스태빌라이저(240)는 카메라 모듈(180) 또는 이를 포함하는 전자 장치(101)의 움직임에 반응하여, 촬영되는 이미지에 대한 상기 움직임에 의한 부정적인 영향(예: 이미지 흔들림)을 적어도 일부 보상하기 위하여 렌즈 어셈블리(210)에 포함된 적어도 하나의 렌즈 또는 이미지 센서(230)를 특정한 방향으로 움직이거나 제어(예: 리드 아웃(read-out) 타이밍을 조정 등)할 수 있다. 일실시예에 따르면, 이미지 스태빌라이저(240)는, 예를 들면, 광학식 이미지 스태빌라이저로 구현될 수 있으며, 카메라 모듈(180)의 내부 또는 외부에 배치된 자이로 센서(미도시) 또는 가속도 센서(미도시)를 이용하여 상기 움직임을 감지할 수 있다.
메모리(250)는 이미지 센서(230)를 통하여 획득된 이미지의 적어도 일부를 다음 이미지 처리 작업을 위하여 적어도 일시 저장할 수 있다. 예를 들어, 셔터에 따른 이미지 획득이 지연되거나, 또는 복수의 이미지들이 고속으로 획득되는 경우, 획득된 원본 이미지(예: 높은 해상도의 이미지)는 메모리(250)에 저장이 되고, 그에 대응하는 사본 이미지(예: 낮은 해상도의 이미지)는 표시 장치(160)을 통하여 프리뷰될 수 있다. 이후, 지정된 조건이 만족되면(예: 사용자 입력 또는 시스템 명령) 메모리(250)에 저장되었던 원본 이미지의 적어도 일부가, 예를 들면, 이미지 시그널 프로세서(260)에 의해 획득되어 처리될 수 있다. 일실시예에 따르면, 메모리(250)는 메모리(160)의 적어도 일부로, 또는 이와는 독립적으로 운영되는 별도의 메모리로 구성될 수 있다.
이미지 시그널 프로세서(260)는 이미지 센서(230)를 통하여 획득된 이미지 또는 메모리(250)에 저장된 이미지에 대하여 이미지 처리(예: 깊이 지도(depth map) 생성, 3차원 모델링, 파노라마 생성, 특징점 추출, 이미지 합성, 또는 이미지 보상(예: 노이즈 감소, 해상도 조정, 밝기 조정, 블러링(blurring), 샤프닝(sharpening), 또는 소프트닝(softening))을 수행할 수 있다. 추가적으로 또는 대체적으로, 이미지 시그널 프로세서(260)는 카메라 모듈(180)에 포함된 구성 요소들 중 적어도 하나(예: 이미지 센서(230))에 대한 제어(예: 노출 시간 제어, 또는 리드 아웃 타이밍 제어 등)를 수행할 수 있다. 이미지 시그널 프로세서(260)에 의해 처리된 이미지는 추가 처리를 위하여 메모리(250)에 다시 저장 되거나 카메라 모듈(180)의 외부 구성 요소(예: 메모리(160), 표시 장치(160), 전자 장치(102), 전자 장치(104), 또는 서버(108))로 전달될 수 있다. 일실시예에 따르면, 이미지 시그널 프로세서(260)는 프로세서(120)의 적어도 일부로 구성되거나, 프로세서(120)와 독립적으로 운영되는 별도의 프로세서로 구성될 수 있다. 별도의 프로세서로 구성된 경우, 이미지 시그널 프로세서(260)에 의해 처리된 이미지들은 프로세서(120)에 의하여 그대로 또는 추가의 이미지 처리를 거친 후 표시 장치(160)를 통해 표시될 수 있다.
일실시예에 따르면, 전자 장치(101)는 각각 다른 속성 또는 기능을 가진 둘 이상의 카메라 모듈(180)들을 포함할 수 있다. 이런 경우, 예를 들면, 적어도 하나의 카메라 모듈(180)은 광각 카메라 또는 전면 카메라이고, 적어도 하나의 다른 카메라 모듈은 망원 카메라 또는 후면 카메라일 수 있다.
도 3은 다양한 실시예에 따른 전자 장치 및 서버의 블록도를 도시한다.
도 3을 참조하면, 다양한 실시예에 따라서, 전자 장치(101)는, 프로세서(264), 메모리(160), 표시 장치(160), 카메라 모듈(180) 및 통신 모듈(190)을 포함할 수 있다. 서버(180)는, 프로세서(270), 메모리(280) 및 통신 모듈(284)을 포함할 수 있다. 다양한 실시예에 따라서, 카메라 모듈(180)은, 이미지 센서(230), 프로세서(264) 및 메모리(250)를 포함할 수 있다. 프로세서(264)는, 레벨 이미지 처리부(261), ISP(260) 및 인코더(265)를 포함할 수 있으며, 레벨 이미지 처리부(261)는, 기본 이미지 생성부(262) 및 확장 이미지 생성부(263)를 포함할 수 있다. 또한, 레벨 이미지 처리부(261)의 적어도 일부는 ISP(260) 또는 인코더(265)에 포함될 수도 있다.
서버(108)의 프로세서(270)는, 전처리부(271), 엔진(272), 인코더(273) 및 ISP(274)를 포함할 수 있다. 메모리(280)는 데이터베이스 저장소(281), 이미지 저장소(282) 및 로우 이미지 저장소(283)를 포함할 수 있다.
다양한 실시예에 따라서, 이미지 센서(230)는, 피사체에 대한 다양한 형식의 로우 이미지를 획득할 수 있다. 예를 들어, 이미지 센서(230)는, CFA(color filter array) 패턴에 따라 다양한 형식의 로우 이미지를 획득할 수 있다. 이미지 센서(230)가 듀얼 픽셀(dual pixel) 구조(또는, 2 photo diodes: 2PD 구조)를 포함한 경우에는, 이미지 센서(230)는, 하나의 픽셀에 서로 다른 위상차(또는 시차) 정보를 포함하는 로우 이미지를 획득할 수 있다. 또는, 이미지 센서(230)는, 서로 같거나 또는 상이한 특성을 가진 복수의 이미지 센서들을 포함할 수 있으며, 예를 들어 듀얼 센서(예: RGB 센서+RGB 센서, RGB 센서+모노(mono) 센서, 또는 광각(wide) 센서+망원(tele) 센서 등) 또는 복수 개의 센서를 포함하는 어레이 센서(array sensor)를 포함할 수 있다. 이 경우, 이미지 센서(230)는, 하나의 신(scene) 대해 하나 이상의 로우 이미지를 획득할 수 있다. 획득된 로우 이미지는, 그대로 또는 추가적인 처리를 거쳐 메모리(160) 또는 메모리(250)에 저장될 수 있다.
다양한 실시예에 따라서, 이미지 센서(230)는, 다양한 형식(format)의 로우 이미지를 획득할 수 있다. 예를 들어, 로우 이미지가 베이어(bayer) 형식을 가지는 경우에는, 로우 이미지는 픽셀에 대하여 적색(red), 녹색(green), 청색(blue) 중 하나의 색으로 표현될 수 있으며, 8 내지 16비트의 비트-뎁스(bit-depth)로 표현될 수 있다. 예를 들어, 로우 이미지에는 CFA 패턴이 적용될 수 있다. 로우 이미지는, 하나의 픽셀에 대하여 여러 가지 색(예: 적색, 녹색, 청색 중 복수의 색) 정보를 포함하는 레이이(layer) 구조를 가질 수도 있다. 이미지 센서(230)는, 예를 들어, 색 정보(RGB 정보)뿐만 아니라, 위상차 정보 등을 포함하는 로우 이미지를 획득할 수도 있다. 이미지 촬영과 연관된 정보(예: 촬영 시간, 촬영 위치, 조도)의 메타데이터는 로우 이미지와 관련되어 저장될 수 있다.
다양한 실시예에 따라서, 프로세서(264)는, 이미지 센서(230)로부터 수신한 로우 이미지 처리와 관련된 다양한 프로세스를 수행할 수 있다. 프로세서(264)는, 하나의 독립적인 프로세서로 구현될 수 있거나, 또는 다른 프로세서(예: 프로세서(120))에 포함될 수도 있다. 프로세서(264)의 경량 이미지 생성부(262), 로우 이미지 압축부(263), ISP(260) 또는 인코더(265) 중 적어도 하나는 다른 프로세서(예: 프로세서(120))에 포함될 수도 있다. 프로세서(264)는, 카메라 모듈(180)의 내부에 또는 카메라 모듈(180)의 외부(예를 들어, 전자 장치(101) 또는 서버(108))에 있거나, 또는 내외부 모두에 있을 수도 있다. 프로세서(264)가 수행하는 프로세스는, 프로세서(264)에 의하여 단독으로 처리되거나, 또는 복수의 프로세서에 의하여 분산 처리될 수 있다.
다양한 실시예에 따라서, 레벨 이미지 처리부(261)는, 이미지 센서(230)로부터 획득한 로우 이미지로부터 복수의 레벨에 대한 레벨 이미지를 생성할 수 있다. 예를 들어, 기본 이미지 생성부(262)는, 로우 이미지를 이용하여, 로우 이미지의 크기보다 작은 크기를 가지는 기본 이미지를 생성할 수 있다. 로우 이미지의 크기는 상대적으로 클 수 있으므로, 로우 이미지를 저장, 처리 또는 전송하기 이전에, 기본 이미지 생성부(262)가, 로우 이미지의 크기보다 작은 크기를 가지는 기본 이미지를 생성할 수 있다. 예를 들어, 기본 이미지 생성부(262)는, 다운 스케일링(down scaling), 다운 샘플링(down sampling), 압축(compression) 등의 다양한 처리를 수행함으로써, 로우 이미지를 이용한 기본 이미지를 생성할 수 있다. 다운 스케일링은, 예를 들어 로우 이미지의 크기 또는 해상도를 낮추는 처리를 의미할 수 있다. 다운 샘플링은, 예를 들어 샘플링된 복수의 샘플들 중 하나 또는 일부의 샘플만을 선택하여 기본 이미지를 생성하는 것을 의미할 수도 있다. 다양한 실시예에 따라, 상기 기본 이미지는 전술한 바와 같이 상기 카메라로부터 획득된 로우 이미지 보다 크기 또는 해상도가 축소된 저해상도 이미지, 상기 로우 이미지의 저주파수 영역 이미지, 또는 상기 로우 이미지의 상위 비트플레인 이미지 정보 중 적어도 하나를 포함할 수 있다.
확장 이미지 생성부(263)는, 상기 기본 이미지보다 크기 또는 해상도가 확장된 고해상도 이미지, 상기 기본 레벨 이미지보다 고주파수 정보를 포함하는 이미지, 또는 상기 기본 레벨 이미지보다 하위 비트플레인 정보를 포함하는 이미지 중 적어도 하나를 포함하는 확장 이미지를 생성할 수 있다
다양한 이미지 압축 알고리즘을 이용하여 로우 이미지 또는 기본 이미지 또는 확장 이미지를 압축할 수 있으며, 압축 방식에는 제한이 없다.
이미지 시그널 프로세서(260)는, 도 2를 참조하여 설명한 바와 같이, 이미지 센서(230)을 통하여 획득된 이미지 또는 메모리(250)에 저장된 이미지에 대하여 이미지 처리를 수행할 수 있다. 인코더(265)는, 로우 이미지 또는 기본 이미지 또는 확장 이미지를 인코딩하여 인코딩된 이미지를 생성할 수 있다. 인코딩된 이미지는, 예를 들어 JPEG(joint photographic coding experts group) 형식, MPEG(moving picture experts group) 형식, 또는 360도 영상 형식 등의 다양한 형식을 가질 수 있다.
다양한 실시예 따라서, 메모리(250)에는, 로우 이미지, 기본 이미지, 확장 이미지, 압축 이미지, 또는 인코딩된 이미지 중 적어도 하나가 일시적 또는 비일시적으로 저장될 수 있다. 프로세서(120)는, 예를 들어 통신 모듈(190)을 통하여, 로우 이미지, 기본 이미지, 확장 이미지 또는 압축된 이미지 중 적어도 하나를, 서버(108)로 송신할 수 있다.
서버(108)는 통신 모듈(290)을 통하여, 로우 이미지, 기본 이미지, 확장 이미지, 또는 압축된 이미지 중 적어도 하나를 수신할 수 있다. 통신 모듈(290)은, 예를 들어, 통신 모듈(190)과 통신을 수행할 수 있다. 서버(108)는, 전자 장치(101)에 대한 네트워크 관리, 제공 가능한 서비스 및 권한 등과 관련된 서비스 관리, 저장소 관리 등을 수행할 수 있다. 로우 이미지는, 서버(108) 내의 로우 이미지 저장소(283)에 일시적 또는 비일시적으로 저장될 수도 있다.
다양한 실시예 따라서, 전처리부(271)는, 수신된 기본 이미지 또는 확장 이미지를 엔진(272) 또는 ISP(274)로 전달하기 전에 요구되는 처리를 수행할 수 있다. 예를 들어, 통신 모듈(290)을 통하여 압축된 기본 이미지 또는 압축된 확장 이미지가 수신된 경우에는, 전처리부(271)는 압축된 기본 이미지 또는 압축된 확장 이미지를 압축 해제할 수 있으며, 이에 따라 기본 이미지 또는 확장 이미지를 획득할 수 있다. 전처리부(271)는, 각 영역별로 인코딩된 확장 이미지를 통신 모듈(290)을 통하여 수신할 수도 있다. 전처리부(271)는, 압축 해제하여 획득하거나 또는 수신한 확장 이미지에 대하여, 화질 개선 알고리즘 적용, 디모자이크(de-mosaic) 처리, 또는 이미지 형식 변경 중 적어도 하나의 작업을 수행할 수 있다.
다양한 실시예에 따라서, 엔진(272)은, 기본 이미지(또는, 이미지 파일)를 분석하여, 다양한 작업(예: 사물 인식, 속도 벡터 판단, 얼굴 인식, 세그먼테이션(segmentation), 신 파싱(scene parsing), 질감(texture) 인식)을 수행할 수 있다. 엔진(272)은 상술한 다양한 작업을 수행하기 위한 다양한 알고리즘을 이용할 수 있다. 다양한 실시예에 따른 서버(108)는, 상대적으로 높은 연산 능력, 저장 크기, 높은 리소스를 가질 수 있으므로, 고연산을 요구하는 알고리즘을 이용할 수 있으며, 새롭게 개발된 알고리즘을 이용할 수도 있다. 엔진(272)은, 다양한 작업 수행의 결과로, ISP(274)에서 이용할 수 있는 보정 영역 정보(예: 사물 인식 결과, 속도 벡터, 얼굴 인식 결과, 세그먼테이션 결과, 신 카테고리(scene category), 질감에 대한 정보)를 생성, 저장, 또는 전송할 수 있다. 엔진(272)은, 복수 개의 레이어 형식의 보정 영역 정보를 생성할 수 있다. 엔진(272)이 생성한 보정 영역 정보에 대하여서는 후술하는 설명에서 더욱 상세하게 설명하도록 한다.
다양한 실시예에 따라서, ISP(274)는, 전자 장치(101)로부터 수신된 확장 이미지에 대한 다양한 이미지 처리를 수행할 수 있다. 또 다른 실시예에서는, 전자 장치(101)가 보정 영역 정보를 수신하여, 이를 이용하여 이미지 처리를 수행할 수도 있다. 이 경우, 전자 장치(101)는, ISP(260)에서 제공되는 영상 처리와, 보정 영역 정보를 활용한 영상 처리를 복합적으로 수행할 수도 있다. 전자 장치(101)는, 이미지 처리가 수행된 이미지를 메모리(160)에 일시적 또는 비일시적으로 저장하거나, 또는 표시 장치(160)에 표시할 수도 있다. 한편, 상술한 바와 같이, ISP(274)가 이미지 처리를 수행하는 경우에, 보정 영역 정보에 기반한 이미지 처리를 수행할 수도 있다. ISP(274)는 데이터베이스 저장소(281)로부터 보정 영역 정보에 대응하는 추가 정보(예: 특징 벡터(feature vector))를 수신하여, 이미지 처리에 이용할 수도 있다. 데이터베이스 저장소(281)에는, 이미지 카테고리 등에 대응되는 다양한 특징 정보를 저장할 수 있다. 처리된 이미지는, 전자 장치(101)로 다시 송신되거나, 또는 서버(108) 내의 이미지 저장소(282)에 저장될 수도 있다. ISP(274)는, 화이트 밸런스(white balance) 조절, 컬러 조정(color adjustment)(예: color matrix, color correction, color enhancement), 색 필터 배열 보간(color filter array interpolation), 잡음 감소(noise reduction) 처리 또는 샤프닝(sharpening), 이미지 개선(image enhancement)(예:HDR(high-dynamic-range), face detection 등) 등의 다양한 처리를, 보정 영역 정보에 적어도 기반하여 수행할 수 있다. ISP(274)는, 아울러, original color mapping, detail re-generation, text reconstruction, image inpainting 등의 고연산량을 요구하는 이미지 처리를 수행할 수도 있다.
다양한 실시예에 따라서, 프로세서(270)는, 전처리부(271)에 의하여 처리된 확장 이미지에 대하여 제2 이미지 처리를 수행할 수 있으며, 전자 장치의 ISP(260)에서 처리하는 제1 이미지 처리와 상이한 제2 이미지 처리를 수행할 수 있다.
제2 이미지 처리는, 예를 들어 엔진(272)으로부터의 보정 영역 정보에 적어도 기반하여 수행될 수 있는 이미지 처리일 수 있으며, 제1 이미지 처리에 비하여 고연산량 또는 높은 리소스를 요구하는 이미지 처리일 수 있다. 예를 들어, 제2 이미지 처리된 이미지는, 제1 이미지 처리된 이미지에 비하여, 더욱 높은 수준의 보정 처리된 이미지일 수 있다.
본 발명의 다양한 실시예에서 각 기능부 또는 모듈이라 함은, 본 발명의 다양한 실시예의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 각 기능부 또는 모듈은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 실시예의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.
본 발명의 다양한 실시예 중 어느 하나에 따른 전자 장치는, 카메라; 통신 모듈; 디스플레이; 및 프로세서를 포함하고, 상기 프로세서는, 상기 카메라를 이용하여, 외부 객체에 대응하는 로우 이미지를 획득하고, 상기 로우 이미지를 이용하여, 제1 속성을 갖는 제1 레벨 이미지 및 제2 속성을 갖는 제2 레벨 이미지를 생성하고, 상기 제1 레벨 이미지의 적어도 일부가 인코딩된 제1 이미지를, 외부 전자 장치가 상기 제1 이미지에 대한 분석 정보를 생성하도록, 상기 외부 전자 장치로 상기 통신 모듈을 이용하여 전송하고, 상기 분석 정보에 적어도 기반하여, 상기 제2 레벨 이미지의 적어도 일부가 인코딩된 제2 이미지를 생성하고, 상기 외부 전자 장치로 상기 통신 모듈을 이용하여 상기 제2 이미지를 전송하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따라, 상기 프로세서는, 상기 로우 이미지를 제1 이미지 처리 방식을 이용하여 제1 처리된 데이터를 생성하고, 상기 외부 전자 장치로부터, 적어도 상기 제2 이미지를 제2 이미지 처리 방식을 이용하여 생성된 제2 처리된 데이터를 수신하고, 및 상기 제1 처리된 데이터와 상기 제2 처리된 데이터를 합성하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따라, 상기 프로세서는 상기 분석 정보에 적어도 기반하여, 상기 제2 레벨 이미지의 적어도 다른 일부를 인코딩한 제3 이미지를 더 생성하고, 상기 분석 정보에 적어도 기반하여, 상기 제2 이미지 및 상기 제3 이미지 간의 우선 순위를 판단하고, 상기 우선 순위에 적어도 기반하여 결정된 순서에 따라 상기 제2 이미지 및 상기 제3 이미지를 상기 외부 전자 장치로 전송하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따라, 상기 제1 레벨 이미지는, 상기 카메라로부터 획득된 로우 이미지 보다 크기 또는 해상도가 축소된 저해상도 이미지, 상기 로우 이미지의 저주파수 영역 이미지, 또는 상기 로우 이미지의 상위 비트플레인 이미지 정보 중 적어도 하나를 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 제2 레벨 이미지는, 상기 제1 레벨 이미지보다 크기 또는 해상도가 확장된 고해상도 이미지, 상기 제1 레벨 이미지보다 고주파수 정보를 포함하는 이미지, 또는 상기 제1 레벨 이미지보다 하위 비트플레인 정보를 포함하는 이미지 중 적어도 하나를 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 분석 정보는, 상기 제1 이미지에 포함된 복수의 영역들에 대해 각 영역의 속성 정보를 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 분석 정보는, 상기 복수의 영역들에 대한 분석 결과에 따라 각 영역별 중요도에 기반한 압축률을 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 프로세서는, 상기 외부 전자 장치로부터, 적어도 상기 제2 이미지를 제2 이미지 처리 방식을 이용하여 생성된 복수의 제2 처리된 데이터들을 우선 순위에 따라 순차적으로 수신하고, 및 상기 제2 처리된 데이터를 수신된 순서에 따라 상기 제1 처리된 데이터와 합성하도록 설정될 수 있다.
본 발명의 다양한 실시예 중 어느 하나에 따른 전자 장치는, 통신 모듈; 및 프로세서를 포함하고, 상기 프로세서는, 카메라로부터 획득한 로우 이미지로부터 생성된 제1 속성을 갖는 제1 레벨 이미지를 인코딩한 제1 이미지를 외부 전자 장치로부터 상기 통신 모듈을 이용하여 수신하고, 상기 수신된 제1 이미지를 디코딩하고, 상기 디코딩한 제1 이미지를 분석하여 분석 정보를 생성하고, 상기 생성한 분석 정보를 상기 외부 전자 장치로 전송하고, 상기 분석 정보에 기반하여 상기 로우 이미지로부터 생성된 제2 속성을 갖는 제2 레벨 이미지를 인코딩한 제2 이미지를 상기 외부 전자 장치로부터 수신하고, 상기 디코딩한 제1 이미지와 상기 수신한 제2 이미지를 병합하여 합성된 이미지를 생성하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따라, 상기 분석 정보는, 상기 복수의 영역들에 대한 분석 결과에 따라 각 영역별 중요도에 기반한 압축률을 포함할 수 있다.
도 4는 본 발명의 다양한 실시예에 따른 전자 장치에서 이미지 데이터를 처리하는 절차를 나타내는 흐름도이다. 도 4를 참조하면, 동작 401에서, 전자 장치(101)(예: 프로세서(120), 또는 프로세서(264))는, 카메라(180)를 이용하여, 외부 객체에 대응하는 로우 이미지 획득할 수 있다.
동작 403에서, 상기 전자 장치는 상기 로우 이미지를 이용하여, 제1 속성을 갖는 제1 레벨 이미지(기본 이미지) 및 제2 속성을 갖는 제2 레벨 이미지(확장 이미지)를 생성할 수 있다.
동작 405에서, 상기 전자 장치는, 상기 제1 레벨 이미지를 인코딩한 제1 이미지를 외부 전자 장치(예컨대, 도 1의 서버(108) 또는 도 3의 서버(108)로 전송할 수 있다.
동작 407에서, 상기 전자 장치는, 상기 외부 전자 장치로부터 수신된 상기 제1 이미지에 대한 이미지 분석 정보에 적어도 기반하여, 상기 제2 레벨 이미지를 인코딩한 제2 이미지를 생성할 수 있다.
동작 409에서, 상기 전자 장치는, 상기 외부 전자 장치로 상기 생성된 제2 이미지를 전송할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 도 4에 도시된 동작들 중 적어도 하나의 동작이 생략되어 실행될 수도 있으며, 적어도 하나의 다른 동작이 상기 동작들 사이에 추가될 수도 있다. 또한, 상기 도 4의 동작들은 도시된 순서로 처리될 수도 있으며, 적어도 하나의 동작에 대한 실행 순서가 다른 동작의 실행 순서와 변경되어 처리될 수도 있다. 또한, 상기 도 4에 도시된 동작들은 전자 장치 내에서 수행될 수도 있으며, 서버에서 수행될 수도 있다. 또한, 상기 도 4에 도시된 동작들 중 적어도 하나의 동작들은 전자 장치 내에서 수행되고, 나머지 동작들은 서버에서 수행되도록 구현될 수도 있다.
본 발명의 다양한 실시예 중 어느 하나에 따른 전자 장치의 동작 방법은, 이미지 데이터를 처리하는 방법에 있어서, 카메라를 이용하여, 외부 객체에 대응하는 로우 이미지를 획득하는 동작; 상기 로우 이미지를 이용하여, 제1 속성을 갖는 제1 레벨 이미지 및 제2 속성을 갖는 제2 레벨 이미지를 생성하는 동작; 상기 제1 레벨 이미지의 적어도 일부가 인코딩된 제1 이미지를, 외부 전자 장치가 상기 제1 이미지에 대한 분석 정보를 생성하도록, 상기 외부 전자 장치로 전송하는 동작; 상기 분석 정보에 적어도 기반하여, 상기 제2 레벨 이미지의 적어도 일부가 인코딩된 제2 이미지를 생성하는 동작; 및 상기 외부 전자 장치로 상기 제2 이미지를 전송하는 동작;을 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 방법은, 상기 로우 이미지를 제1 이미지 처리 방식을 이용하여 제1 처리된 데이터를 생성하는 동작; 상기 외부 전자 장치로부터, 적어도 상기 제2 이미지를 제2 이미지 처리 방식을 이용하여 생성된 제2 처리된 데이터를 수신하는 동작; 및 상기 제1 처리된 데이터와 상기 제2 이미지 처리된 데이터를 합성하는 동작을 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 방법은, 상기 분석 정보에 적어도 기반하여, 상기 제2 레벨 이미지의 적어도 다른 일부를 인코딩한 제3 이미지를 생성하는 동작; 상기 분석 정보에 적어도 기반하여, 상기 제2 이미지 및 상기 제3 이미지 간의 우선 순위를 판단하는 동작; 및 상기 우선 순위에 적어도 기반하여 결정된 순서에 따라 상기 제2 이미지 및 상기 제3 이미지를 상기 외부 전자 장치로 전송하는 동작을 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 제1 레벨 이미지는, 상기 카메라로부터 획득된 로우 이미지 보다 크기 또는 해상도가 축소된 저해상도 이미지, 상기 로우 이미지의 저주파수 영역 이미지, 또는 상기 로우 이미지의 상위 비트플레인 이미지 정보 중 적어도 하나를 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 제2 레벨 이미지는, 상기 제1 레벨 이미지보다 크기 또는 해상도가 확장된 고해상도 이미지, 상기 제1 레벨 이미지보다 고주파수 정보를 포함하는 이미지, 또는 상기 제1 레벨 이미지보다 하위 비트플레인 정보를 포함하는 이미지 중 적어도 하나를 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 분석 정보는, 상기 제1 이미지에 포함된 복수의 영역들에 대해 각 영역의 속성 정보를 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 분석 정보는, 상기 복수의 영역들에 대한 분석 결과에 따라 각 영역별 중요도에 기반한 압축률을 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 방법은, 적어도 상기 제2 이미지를 제2 이미지 처리 방식을 이용하여 생성된 복수의 제2 처리된 데이터들을 우선 순위에 따라 순차적으로 수신하는 동작; 및 상기 제2 처리된 데이터를 수신된 순서에 따라 상기 제1 처리된 데이터와 합성하는 동작을 포함할 수 있다.
본 발명의 다양한 실시예 중 어느 하나에 따른 전자 장치의 동작 방법은, 이미지 데이터를 처리하는 방법에 있어서, 카메라로부터 획득한 로우 이미지로부터 생성된 제1 속성을 갖는 제1 레벨 이미지를 인코딩한 제1 이미지를 외부 전자 장치로부터 수신하는 동작; 상기 수신된 제1 이미지를 디코딩하는 동작; 상기 디코딩한 제1 이미지를 분석하여 분석 정보를 생성하는 동작; 상기 생성한 분석 정보를 상기 외부 전자 장치로 전송하는 동작; 상기 분석 정보에 기반하여 상기 로우 이미지로부터 생성된 제2 속성을 갖는 제2 레벨 이미지를 인코딩한 제2 이미지를 상기 외부 전자 장치로부터 수신하는 동작; 및 상기 디코딩한 제1 이미지와 상기 수신한 제2 이미지를 병합하여 합성된 이미지를 생성하는 동작;을 포함할 수 있다.
본 발명의 다양한 실시예에 따라, 상기 분석 정보는, 상기 복수의 영역들에 대한 분석 결과에 따라 각 영역별 중요도에 기반한 압축률을 포함할 수 있다.
이하, 도 5 내지 도 24를 참조하여, 본 발명의 다양한 실시예에 따라 전자 장치에서 로우 이미지로부터 생성된 기본 이미지 및 확장 이미지를 이용하여 이미지를 처리하는 다양한 실시예들을 상세히 설명하기로 한다.
도 5는 본 발명의 다양한 실시예에 따른 전자 장치 및 외부 전자 장치에서 이미지 데이터를 처리하는 예를 나타내는 네트워크 구성의 예시도이다. 도 5를 참조하면, 전자 장치(510)(예컨대, 도 1의 전자 장치(101) 또는 도 3의 전자 장치(101))는 기본 레벨 인코더(511) 또는 확장 레벨 인코더(512)를 포함할 수 있다.
상기 기본 레벨 인코더(511)는 카메라로부터 획득한 로우 이미지(513)로부터 기본 레벨 이미지 또는 기본 이미지를 지정된 방식에 따라 인코딩할 수 있다. 상기 확장 레벨 인코더(512)는 카메라로부터 획득한 확장 이미지를 인코딩하거나 기본 레벨 인코더(511)로부터 출력된 인코딩된 기본 이미지를 기반으로 상기 확장 이미지를 인코딩할 수 있다.
상기 기본 레벨 인코더(511)에서 인코딩된 기본 이미지는 외부 전자 장치(520)(예컨대, 도 1의 서버(108) 또는 도 3의 서버(108))로 전송할 수 있다. 상기 외부 전자 장치(520)의 기본 레벨 디코더(521)는 상기 전자 장치(510)로부터 수신된 인코딩된 기본 이미지를 디코딩하여 기본 이미지(525)를 복원할 수 있다.
상기 외부 전자 장치(520)의 이미지 분석 모듈(522)은 상기 복원된 기본 이미지를 이미지 분석할 수 있다. 예컨대, 상기 기본 이미지를 이미지 분석하여 중요도에 따라 복수의 영역들로 구분할 수 있다. 다양한 실시예에 따라, 상기 이미지 분석 모듈(522)은 상기 기본 이미지를 인식하여 특정 사물에 분류 및 세그먼테이션(segmentation)을 통해 예컨대 후술하는 도 18과 같은 영상 분석 결과를 출력할 수 있다. 상기 이미지 분석 결과를 기반으로 미리 선정된 사물(Object) 또는 표면 질감(Texture) 표현 등의 정보를 영역을 구분하고 각 영역 별로 차별적인 추가 데이터를 요청할 수 있다. 다양한 실시예에 따라, 각 영역에 대한 추가 데이터량을 결정할 때, "human visual system"을 기반으로 분석하여 시선이 집중되는 부분, 압축 시 발생하는 에러에 민감하지 않을 부분 등을 구분하여 각 영역에 추가 정보 요청을 위한 영상 특성맵을 영상 분석 결과에 추가 레이어로 구성할 수 있다. 다양한 실시예에 따라, 상기 영상 특성 맵 영역 단위는 블록, 영역, 픽셀 단위로 구분될 수 있으며, 복수의 레이어(layer)로 구성하여 전송될 수도 있다.
다양한 실시예에 따라, 상기 구분된 복수의 영역들은 상기 중요도에 따라 전송 순서가 결정될 수 있으며, 상기 중요도에 따라 압축률이 결정될 수도 있다. 이에 대한 상세한 설명은 후술하기로 한다.
상기 이미지 분석 모듈(522)에서 분석한 이미지 분석 정보(530)(또는 영상 특성 맵 정보)는 전자 장치(510)로 전송될 수 있다. 상기 전자 장치(510)의 확장 레벨 인코더(512)에서는 상기 외부 전자 장치(520)로부터 전송된 이미지 분석 정보를 이용하여 확장 이미지를 인코딩할 수 있다. 예컨대, 다양한 실시예에 따라, 상기 확장 이미지를 상기 이미지 분석 정보에 따라 복수의 영역들로 구분하고, 각 영역들에 대해 설정된 인코딩 순서 또는 인코딩 압축률 등을 기반으로 상기 구분된 각 영역별로 인코딩을 수행할 수 있다. 다양한 실시예에 따라, 상기 확장 레벨 인코더(512)는 상기 기본 레벨 인코더(511)의 인코딩 결과와 상기 이미지 분석 모듈(522)로부터 전달되는 이미지 분석 정보(예컨대, 영상 특성 맵)를 사용하여 상기 확장 이미지를 적어도 하나의 레이어(layer)로 구성하고 인코딩할 수 있다. 다양한 실시예에 따라, 상기 확장 이미지의 레이어 구성 수, 각 레이어의 구성 데이터 또는 정보의 양은 수신된 영상 특성맵 구성 또는 통신망 환경을 고려하여 결정될 수 있다. 다양한 실시예에 따라, 상기 확장 레벨 인코더(512)에서 전달되는 확장 이미지는 스케일러빌러티(scalability)의 구현 방법에 따라 다음과 같이 구현될 수 있다.
1. 해상도 스케일러빌러티 : 원본 영상 해상도 증가를 위한 추가 데이터
2. 주파수 스케일러빌러티 : 원본 영상 복원을 위한 고 주파수(high frequency)
3. 비트플레인 스케일러빌러티 : 원본 영상 복원을 위한 하위 비트플레인(bit-Plane)
상기 확장 레벨 인코더(512)에서 인코딩된 확장 이미지는 상기 외부 전자 장치(520)로 전송될 수 있다. 다양한 실시예에 따라, 상기 인코딩된 확장 이미지는 상기 구분된 영역별로 순차적으로 상기 외부 전자 장치(520)로 전송될 수 있다. 다양한 실시예에 따라, 상기 인코딩된 확장 이미지에서 구분된 복수의 영역들 중 중요도가 높은 순으로 전송되도록 할 수 있다. 이에 대한, 상세한 실시예들은 후술하기로 한다.
상기 외부 전자 장치(520)의 확장 레벨 디코더(523)는 상기 전자 장치(510)로부터 수신된 인코딩된 확장 이미지를 디코딩할 수 있다. 다양한 실시예에 따라, 상기 확장 레벨 디코더(523)는 상기 수신된 인코딩된 확장 이미지를 디코딩할 때, 상기 기본 레벨 디코더(521)를 통해 디코딩된 기본 이미지를 이용하여 디코딩할 수 있다.
상기 외부 전자 장치(520)의 이미지 병합 모듈(524)은 상기 이미지 상기 확장 레벨 디코더(523)를 통해 디코딩된 확장 이미지(526)와 상기 기본 레벨 디코더(521)를 통해 디코딩된 기본 이미지를 병합하여 합성된 이미지(527)를 생성할 수 있다.
이하, 도 6 내지 도 10을 참조하여, 본 발명의 다양한 실시예에 따라 로우 이미지로부터 기본 이미지(또는 기본 레벨 이미지) 및 확장 이미지(또는 확장 레벨 이미지)를 생성하는 다양한 실시예들을 설명한다.
도 6은 본 발명의 다양한 실시예에 따른 기본 레벨 이미지 및 확장 레벨 이미지의 개념을 나타내는 도면이다. 도 6을 참조하면, 전자 장치(101)(예: 프로세서 120)는, 로우 이미지의 해상도를 감소시키는 다운-샘플링 또는 다운 스케일링을 이용하여 기본 이미지를 생성할 수 있다. 전자 장치(101)는, 기본 이미지를 로우 이미지의 해상도 크기로 업-스케일링할 수 있으며, 업-스케일링된 이미지와 원본의 로우 이미지 차이를 확장 이미지로서 생성할 수 있다. 도 7에서와 같이, 로우 이미지의 전송 시간(transfer time)은 기본 이미지의 전송 시간보다 클 수 있다.
도 8을 참조하면, 전자 장치(101)(예: 프로세서(120))는 원본 로우 이미지를 DCT 또는 웨이블릿(wavelet) 등을 사용하여 변환 후 저주파 성분을 기본 이미지로서 생성할 수 있다. 전자 장치(101)는 고주파 성분을 확장 이미지로서 생성할 수 있다. 기본 이미지의 전송 시간은, 예를 들어 확장 이미지의 전송 시간보다 길수도 있으나, 이는 단순히 예시적인 것이다.
도 9를 참조하면, 전자 장치(101)(예: 프로세서(120))는 원본 로우 이미지(예컨대, 전체 이미지)예의 전체 비트 깊이(bit depth) 중 상위 비트 또는 MSB (most significant bit)에 대응하는 비트플레인(예컨대, 7번 내지 4번 비트플레인)을 이용하여 기본 이미지를 생성할 수 있다. 전자 장치는 원본 로우 이미지의 전체 비트 뎁스(bit depth) 중 하위 비트 또는 LSB(least significant bit)에 대응하는 비트플레인(예컨대, 0번 내지 3번 비트플레인)을 이용하여 확장 이미지를 생성할 수 있다. 도 10을 참조하면, 기본 이미지의 전송 시간은, 예를 들어 확장 이미지의 전송 시간보다 짧을 수도 있으나, 이는 단순히 예시적인 것이다.
도 11은 본 발명의 다양한 실시예에 따른 전자 장치 및 외부 전자 장치에서 이미지 데이터를 처리하는 예를 나타내는 네트워크 구성의 예시도이다. 도 11을 참조하면, 전자 장치(1110)(예컨대, 도 1의 전자 장치(101) 또는 도 3의 전자 장치(101))는 레벨 이미지 생성 모듈(1112), 기본 레벨 인코더(1114) 또는 확장 레벨 인코더(1116)를 포함할 수 있다.
상기 레벨 이미지 생성 모듈(1112)은 로우 이미지(1111)로부터 기본 이미지(1113)(또는 기본 레벨 이미지)를 생성할 수 있다. 상기 레벨 이미지 생성 모듈(1112)에서 기본 이미지(1113)를 생성하는 방법은 예컨대, 도 6 내지 도 10에 도시된 바와 같이 다양한 방법으로 생성할 수 있다.
상기 기본 레벨 인코더(1114)는 상기 레벨 이미지 생성 모듈(1112)을 통해 생성된 기본 이미지(1113)를 지정된 방식에 따라 인코딩할 수 있다. 예컨대, 상기 기본 레벨 인코더(1114)는 런-렝스 인코딩 방식 등에 의해 인코딩할 수 있다.
상기 확장 레벨 인코더(1116)는 상기 기본 레벨 인코더(1114)로부터 출력된 인코딩된 기본 이미지를 기반으로 확장 이미지를 인코딩할 수 있다.
상기 기본 레벨 인코더(1114)에서 인코딩된 기본 이미지는 외부 전자 장치(1120)(예컨대, 도 1의 서버(108) 또는 도 3의 서버(108))로 전송할 수 있다. 상기 외부 전자 장치(1120)의 기본 레벨 디코더(1121)는 상기 전자 장치(1110)로부터 수신된 인코딩된 기본 이미지를 디코딩하여 기본 이미지(1122)를 복원할 수 있다.
상기 외부 전자 장치(1120)의 이미지 분석 모듈(1123)은 상기 복원된 기본 이미지(1122)를 이미지 분석할 수 있다. 예컨대, 상기 이미지 분석 모듈(1123)은 상기 기본 이미지를 이미지 분석하여 중요도에 따라 복수의 영역들로 구분할 수 있다. 다양한 실시예에 따라, 상기 이미지 분석 모듈(1123)은 상기 기본 이미지를 인식하여 특정 사물에 대한 분류 및 세그먼테이션(segmentation)을 통해 예컨대 후술하는 도 18과 같은 영상 분석 결과를 출력할 수 있다. 상기 이미지 분석 결과를 기반으로 미리 선정된 사물(object) 또는 표면 질감(texture) 표현 등의 정보를 영역을 구분하고 각 영역 별로 차별적인 추가 데이터를 요청할 수 있다. 다양한 실시예에 따라, 각 영역에 대한 추가 데이터량을 결정할 때, "human visual system"을 기반으로 분석하여 시선이 집중되는 부분, 압축 시 발생하는 에러에 민감하지 않을 부분 등을 구분하여 각 영역에 추가 정보 요청을 위한 영상 특성맵을 영상 분석 결과에 추가 레이어로 구성할 수 있다. 다양한 실시예에 따라, 상기 영상 특성 맵 영역 단위는 블록, 영역, 픽셀 단위로 구분될 수 있으며, 복수의 레이어(layer)로 구성하여 전송될 수도 있다.
다양한 실시예에 따라, 상기 구분된 복수의 영역들은 상기 중요도에 따라 전송 순서가 결정될 수 있으며, 상기 중요도에 따라 압축률이 결정될 수도 있다. 이에 대한 상세한 설명은 후술하기로 한다.
상기 이미지 분석 모듈(1123)에서 분석한 이미지 분석 정보(또는 영상 특성 맵 정보)는 전자 장치(1110)로 전송될 수 있다. 상기 전자 장치(1110)의 확장 레벨 인코더(1116)에서는 상기 외부 전자 장치(1120)로부터 전송된 이미지 분석 정보를 이용하여 확장 이미지를 인코딩할 수 있다. 예컨대, 다양한 실시예에 따라, 상기 확장 이미지를 상기 이미지 분석 정보에 따라 복수의 영역들로 구분하고, 각 영역들에 대해 설정된 인코딩 순서 또는 인코딩 압축률 등을 기반으로 상기 구분된 각 영역별로 인코딩을 수행할 수 있다. 다양한 실시예에 따라, 상기 확장 레벨 인코더(1116)는 상기 기본 레벨 인코더(1114)의 인코딩 결과와 상기 이미지 분석 모듈(1123)로부터 전달되는 이미지 분석 정보(예컨대, 영상 특성 맵)를 사용하여 상기 확장 이미지를 적어도 하나의 레이어(layer)로 구성하고 인코딩할 수 있다. 다양한 실시예에 따라, 상기 확장 이미지의 레이어 구성 수, 각 레이어의 구성 데이터 또는 정보의 양은 수신된 영상 특성맵 구성 또는 통신망 환경을 고려하여 결정될 수 있다. 다양한 실시예에 따라, 상기 확장 레벨 인코더(1116)에서 전달되는 확장 이미지는 해상도 스케일러빌러티(scalability)에 따라 도 11에 도시된 바와 같이 구현될 수 있다.
상기 확장 레벨 인코더(1116)에서 인코딩된 확장 이미지는 상기 외부 전자 장치(1120)로 전송될 수 있다. 다양한 실시예에 따라, 상기 인코딩된 확장 이미지는 상기 구분된 영역별로 순차적으로 상기 외부 전자 장치(1120)로 전송될 수 있다. 다양한 실시예에 따라, 상기 인코딩된 확장 이미지에서 구분된 복수의 영역들 중 중요도가 높은 순으로 전송되도록 할 수 있다. 이에 대한, 상세한 실시예들은 후술하기로 한다.
상기 외부 전자 장치(1120)의 확장 레벨 디코더(1124)는 상기 전자 장치(1110)로부터 수신된 인코딩된 확장 이미지를 디코딩할 수 있다. 다양한 실시예에 따라, 상기 확장 레벨 디코더(1124)는 상기 수신된 인코딩된 확장 이미지를 디코딩할 때, 상기 기본 레벨 디코더(1121)를 통해 디코딩된 기본 이미지(1122)를 이용하여 디코딩할 수 있다.
도 12는 본 발명의 다양한 실시예에 따른 전자 장치 및 외부 전자 장치에서 이미지 데이터를 처리하는 예를 나타내는 네트워크 구성의 예시도이다. 도 12를 참조하면, 전자 장치(1210)(예컨대, 도 1의 전자 장치(101) 또는 도 3의 전자 장치(101))는 레벨 이미지 생성 모듈(1212), 기본 레벨 인코더(1215) 또는 확장 레벨 인코더(1216)를 포함할 수 있다.
상기 레벨 이미지 생성 모듈(1212)은 로우 이미지(1211)로부터 기본 이미지(1213)(또는 기본 레벨 이미지)를 생성할 수 있다. 상기 레벨 이미지 생성 모듈(1212)에서 기본 이미지(1213)를 생성하는 방법은 예컨대, 도 6 내지 도 10에 도시된 바와 같이 다양한 방법으로 생성할 수 있다.
상기 기본 레벨 인코더(1215)는 상기 레벨 이미지 생성 모듈(1212)을 통해 생성된 기본 이미지(1213)를 지정된 방식에 따라 인코딩할 수 있다. 예컨대, 상기 기본 레벨 인코더(1215)는 런-렝스 인코딩 방식 등에 의해 인코딩할 수 있다.
상기 확장 레벨 인코더(1216)는 상기 레이어 이미지 생성 모듈(1212)로부터 출력된 확장 이미지를 인코딩할 수 있다.
상기 기본 레벨 인코더(1215)에서 인코딩된 기본 이미지는 외부 전자 장치(1220)(예컨대, 도 1의 서버(108) 또는 도 3의 서버(108))로 전송할 수 있다. 상기 외부 전자 장치(1220)의 기본 레벨 디코더(1221)는 상기 전자 장치(1210)로부터 수신된 인코딩된 기본 이미지를 디코딩하여 기본 이미지(1222)를 복원할 수 있다.
상기 외부 전자 장치(1220)의 이미지 분석 모듈(1223)은 상기 복원된 기본 이미지(1222)를 이미지 분석할 수 있다. 예컨대, 상기 이미지 분석 모듈(1223)은 상기 기본 이미지를 이미지 분석하여 중요도에 따라 복수의 영역들로 구분할 수 있다. 다양한 실시예에 따라, 상기 이미지 분석 모듈(1223)은 상기 기본 이미지를 인식하여 특정 사물에 대한 분류 및 세그먼테이션(segmentation)을 통해 예컨대 후술하는 도 18과 같은 영상 분석 결과를 출력할 수 있다. 상기 이미지 분석 결과를 기반으로 미리 선정된 사물(object) 또는 표면 질감(texture) 표현 등의 정보를 영역을 구분하고 각 영역 별로 차별적인 추가 데이터를 요청할 수 있다. 다양한 실시예에 따라, 각 영역에 대한 추가 데이터량을 결정할 때, "human visual system"을 기반으로 분석하여 시선이 집중되는 부분, 압축 시 발생하는 에러에 민감하지 않을 부분 등을 구분하여 각 영역에 추가 정보 요청을 위한 영상 특성맵을 영상 분석 결과에 추가 레이어로 구성할 수 있다. 다양한 실시예에 따라, 상기 영상 특성 맵 영역 단위는 블록, 영역, 픽셀 단위로 구분될 수 있으며, 복수의 레이어(layer)로 구성하여 전송될 수도 있다.
다양한 실시예에 따라, 상기 구분된 복수의 영역들은 상기 중요도에 따라 전송 순서가 결정될 수 있으며, 상기 중요도에 따라 압축률이 결정될 수도 있다. 이에 대한 상세한 설명은 후술하기로 한다.
상기 이미지 분석 모듈(1223)에서 분석한 이미지 분석 정보(또는 영상 특성 맵 정보)는 전자 장치(1210)로 전송될 수 있다. 상기 전자 장치(1210)의 확장 레벨 인코더(1216)에서는 상기 외부 전자 장치(1220)로부터 전송된 이미지 분석 정보를 이용하여 확장 이미지를 인코딩할 수 있다. 예컨대, 다양한 실시예에 따라, 상기 확장 이미지를 상기 이미지 분석 정보에 따라 복수의 영역들로 구분하고, 각 영역들에 대해 설정된 인코딩 순서 또는 인코딩 압축률 등을 기반으로 상기 구분된 각 영역별로 인코딩을 수행할 수 있다. 다양한 실시예에 따라, 상기 확장 이미지의 레이어 구성 수, 각 레이어의 구성 데이터 또는 정보의 양은 수신된 영상 특성맵 구성 또는 통신망 환경을 고려하여 결정될 수 있다. 다양한 실시예에 따라, 상기 확장 레벨 인코더(1216)에서 전달되는 확장 이미지는 비트플레인 스케일러빌러티(scalability)에 따라 도 12에 도시된 바와 같이 구현될 수 있다.
상기 확장 레벨 인코더(1216)에서 인코딩된 확장 이미지는 상기 외부 전자 장치(1220)로 전송될 수 있다. 다양한 실시예에 따라, 상기 인코딩된 확장 이미지는 상기 구분된 영역별로 순차적으로 상기 외부 전자 장치(1220)로 전송될 수 있다. 다양한 실시예에 따라, 상기 인코딩된 확장 이미지에서 구분된 복수의 영역들 중 중요도가 높은 순으로 전송되도록 할 수 있다. 이에 대한, 상세한 실시예들은 후술하기로 한다.
상기 외부 전자 장치(1220)의 확장 레벨 디코더(1224)는 상기 전자 장치(1210)로부터 수신된 인코딩된 확장 이미지를 디코딩할 수 있다.
상기 외부 전자 장치(1220)의 이미지 병합 모듈(1226)은 상기 확장 레벨 디코더(1224)를 통해 디코딩된 확장 이미지(1225)와 상기 기본 레벨 디코더(1221)를 통해 디코딩된 기본 이미지(1222)를 병합하여 합성된 이미지(1227)를 생성할 수 있다.
도 13은 본 발명의 다양한 실시예에 따른 외부 전자 장치에서 이미지 데이터를 분석하는 예를 나타내는 도면이다. 예를 들어 도 13에서와 같은 기본 이미지(1310)를, 예를 들어, 외부 전자 장치(예: 외부 전자 장치(520))(예컨대, 도 11의 외부 전자 장치(1120) 또는 도 12의 외부 전자 장치(1220))의 통신 인터페이스 또는 통신 모듈을 통하여, 획득할 수 있다. 기본 이미지(1310)는, 전자 장치(101)에서 이미지 센서를 통하여 획득한 로우 이미지가 다운 스케일링 또는 다운 샘플링된 이미지일 수 있다. 외부 전자 장치는, 예를 들어 기본 이미지(1310)를 획득할 수 있다. 외부 전자 장치는 기본 이미지(1300)에 대한 메타데이터(1311)를 추가적으로 수신할 수도 있다. 메타데이터(1311)는, 초점 거리(focal length), 자동 포커싱 영역(auto focus area), 촬영 시 좌우 회전 관련 정보(orientation), 색 좌표(color space), 노출 시간(exposure time), 조리개 관련 정보(Fnumber), 촬영 모드(exposure program)(예: 자동, 조리개 우선, 셔터 우선, 수동 등), "ISO speed ratings" 또는 이미지 촬영 일자(data time original) 등을 포함할 수 있다. 또는, 도시되지는 않았지만, 메타데이터(1311)는, 이미지 촬영 장소 또는 촬영 시점의 조도와 같이 이미지 센서 이외의 센서에서 센싱된 정보를 포함할 수도 있다.
외부 전자 장치는 상기 기본 이미지(1310)에 대하여 오브젝트 세그먼테이션 및 인식을 수행할 수 있다. 오브젝트는, 기본 이미지(1310)에서 세그먼테이션에 의하여 구분되는 영역을 의미할 수 있으며, 이미지 영역으로 명명될 수도 있다. 예를 들어, 외부 전자 장치는 도 13에서와 같은 세그먼테이션 맵(1320)을 획득할 수 있다. 외부 전자 장치는, 기본 이미지(1310)에 대하여 엣지(edge), 블랍(blob) 등의 다양한 특징(feature)에 기초하여 기본 이미지(1310)로부터 오브젝트들(1321, 1322, 1323, 1324)을 구분할 수 있다. 외부 전자 장치는, 오브젝트들(1321, 1322, 1323, 1324) 각각에 대하여 인식 알고리즘을 적용할 수 있으며, 인식 결과를 획득할 수 있다. 예를 들어, 외부 전자 장치는 대량의 데이터베이스를 머신 러닝 또는 딥 러닝에 의하여 적용하여 획득된 인식 알고리즘을 이용하여 오브젝트들(1321, 1322, 1323, 1324)의 인식 결과를 획득할 수 있다. 외부 전자 장치는, 제1 오브젝트(1321)가 하늘(sky)인 인식 결과, 제2 오브젝트(1322)가 풍선들(balloons)인 인식 결과, 제3 오브젝트(1323)가 인간(human)인 인식 결과 및 제4 오브젝트(1324)가 잔디(grass)인 인식 결과를 획득할 수 있다. 외부 전자 장치는, 오브젝트들(1321, 1322, 1323, 1324)의 위치 정보(또는, 픽셀 좌표 정보)와 인식 결과를 포함하는 세그먼테이션 맵(1320)을 획득할 수 있다.
외부 전자 장치는, 기본 이미지(1310)에 대하여 텍스처 세그먼테이션 및 인식을 수행할 수 있다. 외부 전자 장치는, 도 13에서와 같은 텍스처 세그먼테이션 맵(1330)을 획득할 수 있다. 외부 전자 장치는, 예를 들어 사물 인식된 오브젝트들(1321, 1322, 1323, 1324)에 대하여 텍스처 인식을 수행하거나, 또는 오브젝트들(1321, 1322, 1323, 1324) 중 적어도 하나를 다시 부분들로 분할하고, 부분들별로 텍스처 인식 결과를 획득할 수 있다. 텍스처는, 미리 정의된 특정 패턴 또는 질감을 나타내는 성분을 의미할 수 있다. 하나의 오브젝트 내에서도 복수 개의 텍스처가 포함될 수 있다. 텍스처 인식 알고리즘 또한 대량의 데이터베이스에 머신 러닝 또는 딥 러닝을 적용하여 획득될 수 있다. 외부 전자 장치는, 복수 개의 텍스처 오브젝트들(1331 내지 1336)의 위치 정보(또는, 픽셀 좌표 정보) 및 텍스처 인식 결과를 포함하는 텍스처 세그먼테이션 맵(1330)을 획득할 수 있다.
외부 전자 장치는 기본 이미지(1310)의 인식 결과에 대한 신뢰도를 판단할 수 있다. 외부 전자 장치는 사물 인식 결과에 대한 신뢰도 또는 텍스처 인식 결과에 대한 신뢰도 중 적어도 하나를 판단할 수 있다.
외부 전자 장치는 기본 이미지(1310)에 대하여 분류 정보를 판단할 수 있다. 외부 전자 장치는, 예를 들어 도 13에서와 같은 분류 정보(1340)를 획득할 수 있다. 분류 정보(1340)는, 기본 이미지(1310)가 전체적으로 어떠한 내용인지를 나타내는 정보일 수 있다. 외부 전자 장치는, 이미지 분류 알고리즘을 기본 이미지(1310)에 적용하여 분류 정보(1340)를 획득할 수 있다. 외부 전자 장치는, 사물 인식 결과 또는 텍스처 인식 결과 중 적어도 하나를 이용하여 분류 정보(1340)를 획득할 수 있다. 또는, 외부 전자 장치는, 기본 이미지(1310)로부터 직접 분류 정보(1340)를 획득할 수도 있다. 분류 정보(1340)는, 예를 들어 일반적인 녹색 잔디(normal green grass)라는 전체 이미지 인식 결과(scene classification result) 정보를 포함할 수 있다. 분류 정보(1340)는, 오브젝트 정보(예: sky, balloons, grass), 날짜 정보(예: 2016. 8. xx. 2:00), 장소 정보(예: Seoul, Korea), 계절 정보(예: summer), 날씨 정보(sunny), 노출 관련 정보(exposure time xx, ISO xxx) 등을 포함할 수도 있다. 외부 전자 장치는, 인식 알고리즘의 적용 결과와 메타데이터를 이용하여 분류 정보(1340)를 획득할 수도 있다.
외부 전자 장치는 오브젝트 인식, 텍스처 인식, 인식 결과에 대한 신뢰도 또는 분류 정보 중 적어도 하나를 포함하는 보정 영역 정보를 생성할 수 있다. 예를 들어, 도 14에서와 같이, 외부 전자 장치는 복수 개의 층으로 구성된 보정 영역 정보를 생성할 수 있다. 복수 개의 층으로 구성된 보정 영역 정보는, 세그먼테이션 맵(1420), 텍스처 세그먼테이션 맵(1430), 사물 인식에 대한 신뢰도를 나타내는 맵(1450), 테스처 인식에 대한 신뢰도를 나타내는 맵(1460)을 포함할 수 있다. 복수 개의 맵(1420, 1430, 1450, 1460)들 각각의 픽셀의 좌표는 서로 동일할 수 있으며, 로우 이미지의 픽셀에 대응될 수 있다. 이에 따라, 로우 이미지의 하나의 픽셀에 대하여 복수 개의 정보들(예: 오브젝트 속성, 텍스처 속성, 오브젝트 속성의 정확도, 텍스처 속성의 정확도)이 대응될 수 있다. 외부 전자 장치는, 복수 개의 층으로 구성된 보정 영역 정보를 전자 장치(101)로 송신할 수 있다. 전자 장치(101)는, 로우 이미지에 보정 영역 정보를 적용하여 보정을 수행할 수 있다.
예를 들어, 전자 장치(101)(예: 프로세서(120))는 세그먼테이션 맵(1420)의 풍선의 오브젝트의 픽셀 좌표에 대응하는 로우 이미지의 픽셀들에 대하여서, 풍선에 대응하는 효과를 적용할 수 있다. 전자 장치는, 텍스처 세그먼테이션 맵(1430)의 에나멜(enamel)의 텍스처 오브젝트의 픽셀 좌표에 대응하는 로우 이미지의 픽셀들에 대하여서, 에나멜에 대응하는 효과를 적용할 수 있다. 전자 장치는, 사물 인식 신뢰도 또는 텍스처 인식 신뢰도를 고려하여 적용하는 효과의 정도를 조정할 수도 있다. 전자 장치는, 이미지 분류 결과(예: 일반적인 녹색 잔디)에 기초하여, 실외 환경에 대응되는 효과를 로우 이미지 전체에 대하여 적용할 수도 있다. 도 14의 복수 개의 층으로 구성된 형태는 단순히 예시적인 것으로, 보정 영역 정보는 1차원의 텍스트 정보로 구현될 수도 있으며, 보정 영역 정보를 나타내는 데이터 형태에는 제한이 없다. 도 14의 복수 개의 층들 중 일부가 누락될 수도 있으며, 추가적으로 다른 맵이 포함될 수도 있다.
본 발명의 다양한 실시예에서, 외부 전자 장치는, 도 13 및 14를 참조하여 설명한 바에 따라 생성한 보정 영역 정보에 기초하여, 기본 이미지에 대한 픽셀 조정 정보를 획득할 수도 있다. 외부 전자 장치는, 픽셀 조정 정보를, 예를 들어, 외부 전자 장치의 통신 인터페이스 또는 통신 모듈을 통하여, 전자 장치(101)로 송신할 수 있으며, 전자 장치(101)는 단순히 픽셀 조정 정보에 따라 제1 이미지 내의 적어도 하나의 픽셀의 밝기, 명도, 컬러 또는 색온도 중 적어도 하나를 조정함으로써 보정된 이미지를 생성할 수 있다.
도 15는 본 발명의 다양한 실시예에 따른 보정 영역 정보 생성을 설명하기 위한 개념도를 도시한다. 본 발명의 다양한 실시예에 다른 외부 전자 장치(520)(예: 도 1의 서버(108) 또는 도 3의 서버(108))는, 기본 이미지(1501)를 전자 장치(101)로부터, 예를 들어, 외부 전자 장치의 통신 인터페이스 또는 통신 모듈을 통하여, 수신할 수 있다. 외부 전자 장치는 복수 개의 인식 모델(1502, 1511, 1521)을 미리 저장할 수 있으며, 이에 따라 인식 모델들이 서로 문제점을 보완할 수 있으며, 여러 가지 정보가 동시에 획득 가능하다. 외부 전자 장치는, 제1 인식 모델(1502)을 기본 이미지(1501)에 적용할 수 있다. 제1 인식 모델(1502)은 이미지의 분류 정보 또는 ROI(region of interest) 중 적어도 하나를 판단하는 인식 모델일 수 있다. 제1 인식 모델(1502)의 기본 이미지(1501)에 대한 적용 결과에 의하여 복수 개의 분류 정보(1503) 중 "People in the street"의 분류 정보(1504)가 선택될 수 있다. 즉, 기본 이미지(1501) 전체의 분류 정보는, "People in the street"인 것으로 판단될 수 있다. 외부 전자 장치는, 분류 정보(1504)를 기본 이미지(1501)에 레이블링(1507)할 수 있다. 예를 들어, 제1 인식 모델(1502)은, 기본 이미지(1501)의 전체적인 컬러 분포, 컬러 영역이 배치된 상대적인 위치 관계 등을 이용하여 분류 정보(1504)를 선택할 수도 있으며, 이 경우에는 기본 이미지(1501) 내의 특정 오브젝트들에 대하여 인식을 수행하지 않고도 분류 정보(1504)를 획득할 수도 있다. 예를 들어, 제1 인식 모델(1502)은, street의 대표색과 유사한 색상이 화면 전반에 분포되어 있으며, street의 대표색이 분포된 영역의 일부에 상하로 연장되는 people의 대표색과 유사한 색상이 분포된 것을 검출할 수 있으며, 이에 따라 해당 이미지가 people in the street의 분류 정보(1503)를 가지는 것으로 판단할 수도 있다. 상술한 예는 단순히 예시적인 것으로, 다양한 실시예에 따른 제1 인식 모델(1502)은 다양한 분류 정보 획득 알고리즘을 포함할 수도 있다. 다른 실시예에서는, 외부 전자 장치(예: 도 3의 프로세서(270))는 오브젝트 인식 결과 또는 텍스처 인식 결과 중 적어도 하나를 이용하여, 기본 이미지(1501)의 분류 정보를 획득할 수도 있다. 즉, 제1 인식 모델(1502)이 적용되는 순서에는 제한이 없다. 제1 인식 모델(1502)은 다양한 방식의 ROI 검출 방법에 기초하여 기본 이미지(1501) 내로부터 ROI(1505)를 검출할 수 있다.
본 발명의 다양한 실시예에서, 외부 전자 장치(예: 도 3의 프로세서(270))는 세그먼테이션 결과(1505)에서 ROI(1510)를 크롭(1506)할 수 있으며, 크롭(1506)된 ROI(1510)에 제2 인식 모델(1511)을 적용할 수 있다. 제2 인식 모델(1511)은 사물 인식 또는 ROI 중 적어도 하나를 판단할 수 있으며, ROI(1510) 내의 오브젝트를 인식할 수 있다. 이에 따라, 제2 인식 모델(1511)에 의하여 오브젝트 속성(1513)이 복수 개의 오브젝트 속성(1512) 중 "old woman"인 것이 확인될 수 있다. 제2 인식 모델(1511)은 복수 개의 오브젝트 속성(1512)들 각각에 대한 인식 알고리즘을 포함할 수 있다. 외부 전자 장치는, ROI(1510)에 대하여 오브젝트 속성(1513)을 레이블링(1516)할 수 있다. 예를 들어, 외부 전자 장치는 ROI(1510)에 대하여 "old woman"의 오브젝트 속성(1513)을 레이블링할 수 있다.
본 발명의 다양한 실시예에서, 제2 인식 모델(1511)은, ROI(1510)로부터 텍스처 세그먼테이션 결과(1514)를 판단할 수 있으며, 텍스처 세그먼테이션 결과(1514)로부터 또 다른 ROI(1520)를 판단할 수 있다. 외부 전자 장치는 또 다른 ROI(1520)를 크롭(1515)할 수 있다. 외부 전자 장치는, 또 다른 ROI(1520)에 대하여 제3 인식 모델(1521)을 적용할 수 있다. 제3 인식 모델(1521)은 텍스처 인식을 수행할 수 있다. 제3 인식 모델(1521)은 또 다른 ROI(1520)에 대한 텍스처 분석 결과(1523)가 복수 개의 텍스처 속성(1522) 중 "white short hair"인 것을 판단할 수 있다. 제3 인식 모델(1521)은 복수 개의 텍스처 속성(1522)들 각각에 대한 텍스처 인식 알고리즘을 포함할 수 있다. 본 발명의 다양한 실시예에서, 제2 인식 모델(1511)에 의한 인식이 실패하더라도 제3 인식 모델(1521)에 의한 ROI(1510) 중 적어도 일부에 대한 텍스처 세그먼테이션 및 텍스처 인식이 수행될 수 있다. 본 발명의 다양한 실시예에서, 제3 인식 모델(1511)은, 또 다른 ROI(1520)가 아닌 ROI(1510)를 직접 제1 인식 모델(1502)로부터 입력받을 수도 있다. 제3 인식 모델(1511)은 기본 이미지(1501) 전체에 대하여 텍스처 세그먼테이션 및 텍스처 인식을 수행할 수도 있다. 복수 개의 모델들(1502, 1511, 1521)은 종속적인 관계가 아닌 독립적으로 인식을 수행할 수 있다. 예를 들어, 제1 인식 모델(1502)로부터 분류 정보(1504)가 획득되지 않은 경우에도, 제2 인식 모델(1511)이 기본 이미지(1501)에 대하여 사물 인식을 수행할 수 있다.
외부 전자 장치는, 분류 정보(1504), 오브젝트 속성(1513) 또는 텍스처 속성(1523) 중 적어도 하나를 포함하는 보정 영역 정보를 전자 장치(101)로, 예를 들어, 외부 전자 장치의 통신 인터페이스 또는 통신 모듈을 통하여, 송신할 수 있다. 예를 들어, 외부 전자 장치는 분류 정보(1504), 오브젝트 속성(1513) 또는 텍스처 속성(1523) 중 적어도 하나의 정확도 정보를 보정 영역 정보에 포함시켜 전자 장치(101)로, 예를 들어, 외부 전자 장치의 통신 인터페이스 또는 통신 모듈을 통하여, 송신할 수도 있다. 전자 장치(101)는, 보정 영역 정보에 대응하는 효과를 로우 이미지에 적용할 수 있으며, 이에 따라 화질이 개선된 이미지를 생성할 수 있다. 예를 들어, 전자 장치(101)는, ROI(1510)에 대응하는 로우 이미지 부분에 대하여 "old woman"에 대응하는 효과(예: 밝기 증가)를 처리할 수 있다. 예를 들어, 전자 장치(101)는 또 다른 ROI(1520)에 대응하는 로우 이미지 부분에 대하여 "white short hair"에 대응하는 효과(예: sharpen 처리 및 색상의 화이트 처리)를 처리할 수 있다. 예를 들어, 전자 장치(101)는, "people in the street"의 분류 정보(1504)에 기초하여 로우 이미지 전체에 대하여 실외 환경에 대응하는 효과를 처리할 수 있다.
본 발명의 다양한 실시예에서, 외부 전자 장치는, 제1 인식 모델(1502), 제2 인식 모델(1511) 또는 제3 인식 모델(1521) 중 적어도 하나를 업데이트할 수 있으며, 추가적으로 다른 인식 모델을 더 추가할 수도 있다. 외부 전자 장치는 업데이트된 복수 개의 인식 모델들을 이용하여 보정 영역 정보를 생성할 수 있으며, 이를 전자 장치(101)로 송신할 수 있다. 전자 장치(101)의 ISP가 교체되거나 업그레이드되지 않더라도, 전자 장치(101)는 업데이트된 인식 모델에 기초하여 화질이 개선된 이미지를 생성할 수 있다.
본 발명의 다양한 실시예에서, 외부 전자 장치는, 도 15를 참조하여 설명한 바에 따라 생성한 보정 영역 정보에 기초하여, 기본 이미지에 대한 픽셀 조정 정보를 획득할 수도 있다. 외부 전자 장치(예: 도 3의 프로세서(270))는, 픽셀 조정 정보를 전자 장치(101)로, 예를 들어, 외부 전자 장치의 통신 인터페이스 또는 통신 모듈을 통하여, 송신할 수 있으며, 전자 장치(101)는 단순히 픽셀 조정 정보에 따라 로우 이미지 내의 적어도 하나의 픽셀의 밝기, 명도, 컬러 또는 색온도 중 적어도 하나를 조정함으로써 보정된 이미지를 생성할 수 있다.
도 16은 본 발명의 다양한 실시예에 따른 외부 전자 장치에서 이미지 데이터를 분석하는 예를 나타내는 도면이다. 본 발명의 다양한 실시예에 따른 외부 전자 장치(예: 외부 전자 장치(520))(예: 도 3의 프로세서(270))는, 기본 이미지에 기초하여 획득한 보정 영역 정보(1601)를 이용하여 확장된 보정 영역 정보를 획득할 수 있다. 예를 들어, 외부 전자 장치는, 기존에 수행하였던 인식 결과를 기반으로 인식하고자 하는 ROI를 크롭(1602)할 수 있다. 외부 전자 장치는, 로우 이미지(1600)로부터 ROI(1603)를 크롭할 수 있다. 외부 전자 장치는, 기본 이미지에서 확인되었던 ROI에 대응하는 로우 이미지(1600)에서의 ROI(1603)를 크롭할 수 있다.
외부 전자 장치는 제2 인식 모델(1604)을 ROI(1603)에 적용할 수 있다. 외부 전자 장치는, 제2 인식 모델(1604)의 적용 결과, ROI(1603)의 오브젝트 속성(1606)이 복수 개의 오브젝트 속성(1605) 중 “middle age man”에 해당하는 것을 판단할 수 있다. 예를 들어, 도 15의 실시예에서와 같이, 외부 전자 장치는, 기본 이미지(1501)의 ROI(1510)에 대하여서는, "old woman"의 오브젝트 속성(1513)를 획득할 수 있다. 외부 전자 장치는, 기본 이미지(1501)보다 고화질인 로우 이미지(1600)의 ROI(1603)에 제2 인식 모델(1604)을 적용함으로써 더욱 정확한 오브젝트 속성(1606)을 획득할 수 있다.
외부 전자 장치는, 텍스처 세그먼테이션 결과(1607)에 기초하여 또 다른 ROI(1611)을 크롭(1610)할 수 있다. 외부 전자 장치는, 또 다른 ROI(1611)에 대하여 제3 인식 모델(1612)을 적용할 수 있다. 외부 전자 장치(는, 또 다른 ROI(1611)의 텍스처 속성(1614)이 복수 개의 텍스처 속성(1613) 중 “gray short hair”임을 확인할 수 있다. 외부 전자 장치는, 기본 이미지(1501)보다 고화질인 로우 이미지(1600)의 또 다른 ROI(1611)에 제3 인식 모델(1612)을 적용함으로써 더욱 정확한 오브젝트 속성(1614)을 획득할 수 있다.
도 17은 본 발명의 다양한 실시예에 따른 이미지 분석을 위한 원본 이미지를 나타내는 도면이며, 도 18은 본 발명의 다양한 실시예에 따른 기본 이미지에 대한 이미지 분석 결과를 나타내는 도면이다.
도 17의 원본 이미지를 이미지 분석 모듈(예컨대, 도 5의 이미지 분석 모듈(522))에 의해 전체 이미지 영역(1700)을 이미지 분석하면, 도 18에 도시된 바와 같이 전체 이미지 영역(1800)에 대해 각 영역별로 다음과 같이 분석될 수 있다.
1. 잔디(grass) 영역(1840) : 사람의 집중도가 떨어지고 텍스쳐가 많아 추가 확장 레이어를 통한 주관화질 향상에 효과가 적으므로 기본 레이어에서 전송한 데이터 만으로 사용할 수 있다.
2. 하늘(sky) 영역(1830) : 사람의 집중도는 떨어지지만, 평탄 영역이므로 확장 레이어를 통해 상대적 다른 영역보다 적은 데이터(예컨대, 20%)를 할당할 수 있다.
3. 풍선(balloons) 영역(1820) : 색상이 다양하고 중심에 위치한 사물이기 때문에 사람의 집중도가 높다. 주관화질 향상을 위해 확장 레이어 데이터 중 상대적으로 많은 데이터 비중(예컨대, 30%)을 할당할 수 있다.
4. 사람(human) 영역(1810) : 집중도가 높은 사물이고, 가운데 위치하기 때문에 확장 레이어 데이터 중 상대적으로 가장 많은 비중(예컨대, 50%)을 할당할 수 있다
도 19는 본 발명의 다양한 실시예에 따른 확장 레벨 인코더에 대한 세부 구성을 나타내는 블록도이다. 도 19를 참조하면, 전술한 바와 같이 전자 장치(예컨대, 도 1의 전자 장치(101))의 레벨 이미지 생성 모듈(1920)은 로우 이미지(1910)로부터 기본 이미지를 생성할 수 있다.
기본 레벨 인코더(1930)는 지정된 방식에 따라 상기 기본 이미지를 인코딩하여 외부 전자 장치(예컨대, 도 1의 서버(108))로 전송할 수 있다.
다양한 실시예에 따라, 확장 레벨 인코더(1940)는 업스케일링부(1941), 혼합기(1942), 변환 및 양자화부(1943), 엔트로피 코딩부(1944) 등을 포함하여 구성될 수 있다. 업스케일링부(1941)는 상기 기본 레벨 인코더(1930)에서 인코딩된 기본 이미지를 업스케일링할 수 있다. 혼합기(1942)는 상기 업스케일링된 기본 이미지와 로우 이미지를 혼합할 수 있다. 상기 혼합기(1942)를 통해 혼합된 데이터는 변환 및 양자화부(1943)를 통해 변환되고 양자화될 수 있다.
상기 엔트로피 코딩부(1944)는 상기 변환 및 양자화된 데이터를 엔트로피 코딩하여 확장 레벨 이미지로 출력할 수 있다.
도 20은 본 발명의 다양한 실시예에 따른 확장 레벨 디코더에 대한 세부 구성을 나타내는 블록도이다. 도 20을 참조하면, 외부 전자 장치(예컨대, 도 1의 서버(108))에서 수신된 기본 레벨 이미지는 기본 레벨 디코더(2010)에서 디코딩된다. 디코딩된 기본 이미지는 확장 레벨 디코더(2020)에서 리코딩될 수 있다. 상기 확장 레벨 디코더(2020)는 도 19의 확장 레벨 인코더(1940)의 인코딩 방식에 따라 디코딩될 수 있다.
다양한 실시예에 따라, 업스케일링부(2021)는 디코딩된 기본 이미지를 업스케일링하고, 파서(2023)에서는 상기 업스케일링된 기본 이미지와 확장 이미지를 파싱할 수 있다. 상기 파싱된 데이터는 역양자화 및 역변환부(2024)를 통해 역양자화 및 역변환 될 수 있다. 혼합기(2022)는 상기 업스케일링된 기본 이미지와 상기 역양자화 및 역변환부(2024)의 출력 데이터를 혼합하여 혼합 이미지를 생성할 수 있다.
도 21은 본 발명의 다양한 실시예에 따른 전자 장치 및 외부 전자 장치에서 이미지 데이터를 처리하는 예를 나타내는 네트워크 구성의 예시도이다. 상기 도 21에서 전자 장치(2110)에 포함되는 레벨 이미지 생성 모듈(2112), 기본 레벨 인코더(2113), 확장 레벨 인코더(2114), 기본 레벨 디코더(2121), 이미지 분석 모듈(2122), 확장 레벨 디코덩(2123), 이미지 처리 모듈(2124)의 세부 기능은 도 5, 도 11 및 도 12에서 전술한 기능을 포함하므로 상세한 설명은 생략하기로 한다.
도 21을 참조하면, 외부 전자 장치(2120)(예컨대, 클라우드 서버)에서 기본 레이어를 기반으로 이미지 분석 및 인식을 수행하고, 인식 결과로 전술한 바와 같은 인식 정보 맵과 우선 순위 정보를 전자 장치(2110)에서 전송받아 확장 이미지의 인코딩 시 우선 순위 순서로 영역별로 수행할 수 있다. 상기 확장 이미지의 인코딩 우선 순위에 따라 상기 인코딩된 확장 이미지는 상기 외부 전자 장치로(2120) 순차적으로 전송될 수 있다.
예컨대, 도 21에 도시된 바와 같이 우선 순위가 높은 순서인 '사람 → 풍선 → 하늘 → 잔디'로 인코딩되어 외부 전자 장치(2120)로 전송이 진행될 수 있다.
상기 외부 전자 장치(2120)에서는 상기 전자 장치(2110)의 ISP(2115)에서보다 고도화된 영상 처리가 가능한 이미지 처리 모듈(2124)를 통해 각 영역에 대한 영상 처리(예컨대, 제2 이미지 처리)를 수행한 후 우선 순위 순서에 따라 상기 전자 장치(2110)로 전송할 수 있다.
상기 전자 장치의 ISP(2115)는 로우 이미지 또는 확장 이미지를 제1 이미지 처리할 수 있다. 이미지 합성 모듈(2116)은 상기 ISP(2115)에서 제1 이미지 처리된 영상을 바탕으로 이미지 처리 모듈(2124)에서 전송된 각 영역의 향상된 영상 부분을 합성하여 화면에 표시될 수 있다. 예컨대, 상기 전자 장치는 상기 이미지 처리 모듈(2124)을 통해 제2 이미지 처리된 데이터에 대해 상기 수신된 영역 순으로 실시간 이미지 합성 처리를 하여 화면에 디스플레이할 수 있다. 다양한 실시예에 따라, 상기 이미지 합성 모듈(2116)은 상기 외부 전자 장치(2120)로부터 전송된 상기 제2 이미지 처리된 데이터에 기반하여 상기 제1 이미지 처리한 데이터(예컨대, 로우 이미지 또는 확장 이미지를 제1 이미지 처리한 데이터)를 보정할 수 있다. 예컨대, 상기 제1 이미지 처리한 데이터의 전체 영역 중 상기 제2 이미지 처리한 데이터에 해당하는 영역을 상기 전송된 제2 이미지 처리된 데이터로 대체할 수 있다.
다양한 실시예에 따라, 상기 이미지 합성 모듈(2116)에서 출력된 합성된 영상은 '사람 → 풍선 → 하늘 → 잔디' 순서로 향상되어 화면에 표시됨으로써 사용자에 보여줄 수 있다.
도 22는 본 발명의 다양한 실시예에 따른 전자 장치의 ISP(예컨대, 도 21의 ISP(2115)) 및 외부 전자 장치의 ISP(예컨대, 도 21의 이미지 처리 모듈(2124))의 블록도를 도시한다. 본 발명의 다양한 실시예에 따른 이미지 보정 정보(2210)는, 오브젝트 세그먼테이션(object segmentation) 정보(2211), 텍스처 세그먼테이션(texture segmentation) 정보(2212) 또는 분류(scene classification) 정보(2213) 중 적어도 하나를 포함할 수 있다. 이미지 보정 정보(2210)는 외부 전자 장치의 ISP(2220) 또는 전자 장치의 ISP(2230)에서 이용될 수 있다. 외부 전자 장치는, 예를 들어 클라우드 서버로 구현될 수 있으며, 이에 따라 외부 전자 장치의 ISP(2220)는 클라우드 ISP(cloud ISP)로 명명될 수도 있다. 외부 전자 장치의 ISP(2220)는, original color mapping(2221), detail re-generation(2222), text reconstruction(2223), image inpainting(2224), scene based white balance(WB) / color adjustment(2225), segmentation based noise reduction(NR) / sharpen(2226) 또는 segmentation based detail enhancement(2227) 중 적어도 하나의 보정을 수행할 수 있다. 전자 장치의 ISP(2230)는 scene based white balance(WB) / color adjustment(2231), segmentation based noise reduction(NR) / sharpen(2232) 또는 segmentation based detail enhancement(2233) 중 적어도 하나의 보정을 수행할 수 있다.
전자 장치의 ISP(2230)는, 예를 들어 사람의 머리카락에 해당하는 영역에 대하여서는 sharpen 및 detail enhancement를 강하게 적용할 수 있으며, 사람의 얼굴에 해당하는 영역의 경우에는 noise reduction을 강하게 적용할 수 있다. 외부 전자 장치의 ISP(2220)는, 전자 장치의 ISP(2230)에 비하여 높은 리소스 또는 높은 연산 능력을 가질 수 있으며, 이에 따라 original color mapping(2221), detail re-generation(2222), text reconstruction(2223), image inpainting(2224) 등의 보정을 추가적으로 더 수행할 수 있다. 외부 전자 장치의 ISP(2220)는, 예를 들어 분류 정보(2213)에 대응되는 특징 벡터(feature vector)를 생성할 수 있으며, 피사체의 원본 컬러를 매핑하거나, 피사체의 detail을 re-generation할 수 있다. 외부 전자 장치의 ISP(2220)는 텍스트 인식을 통한 text reconstruction을 수행할 수도 있으며, 인식된 피사체에 대하여 지워진 부분을 채우는 image inpainting을 수행할 수 있다. 이에 따라, 외부 전자 장치에 의하여 보정된 로우 이미지가 전자 장치에 의하여 보정된 로우 이미지보다 고화질일 수도 있다.
도 23은 본 발명의 다양한 실시예에 따른 이미지 분류를 사용하여 AWB(auto white balance)의 정확도의 개선을 설명하기 위한 개념도를 도시한다. AWB는 다양한 광원에서 컬러 항상성(color constancy)를 유지하기 위해서, 백색(white)이나 회색(gray)계열이 포함된 지점(point)를 추측하여, 해당 지점이 백색으로 표시되도록 백색 밸런스를 조절하는 과정일 수 있다. 전자 장치가 이미지를 촬영하는 환경으로, 백열등과 같은 색온도가 낮은 조명환경, 실내공간에 사용되는 형광등, LED와 같은 조명환경, 맑은 날의 파란하늘 아래의 그늘과 같은 높은 색온도의 야외 환경이 있을 수 있다. 촬영 당시의 조도(밝기)에 따라 야외와 실내, 야간이 간략하게 구분될 수 있지만, 비슷한 밝기의 환경이면서 색온도가 다른 조명이 사용되는 환경에서는 AWB의 오류가능성이 높아질 수 있다. 이는, 두 개의 다른 피사체가 각기 다른 조명에서 촬영되었을 때, 센서에서 출력되는 RGB의 비율이 비슷하게 나타나기 때문이다. 실내등 아래에서의 밝은 나무의 물체는, 백열등 아래에서의 흰색물체와 혼동될 수 있다. 비슷한 예로서, 그늘진 숲이나 잔디가 화면에 넓게 분포하는 경우에, 형광등 아래에서 촬영한 흰색 물체와 혼동될 수 있다. 이미지 분류에서, 현재 촬영중인 상황이 인식된다면, AWB에서 판별해야 하는 색온도의 범위가 감소될 수 있고, AWB의 오류 또한 감소될 수 있다. 종래에는, 특정의 조도에서 2800K~7000K 사이의 넓은 구간(2301)에서 화이트의 후보를 선정해야 해서, AWB의 오류가능성이 있었다. 본 발명의 다양한 실시예에서는, 촬영한 이미지가 실내의 사무실 환경으로 분류가 되면, 사무실의 일반적인 조명환경(3500K~5500K의 조명)을 고려하여, 종래보다 좁은 구간(2302)에서 화이트 후보영역을 선정할 수 있고, AWB의 정확도가 향상될 수 있다.
도 24는 본 발명의 다양한 실시예에 따른 전자 장치 및 외부 전자 장치에서 이미지 데이터를 처리하는 절차를 나타내는 신호 흐름도이다.
도 24를 참조하면, 전자 장치(2110)(예컨대, 도 1의 전자 장치(101)) 전자 장치(101)(예: 프로세서(120), 또는 프로세서(264))는, 동작 2401에서 로우 이미지로부터 기본 이미지를 생성할 수 있다
동작 2402에서, 전자 장치는 상기 기본 이미지를 인코딩하고, 동작 2403에서 상기 인코딩된 기본 이미지를 외부 전자 장치(2120)(예컨대, 도 1의 서버(108))로 전송할 수 있다.
동작 2404에서, 상기 외부 전자 장치는 인코딩된 기본 이미지를 디코딩하고, 동작 2405에서 디코딩된 기본 이미지를 분석할 수 있다.
동작 2406에서, 상기 외부 전자 장치는 상기 이미지 분석 결과를 상기 전자 장치로 전송할 수 있다.
동작 2407에서, 상기 전자 장치(2110)는 상기 외부 전자 장치로부터 수신된 이미지 분석 결과에 기반하여 확장 이미지를 인코딩할 수 있다. 동작 2408에서, 상기 전자 장치는 상기 인코딩한 확장 이미지를 상기 외부 전자 장치(2120)로 전송할 수 있다. 동작 2409에서, 상기 전자 장치는 상기 로우 이미지 또는 상기 확장 이미지를 ISP(2115)에 의해 제1 이미지 처리할 수 있다.
동작 2410에서, 상기 외부 전자 장치는 상기 전자 장치로부터 수신된 인코딩된 확장 이미지를 디코딩하고, 동작 2411에서 상기 디코딩된 확장 이미지를 이미지 처리 모듈(2124)을 통해 제2 이미지 처리할 수 있다. 동작 2412에서, 상기 외부 전자 장치는 상기 제2 이미지 처리된 확장 이미지를 지정된 우선 순위에 따라 해당 영역 순으로 전자 장치로 전송할 수 있다.
동작 2413에서, 상기 전자 장치는 상기 수신된 영역 순으로 실시간 이미지 합성 처리를 하여 화면에 디스플레이할 수 있다. 다양한 실시예에 따라, 상기 전자 장치는 상기 외부 전자 장치로부터 전송된 상기 제2 이미지 처리된 데이터에 기반하여 상기 제1 이미지 처리한 데이터(예컨대, 로우 이미지 또는 확장 이미지를 제1 이미지 처리한 데이터)를 보정할 수 있다. 예컨대, 상기 제1 이미지 처리한 데이터의 전체 영역 중 상기 제2 이미지 처리한 데이터에 해당하는 영역을 상기 전송된 제2 이미지 처리된 데이터로 대체할 수 있다.
도 25는 본 발명의 일 실시예에 따른 전자 장치의 세부 구조를 나타내는 블록도이다. 도 25를 참조하면, 본 발명의 다양한 실시예에 따른 전자 장치(예: 도 1의 전자 장치(101))는 이미지 센서 모듈(2510)(예컨대, 도 2의 이미지 센서(230)), 이미지 전처리 모듈(2520)(예컨대, companion chip), 애플리케이션 프로세서(AP; application processor)(2530)(예컨대, 도 1의 프로세서(120))를 포함하여 구성될 수 있다. 상기 이미지 처리 장치는 이미지 전처리 모듈(2520) 없이, 이미지 센서 모듈(2510)에서 애플리케이션 프로세서(2530)로 직접 연결되도록 구현될 수도 있다.
상기 이미지 센서 모듈(2510)은 이미지를 센싱하는 모듈로서 MIPI(mobile industry processor interface) 라인을 통해 센싱된 각 픽셀값을 상기 이미지 전처리 모듈(2520) 또는 애플리케이션 프로세서(2530)로 전송할 수 있다. 또한, 상기 이미지 센서 모듈(2510)은 SPI(serial peripheral interface)를 통해 각종 제어 신호를 송수신할 수 있다. 상기 이미지 센서 모듈(2510)은 이미지 센서(2511)(예컨대, CMOS 센서)(예컨대, 도 2의 이미지 센서(230)) 및 제어 회로(2512))를 포함하여 구현될 수 있다.
상기 이미지 전처리 모듈(2520)은 이미지 센서의 특정 기능을 지원하기 위해 추가로 구성될 수 있다. 예컨대, 상기 이미지 전처리 모듈(2520)은 이미지의 화질 개선을 위한 전처리를 수행할 수 있다.
애플리케이션 프로세서(2530)는 이미지 신호 처리부(2531)(ISP; image signal processor) 및 주처리부(CPU;central processing unit)(2532)를 포함하여 구성될 수 있다. 상기 이미지 신호 처리부(2531)는 베이어 처리부(2531a), 색상 처리부(2531b)(Luma/Color), 압축 해제 모듈(2533)을 포함하여 구성될 수 있다.
도 26는 본 발명의 다양한 실시예에 따른 전자 장치 및 외부 전자 장치의 동작을 설명하기 위한 개념도를 도시한다.
전자 장치(예컨대, 도 1의 전자 장치(101))는, 이미지 센서 모듈(2621)(예: 이미지 센서 모듈(2510)), ISP(2623)(예: 프로세서(120), ISP(2531)) 및 메모리(2625)를 포함할 수 있다. 외부 전자 장치(2600)(예: 도 1의 서버(108))는, 인식 모듈(2631), 이미지 처리 모듈(2633) 및 저장소(2635)를 포함할 수 있다. 인식 모듈(2631)은 논리 모듈일 수도 있으며, 외부 전자 장치(2600)의 프로세서로 구현될 수도 있다. 이미지 처리 모듈(2633) 또한 외부 전자 장치(2600)의 프로세서로 구현될 수 있으며, 예를 들어 외부 전자 장치(2600)의 프로세서가 인식과 이미지 처리를 모두 수행할 수도 있다. 도시되지는 않았지만, 전자 장치(2601)는 외부 전자 장치(2600)와 데이터를 송수신할 수 있는 통신 모듈(예: 인터페이스(177) 또는 통신 모듈(190))을 포함할 수 있다. 외부 전자 장치(2600)는 전자 장치(2601)와 데이터를 송수신할 수 있는 통신 모듈을 포함할 수 있다.
이미지 센서 모듈(2621)(예: 제어 회로(2512))은, 외부 객체에 대한 이미지를 획득할 수 있으며, 이에 대응하는 로우 이미지(2622)를 생성할 수 있다. 이미지 센서 모듈(2621)은, 로우 이미지(2622)를 ISP(2623)로 전달할 수 있다. 본 발명의 다양한 실시예에서, 이미지 센서 모듈(2621)은 기본 이미지(2624)(small raw image)를 생성하여 이를 통신 모듈을 통하여 외부 전자 장치(2600)로 송신할 수 있다.
다양한 실시예에 따라, 상기 기본 이미지(2624)는 로우 이미지(2622)의 데이터 크기보다 작은 크기를 갖는 로우 이미지를 의미하며, 특정 포맷이나 특정 방법에 의해 생성된 이미지로 제한 해석되는 것은 아니다. 예컨대, 상기 기본 이미지(2624)는 상기 로우 이미지(2622)의 용량을 감소시킴으로써 생성될 수 있으며, 경량 이미지로 지칭될 수도 있다. 예컨대, 전자 장치(2601)는 상기 로우 이미지(2622)로부터 다양한 다운-스케일(down-scale) 방식 또는 다운-샘플링(down-sampling) 방식을 이용하여 기본 이미지(2624)를 생성할 수 있다. 전자 장치(2601)는, 예를 들어 로우 이미지(2622)의 해상도의 조정, 복수 개의 주파수 대역 중 적어도 일부를 선택, 또는 복수 개의 비트플레인 레벨 중 적어도 하나의 선택 중 적어도 하나를 수행함으로써, 상기 로우 이미지(2622)의 데이터의 크기보다 작은 크기를 갖는 기본 이미지(2624)를 생성할 수 있다. 전자 장치(2601)는, 예를 들어 상기 로우 이미지(2622)로부터 저주파수 대역을 추출함으로써 기본 이미지(2624)를 생성할 수 있다. 전자 장치(2601)는, 예를 들어 상기 로우 이미지(2622)의 복수 개의 비트플레인 레벨 중 일부의 비트플레인 레벨들을 선택함으로써 기본 이미지(2624)를 생성할 수도 있다. 상기 기본 이미지(2624)는, 상기 로우 이미지(2622)의 정보를 적어도 일부 포함하되 로우 이미지(2622) 보다 용량이 작은 이미지일 수 있다. 상기 로우 이미지(2622) 대신 상기 기본 이미지(2624)를 외부 전자 장치(2600)에 전송하는 경우, 보다 작은 용량의 데이터를 전송하게 되므로, 외부 전자 장치(2600)로 이미지를 보다 빠르게 전송할 수 있다.
또 다른 실시예에서는, 이미지 센서 모듈(2621)이 아닌 전자 장치(2601)의 프로세서가 기본 이미지(2624)를 생성할 수도 있으며, 생성된 기본 이미지(2624)를 통신 모듈을 통하여 외부 전자 장치(2600)로 송신할 수 있다. 이미지 센서 모듈(2621)은, 로우 이미지(2622)의 적어도 일부에 대한 처리 또는 외부(예: 프로세서(예: ISP) 또는 외부 전자 장치(2600))로의 송신을 위해 압축할 수 있다. 이미지 센서 모듈(2621)은, 압축된 로우 이미지(2622)를 ISP(2623) 또는 외부 전자 장치(2600)(예: 이미지 처리 모듈(2633))로 송신할 수 있다. 다른 실시 예로, ISP(2623)(예: 프로세서(120), ISP(2531))는, 이미지 센서 모듈(2621)로부터 수신된 압축된 로우 이미지 또는 기본 이미지(2624)를 상기 외부 전자 장치(2600)로 송신할 수 있다. 이미지 센서 모듈(2621)은, 로우 이미지(2622)의 일부 처리를 위해 압축하여 상기 이미지 센서 모듈(2621) 내부의 메모리에 임시로 저장할 수 있다. 외부 전자 장치(2600)의 인식 모듈(2631)은 통신 모듈을 통하여 기본 이미지(2624)를 획득할 수 있으며, 기본 이미지(2624)로부터 적어도 하나의 이미지 영역을 세그먼테이션할 수 있다. 인식 모듈(2631)은 세그먼테이션 결과로 구분된 적어도 하나의 이미지 영역 각각을 인식할 수 있다. 인식 모듈(2631)로부터 생성된 복수의 이미지 영역과 연관된 정보, 예를 들어 이미지 영역의 좌표 정보 또는 인식 결과 중 적어도 하나를 포함하는 이미지 보정 정보(2632)가 생성될 수 있다. 이미지 보정 정보(2632)는 전자 장치(2601)로 송신될 수 있다. ISP(2623)는 이미지 보정 정보(2632)를 이용하여 로우 이미지(2622)를 보정할 수 있으며, 이에 따라 보정된 이미지가 생성될 수 있다. 보정된 이미지는, 예를 들어 YUV의 포맷을 가질 수 있다. 보정된 이미지는 메모리(2625)에 저장될 수 있다. 또는, 보정된 이미지는 예를 들어 JPEG 방식에 따라 압축될 수 있으며, 압축된 이미지가 메모리(2625)에 저장될 수도 있다.
본 발명의 다양한 실시예에서, 이미지 센서 모듈(2621)로부터 제공되는 로우 이미지(2622)는 기본 이미지(2624)와 별도로 외부 전자 장치(2600)로 송신될 수 있다. 로우 이미지(2622)는, 기본 이미지(2624)에 비하여 용량이 크므로, 기본 이미지(2624)가 우선 외부 전자 장치(2600)로 송신되며, 이후 로우 이미지(2622)가 외부 전자 장치(2600)로 송신될 수 있다. 예를 들어, ISP(2623)가 로우 이미지(2622)에 대한 보정을 수행하는 동안에 로우 이미지(2622)가 외부 전자 장치(2600)로 송신될 수도 있다. 로우 이미지(2622)는, 이미지 센서 모듈(2621)에 의하여 생성된 그대로 외부 전자 장치(2600)로 업로드될 수도 있으며, 또는 렌즈 왜곡 보상 또는 노이즈 제거가 수행된 전처리 영상이 업로드될 수도 있다. 상술한 전처리는 외부 전자 장치(2600)에서 수행될 수도 있다. 외부 전자 장치(2600)는, “Demosaic” 처리 또는 이미지 포맷 변형, 또는 영상 인식률을 높이기 위한 전처리를 수행할 수도 있다. 외부 전자 장치(2600)의 이미지 처리 모듈(2633)은, 수신된 로우 이미지(2622)를 보정할 수 있다. 외부 전자 장치(2600)는 기존에 생성하였던 이미지 보정 정보(2632)를 이용하여 로우 이미지(2622)를 보정할 수도 있으며, 또는 확장된 이미지 보정 정보를 이용하여 로우 이미지(2622)를 보정할 수도 있다. 로우 이미지(2622)는, 기본 이미지(2624)에 비하여 해상도가 높을 수도 있으며, 이에 따라 외부 전자 장치(2600)의 이미지 처리 모듈(2633)은 고해상도 이미지로부터 보다 상세한 확장된 이미지 보정 정보를 획득할 수 있다. 이미지 처리 모듈(2633)은, 기존에 생성된 이미지 보정 정보와 로우 이미지(2622)를 함께 이용하여 확장된 이미지 보정 정보를 생성할 수도 있다. 이미지 처리 모듈(2633)은 확장된 이미지 보정 정보를 이용하여 로우 이미지(2622)를 보정함으로써, 고해상도 이미지(high quality image)(2634)를 획득할 수 있다. 고해상도 이미지(2634)는 외부 전자 장치(2600)의 저장소(2635)에 저장될 수 있으며, 전자 장치(2601)로 다운로드될 수도 있다.
도 27은 다양한 실시예에 따른 프로그램(140)의 블록도(2700)이다. 일실시예에 따르면, 프로그램(140)은 전자 장치(101)의 하나 이상의 리소스들을 제어하기 위한 운영 체제(142), 미들 웨어(144), 또는 상기 운영 체제(142) 상에서 실행 가능한 어플리케이션(146)을 포함할 수 있다. 운영 체제(142)는, 예를 들면, AndroidTM, iOSTM, WindowsTM, SymbianTM, TizenTM, 또는 BadaTM를 포함할 수 있다. 프로그램(140) 중 적어도 일부 프로그램은, 예를 들면, 제조 시에 전자 장치(101)에 프리로드되거나, 또는 사용자의 사용 환경에서 외부 전자 장치(예: 전자 장치(102 또는 104), 또는 서버(108))로부터 다운로드되거나 갱신 될 수 있다.
운영 체제(142)는 전자 장치(101)의 시스템 리소스 (예: 프로세스, 메모리, 또는 전원)를 제어(예: 할당 또는 회수)할 수 있다. 운영 체제(142)는, 추가적으로 또는 대체적으로, 전자 장치(101)의 다른 하드웨어 디바이스, 예를 들면, 입력 장치(150), 음향 출력 장치(155), 표시 장치(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 구동하기 위한 하나 이상의 드라이버 프로그램들을 포함할 수 있다.
미들 웨어(144)는 어플리케이션(146)이 전자 장치(101)의 하나 이상의 리소스들이 제공하는 기능 또는 정보를 사용할 수 있도록 다양한 기능들을 어플리케이션(146)으로 제공할 수 있다. 미들 웨어(144)는, 예를 들면, 어플리케이션 매니저(2701), 윈도우 매니저(2703), 멀티미디어 매니저(2705), 리소스 매니저(2707), 파워 매니저(2709), 데이터베이스 매니저(2711), 패키지 매니저(2713), 커넥티비티 매니저(2715), 노티피케이션 매니저(2717), 로케이션 매니저(2719), 그래픽 매니저(2721), 시큐리티 매니저(2723), 통화 매니저(2725), 또는 음성 인식 매니저(2727)를 포함할 수 있다. 어플리케이션 매니저(2701)는, 예를 들면, 어플리케이션(226)의 생명 주기를 관리할 수 있다. 윈도우 매니저(2703)는, 예를 들면, 화면에서 사용되는 GUI 자원을 관리할 수 있다. 멀티미디어 매니저(2705)는, 예를 들면, 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱을 이용하여 미디어 파일의 인코딩 또는 디코딩을 수행할 수 있다. 리소스 매니저(2707)는, 예를 들면, 어플리케이션(226)의 소스 코드 또는 메모리의 공간을 관리할 수 있다. 파워 매니저(2709)는, 예를 들면, 배터리의 용량, 온도 또는 전원을 관리하고, 이 중 해당 정보를 이용하여 전자 장치(101)의 동작에 필요한 전력 정보를 결정 또는 제공할 수 있다. 일실시예에 따르면, 파워 매니저(2709)는 바이오스(BIOS: basic input/output system)와 연동할 수 있다.
데이터베이스 매니저(2711)는, 예를 들면, 어플리케이션(226)에서 사용될 데이터베이스를 생성, 검색, 또는 변경할 수 있다. 패키지 매니저(2713)는, 예를 들면, 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 갱신을 관리할 수 있다. 커넥티비티 매니저(2715)는, 예를 들면, 전자 장치(101)와 외부 전자 장치 간의 무선 또는 유선 연결을 관리할 수 있다. 노티피케이션 매니저(2717)는, 예를 들면, 발생된 이벤트(예: 통화, 메시지, 또는 알람)를 사용자에게 알리기 위한 기능을 제공할 수 있다. 로케이션 매니저(2719)는, 예를 들면, 전자 장치(101)의 위치 정보를 관리할 수 있다. 그래픽 매니저(2721)는, 예를 들면, 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 시큐리티 매니저(2723)는, 예를 들면, 시스템 보안 또는 사용자 인증을 제공할 수 있다. 통화(telephony) 매니저(2725)는, 예를 들면, 전자 장치(101)의 음성 통화 또는 영상 통화 기능을 관리할 수 있다. 음성 인식 매니저(2727)는, 예를 들면, 사용자의 음성 데이터를 서버(108)로 전송하고, 해당 음성 데이터에 기반하여 전자 장치(101)에서 수행될 기능에 대응하는 명령어(command) 또는 해당 음성 데이터에 기반하여 변환된 문자 데이터를 수신할 수 있다. 일 실시예에 따르면, 미들 웨어(2744)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다. 일 실시예에 따르면, 미들 웨어(144)의 적어도 일부는 운영 체제(142)의 일부로 포함되거나, 또는 운영 체제(222)와는 별도의 소프트웨어로 구현될 수 있다.
어플리케이션(226)은, 예를 들면, 홈(2751), 다이얼러(2753), SMS/MMS(2755), IM(instant message)(2757), 브라우저(2759), 카메라(2761), 알람(2763), 컨택트(2765), 음성 인식(2767), 이메일(2769), 달력(2771), 미디어 플레이어(2773), 앨범(2775), 와치(2777), 헬스(2779)(예: 운동량 또는 혈당 등을 측정), 또는 환경 정보(2781)(예: 기압, 습도, 또는 온도 정보) 어플리케이션을 포함할 수 있다. 일실시예에 따르면, 어플리케이션(146)은 전자 장치(101)와 외부 전자 장치 사이의 정보 교환을 지원할 수 있는 정보 교환 어플리케이션(미도시)을 더 포함할 수 있다. 정보 교환 어플리케이션은, 예를 들면, 외부 전자 장치로 지정된 정보 (예: 통화, 메시지, 또는 알람)를 전달하기 위한 노티피케이션 릴레이 어플리케이션, 또는 외부 전자 장치를 관리하기 위한 장치 관리 어플리케이션을 포함할 수 있다. 노티피케이션 릴레이 어플리케이션은, 예를 들면, 전자 장치(101)의 다른 어플리케이션(예: 이메일 어플리케이션(2769))에서 발생된 이벤트(예: 메일 수신)에 대응하는 알림 정보를 외부 전자 장치로 전달하거나, 또는 외부 전자 장치로부터 알림 정보를 수신하여 전자 장치(101)의 사용자에게 제공할 수 있다. 장치 관리 어플리케이션은, 예를 들면, 전자 장치(101)와 통신하는 외부 전자 장치 또는 그 일부 구성 요소(예: 표시 장치(160) 또는 카메라 모듈(180))의 전원(예: 턴-온 또는 턴-오프) 또는 기능(예: 표시 장치(160) 또는 카메라 모듈(180)의 밝기, 해상도, 또는 포커스)을 제어할 수 있다. 장치 관리 어플리케이션은, 추가적으로 또는 대체적으로, 외부 전자 장치에서 동작하는 어플리케이션의 설치, 삭제, 또는 갱신을 지원할 수 있다.
본 발명의 다양한 실시예에서 기술된 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시예에서, 전자 장치는 본 문서에서 기술된 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 또한, 다양한 실시예에 따른 전자 장치의 구성요소들 중 일부가 결합되어 하나의 개체(entity)로 구성됨으로써, 결합되기 이전의 해당 구성요소들의 기능을 동일하게 수행할 수 있다.
본 문서에서 사용된 용어 "모듈"은, 예를 들면, 하드웨어, 소프트웨어 또는 펌웨어(firmware) 중 하나 또는 둘 이상의 조합을 포함하는 단위(unit)를 의미할 수 있다. "모듈"은, 예를 들면, 유닛(unit), 로직(logic), 논리 블록(logical block), 부품(component), 또는 회로(circuit) 등의 용어와 바꾸어 사용(interchangeably use)될 수 있다. "모듈"은, 일체로 구성된 부품의 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수도 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있다. 예를 들면,"모듈"은, 알려졌거나 앞으로 개발될, 어떤 동작들을 수행하는 ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays) 또는 프로그램 가능 논리 장치(programmable-logic device) 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는, 예컨대, 프로그램 모듈의 형태로 컴퓨터로 읽을 수 있는 저장매체(computer-readable storage media)에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서(예: 프로세서(120))에 의해 실행될 경우, 상기 하나 이상의 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 읽을 수 있는 저장매체는, 예를 들면, 메모리(160)가 될 수 있다.
컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(magnetic media)(예: 자기테이프), 광기록 매체(optical media)(예: CD-ROM(compact disc read only memory), DVD(digital versatile disc), 자기-광 매체(magneto-optical media)(예: 플롭티컬 디스크(floptical disk)), 하드웨어 장치(예: ROM(read only memory), RAM(random access memory), 또는 플래시 메모리 등) 등을 포함할 수 있다. 또한, 프로그램 명령에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 다양한 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지다.
다양한 실시예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 다양한 실시예에 따른 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)한 방법으로 실행될 수 있다. 또한, 일부 동작은 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
다양한 실시예에 따르면, 명령들을 저장하고 있는 저장 매체에 있어서, 상기 명령들은 적어도 하나의 프로세서에 의하여 실행될 때에 상기 적어도 하나의 프로세서로 하여금 적어도 하나의 동작을 수행하도록 설정된 것으로서, 상기 적어도 하나의 동작은, 이미지 데이터를 처리하는 방법에 있어서, 카메라를 이용하여, 외부 객체에 대응하는 로우 이미지를 획득하는 동작; 상기 로우 이미지를 이용하여, 제1 속성을 갖는 제1 레벨 이미지 및 제2 속성을 갖는 제2 레벨 이미지를 생성하는 동작; 상기 제1 레벨 이미지의 적어도 일부가 인코딩된 제1 이미지를, 외부 전자 장치가 상기 제1 이미지에 대한 분석 정보를 생성하도록, 상기 외부 전자 장치로 전송하는 동작; 상기 분석 정보에 적어도 기반하여, 상기 제2 레벨 이미지의 적어도 일부가 인코딩된 제2 이미지를 생성하는 동작; 및 상기 외부 전자 장치로 상기 제2 이미지를 전송하는 동작;을 포함할 수 있다.
다양한 실시예에 따르면, 명령들을 저장하고 있는 저장 매체에 있어서, 상기 명령들은 적어도 하나의 프로세서에 의하여 실행될 때에 상기 적어도 하나의 프로세서로 하여금 적어도 하나의 동작을 수행하도록 설정된 것으로서, 상기 적어도 하나의 동작은, 이미지 데이터를 처리하는 방법에 있어서, 카메라로부터 획득한 로우 이미지로부터 생성된 제1 속성을 갖는 제1 레벨 이미지를 인코딩한 제1 이미지를 외부 전자 장치로부터 수신하는 동작; 상기 수신된 제1 이미지를 디코딩하는 동작; 상기 디코딩한 제1 이미지를 분석하여 분석 정보를 생성하는 동작; 상기 생성한 분석 정보를 상기 외부 전자 장치로 전송하는 동작; 상기 분석 정보에 기반하여 상기 로우 이미지로부터 생성된 제2 속성을 갖는 제2 레벨 이미지를 인코딩한 제2 이미지를 상기 외부 전자 장치로부터 수신하는 동작; 및 상기 디코딩한 제1 이미지와 상기 수신한 제2 이미지를 병합하여 합성된 이미지를 생성하는 동작;을 포함할 수 있다.
그리고 본 문서에 개시된 실시예는 개시된, 기술 내용의 설명 및 이해를 위해 제시된 것이며, 본 문서에서 기재된 기술의 범위를 한정하는 것은 아니다. 따라서, 본 문서의 범위는, 본 문서의 기술적 사상에 근거한 모든 변경 또는 다양한 다른 실시예를 포함하는 것으로 해석되어야 한다.
100 : 네트워크 환경 101 : 전자 장치
102, 104 : 전자 장치 108 : 서버
120 : 프로세서 130 : 메모리
140 : 프로그램 142 : 운영 체제
144 : 미들웨어 146 : 어플리케이션
150 : 입력 장치 160 : 표시 장치
180 : 카메라 모듈 198, 199 : 네트워크
230 : 이미지 센서 260 : 이미지 시그널 프로세서

Claims (20)

  1. 전자 장치에 있어서,
    카메라;
    통신 모듈;
    디스플레이; 및
    프로세서를 포함하고, 상기 프로세서는,
    상기 카메라를 이용하여, 외부 객체에 대응하는 로우 이미지를 획득하고,
    상기 로우 이미지를 이용하여, 제1 속성을 갖는 제1 레벨 이미지 및 제2 속성을 갖는 제2 레벨 이미지를 생성하고,
    상기 제1 레벨 이미지의 적어도 일부가 인코딩된 제1 이미지를, 외부 전자 장치가 상기 제1 이미지에 대한 분석 정보를 생성하도록, 상기 외부 전자 장치로 상기 통신 모듈을 이용하여 전송하고,
    상기 분석 정보에 적어도 기반하여, 상기 제2 레벨 이미지의 적어도 일부가 인코딩된 제2 이미지를 생성하고,
    상기 외부 전자 장치로 상기 통신 모듈을 이용하여 상기 제2 이미지를 전송하도록 설정된, 전자 장치.
  2. 제1항에 있어서, 상기 프로세서는,
    상기 로우 이미지를 제1 이미지 처리 방식을 이용하여 제1 처리된 데이터를 생성하고,
    상기 외부 전자 장치로부터, 적어도 상기 제2 이미지를 제2 이미지 처리 방식을 이용하여 생성된 제2 처리된 데이터를 수신하고, 및
    상기 제1 처리된 데이터와 상기 제2 처리된 데이터를 합성하도록 설정된, 전자 장치.
  3. 제1항에 있어서, 상기 프로세서는,
    상기 분석 정보에 적어도 기반하여, 상기 제2 레벨 이미지의 적어도 다른 일부를 인코딩한 제3 이미지를 더 생성하고,
    상기 분석 정보에 적어도 기반하여, 상기 제2 이미지 및 상기 제3 이미지 간의 우선 순위를 판단하고,
    상기 우선 순위에 적어도 기반하여 결정된 순서에 따라 상기 제2 이미지 및 상기 제3 이미지를 상기 외부 전자 장치로 전송하도록 설정된, 전자 장치.
  4. 제1항에 있어서, 상기 제1 레벨 이미지는,
    상기 카메라로부터 획득된 로우 이미지 보다 크기 또는 해상도가 축소된 저해상도 이미지, 상기 로우 이미지의 저주파수 영역 이미지, 또는 상기 로우 이미지의 상위 비트플레인 이미지 정보 중 적어도 하나를 포함하는, 전자 장치.
  5. 제4항에 있어서, 상기 제2 레벨 이미지는,
    상기 제1 레벨 이미지보다 크기 또는 해상도가 확장된 고해상도 이미지, 상기 제1 레벨 이미지보다 고주파수 정보를 포함하는 이미지, 또는 상기 제1 레벨 이미지보다 하위 비트플레인 정보를 포함하는 이미지 중 적어도 하나를 포함하는, 전자 장치.
  6. 제1항에 있어서, 상기 분석 정보는,
    상기 제1 이미지에 포함된 복수의 영역들에 대해 각 영역의 속성 정보를 포함하는, 전자 장치.
  7. 제6항에 있어서, 상기 분석 정보는,
    상기 복수의 영역들에 대한 분석 결과에 따라 각 영역별 중요도에 기반한 압축률을 포함하는, 전자 장치.
  8. 제2항에 있어서, 상기 프로세서는,
    상기 외부 전자 장치로부터, 적어도 상기 제2 이미지를 제2 이미지 처리 방식을 이용하여 생성된 복수의 제2 처리된 데이터들을 우선 순위에 따라 순차적으로 수신하고,
    상기 제2 처리된 데이터를 수신된 순서에 따라 상기 제1 처리된 데이터와 합성하도록 설정된, 전자 장치.
  9. 전자 장치에 있어서,
    통신 모듈; 및
    프로세서를 포함하고, 상기 프로세서는,
    카메라로부터 획득한 로우 이미지로부터 생성된 제1 속성을 갖는 제1 레벨 이미지를 인코딩한 제1 이미지를 외부 전자 장치로부터 상기 통신 모듈을 이용하여 수신하고,
    상기 수신된 제1 이미지를 디코딩하고,
    상기 디코딩한 제1 이미지를 분석하여 분석 정보를 생성하고,
    상기 생성한 분석 정보를 상기 외부 전자 장치로 전송하고,
    상기 분석 정보에 기반하여 상기 로우 이미지로부터 생성된 제2 속성을 갖는 제2 레벨 이미지를 인코딩한 제2 이미지를 상기 외부 전자 장치로부터 수신하고,
    상기 디코딩한 제1 이미지와 상기 수신한 제2 이미지를 병합하여 합성된 이미지를 생성하도록 설정된, 전자 장치.
  10. 제9항에 있어서, 상기 분석 정보는,
    상기 제1 이미지에 포함된 복수의 영역들에 대한 분석 결과에 따라 각 영역별 중요도에 기반한 압축률을 포함하는, 전자 장치.
  11. 이미지 데이터를 처리하는 방법에 있어서,
    카메라를 이용하여, 외부 객체에 대응하는 로우 이미지를 획득하는 동작;
    상기 로우 이미지를 이용하여, 제1 속성을 갖는 제1 레벨 이미지 및 제2 속성을 갖는 제2 레벨 이미지를 생성하는 동작;
    상기 제1 레벨 이미지의 적어도 일부가 인코딩된 제1 이미지를, 외부 전자 장치가 상기 제1 이미지에 대한 분석 정보를 생성하도록, 상기 외부 전자 장치로 전송하는 동작;
    상기 분석 정보에 적어도 기반하여, 상기 제2 레벨 이미지의 적어도 일부가 인코딩된 제2 이미지를 생성하는 동작; 및
    상기 외부 전자 장치로 상기 제2 이미지를 전송하는 동작;을 포함하는, 이미지 데이터를 처리하는 방법.
  12. 제11항에 있어서, 상기 방법은,
    상기 로우 이미지를 제1 이미지 처리 방식을 이용하여 제1 처리된 데이터를 생성하는 동작;
    상기 외부 전자 장치로부터, 적어도 상기 제2 이미지를 제2 이미지 처리 방식을 이용하여 생성된 제2 처리된 데이터를 수신하는 동작; 및
    상기 제1 처리된 데이터와 상기 제2 이미지 처리된 데이터를 합성하는 동작을 포함하는, 이미지 데이터를 처리하는 방법.
  13. 제11항에 있어서, 상기 방법은,
    상기 분석 정보에 적어도 기반하여, 상기 제2 레벨 이미지의 적어도 다른 일부를 인코딩한 제3 이미지를 생성하는 동작;
    상기 분석 정보에 적어도 기반하여, 상기 제2 이미지 및 상기 제3 이미지 간의 우선 순위를 판단하는 동작; 및
    상기 우선 순위에 적어도 기반하여 결정된 순서에 따라 상기 제2 이미지 및 상기 제3 이미지를 상기 외부 전자 장치로 전송하는 동작을 포함하는, 이미지 데이터를 처리하는 방법.
  14. 제11항에 있어서, 상기 제1 레벨 이미지는,
    상기 카메라로부터 획득된 로우 이미지 보다 크기 또는 해상도가 축소된 저해상도 이미지, 상기 로우 이미지의 저주파수 영역 이미지, 또는 상기 로우 이미지의 상위 비트플레인 이미지 정보 중 적어도 하나를 포함하는, 이미지 데이터를 처리하는 방법.
  15. 제14항에 있어서, 상기 제2 레벨 이미지는,
    상기 제1 레벨 이미지보다 크기 또는 해상도가 확장된 고해상도 이미지, 상기 제1 레벨 이미지보다 고주파수 정보를 포함하는 이미지, 또는 상기 제1 레벨 이미지보다 하위 비트플레인 정보를 포함하는 이미지 중 적어도 하나를 포함하는, 이미지 데이터를 처리하는 방법.
  16. 제11항에 있어서, 상기 분석 정보는,
    상기 제1 이미지에 포함된 복수의 영역들에 대해 각 영역의 속성 정보를 포함하는, 이미지 데이터를 처리하는 방법.
  17. 제16항에 있어서, 상기 분석 정보는,
    상기 복수의 영역들에 대한 분석 결과에 따라 각 영역별 중요도에 기반한 압축률을 포함하는, 이미지 데이터를 처리하는 방법.
  18. 제12항에 있어서, 상기 방법은,
    적어도 상기 제2 이미지를 상기 제2 이미지 처리 방식을 이용하여 생성된 복수의 제2 처리된 데이터들을 우선 순위에 따라 순차적으로 수신하는 동작; 및
    상기 제2 처리된 데이터를 수신된 순서에 따라 상기 제1 처리된 데이터와 합성하는 동작을 포함하는, 이미지 데이터를 처리하는 방법.
  19. 이미지 데이터를 처리하는 방법에 있어서,
    카메라로부터 획득한 로우 이미지로부터 생성된 제1 속성을 갖는 제1 레벨 이미지를 인코딩한 제1 이미지를 외부 전자 장치로부터 수신하는 동작;
    상기 수신된 제1 이미지를 디코딩하는 동작;
    상기 디코딩한 제1 이미지를 분석하여 분석 정보를 생성하는 동작;
    상기 생성한 분석 정보를 상기 외부 전자 장치로 전송하는 동작;
    상기 분석 정보에 기반하여 상기 로우 이미지로부터 생성된 제2 속성을 갖는 제2 레벨 이미지를 인코딩한 제2 이미지를 상기 외부 전자 장치로부터 수신하는 동작; 및
    상기 디코딩한 제1 이미지와 상기 수신한 제2 이미지를 병합하여 합성된 이미지를 생성하는 동작;을 포함하는, 이미지 데이터를 처리하는 방법.
  20. 제19항에 있어서, 상기 분석 정보는,
    상기 제1 이미지에 포함된 복수의 영역들에 대한 분석 결과에 따라 각 영역별 중요도에 기반한 압축률을 포함하는, 이미지 데이터를 처리하는 방법.
KR1020170127582A 2017-09-29 2017-09-29 외부 전자 장치에서 생성된 정보를 이용하여 이미지 데이터를 처리하는 방법 및 전자 장치 KR102385188B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020170127582A KR102385188B1 (ko) 2017-09-29 2017-09-29 외부 전자 장치에서 생성된 정보를 이용하여 이미지 데이터를 처리하는 방법 및 전자 장치
PCT/KR2018/011356 WO2019066450A1 (ko) 2017-09-29 2018-09-27 외부 전자 장치에서 생성된 정보를 이용하여 이미지 데이터를 처리하는 방법 및 전자 장치
US16/652,159 US11330197B2 (en) 2017-09-29 2018-09-27 Method for processing image data by using information generated from external electronic device, and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170127582A KR102385188B1 (ko) 2017-09-29 2017-09-29 외부 전자 장치에서 생성된 정보를 이용하여 이미지 데이터를 처리하는 방법 및 전자 장치

Publications (2)

Publication Number Publication Date
KR20190037842A KR20190037842A (ko) 2019-04-08
KR102385188B1 true KR102385188B1 (ko) 2022-04-12

Family

ID=65903495

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170127582A KR102385188B1 (ko) 2017-09-29 2017-09-29 외부 전자 장치에서 생성된 정보를 이용하여 이미지 데이터를 처리하는 방법 및 전자 장치

Country Status (3)

Country Link
US (1) US11330197B2 (ko)
KR (1) KR102385188B1 (ko)
WO (1) WO2019066450A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA3079625C (en) * 2017-10-24 2023-12-12 Nuralogix Corporation System and method for camera-based stress determination
KR20200117695A (ko) * 2019-04-05 2020-10-14 삼성전자주식회사 외부 전자 장치를 이용하여 카메라를 제어하는 전자 장치 및 방법
US10460516B1 (en) * 2019-04-26 2019-10-29 Vertebrae Inc. Three-dimensional model optimization
KR20200142883A (ko) 2019-06-13 2020-12-23 엘지이노텍 주식회사 카메라 장치 및 카메라 장치의 이미지 생성 방법
KR102213765B1 (ko) * 2019-08-09 2021-02-08 엘지이노텍 주식회사 이미지 센서, 카메라 모듈 및 카메라 모듈을 포함하는 광학 기기
US11849264B2 (en) * 2019-11-22 2023-12-19 Samsung Electronics Co., Ltd. Apparatus and method for white balance editing
KR102323329B1 (ko) * 2019-12-24 2021-11-08 주식회사 싸인텔레콤 열전소자를 이용한 고열 방지 기능을 갖는 임베디드 일체형 카메라
US20220103846A1 (en) * 2020-09-28 2022-03-31 Alibaba Group Holding Limited Supplemental enhancement information message in video coding
KR20210018381A (ko) * 2021-02-02 2021-02-17 엘지이노텍 주식회사 이미지 센서, 카메라 모듈 및 카메라 모듈을 포함하는 광학 기기

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002521880A (ja) 1998-07-15 2002-07-16 デジタル アクセレレーター コーポレーション 領域ベースのスケーラブルな画像コーディング
JP2010051013A (ja) 1999-08-27 2010-03-04 Koninkl Philips Electronics Nv 符号化方法、符号化装置、デコード方法及びデコーダ
JP2014524213A (ja) 2011-07-21 2014-09-18 ロッサト、ルカ 階層化された信号のデコードおよび信号再構成

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3907168B2 (ja) 2001-12-07 2007-04-18 富士フイルム株式会社 画像利用サービスシステム及び端末装置
JP2004336343A (ja) * 2003-05-07 2004-11-25 Canon Inc 画像処理システム
WO2007066925A1 (en) 2005-12-07 2007-06-14 Electronics And Telecommunications Research Institute Digital photo content processing system and method and apparatus for transmitting/receiving digital photo contents thereof
US8781175B2 (en) * 2007-05-07 2014-07-15 The Penn State Research Foundation On-site composition and aesthetics feedback through exemplars for photographers
KR100955577B1 (ko) * 2008-01-28 2010-04-30 엠텍비젼 주식회사 이미지 평가 정보를 제공하는 이미지 처리 장치 및 방법
JP5099647B2 (ja) 2009-11-11 2012-12-19 Necビッグローブ株式会社 動画画像処理システム、サーバ、動画画像の処理方法、およびプログラム
JP5609147B2 (ja) * 2010-02-23 2014-10-22 富士通株式会社 映像配信システム、中継装置及び映像配信プログラム
US8503539B2 (en) 2010-02-26 2013-08-06 Bao Tran High definition personal computer (PC) cam
US9047666B2 (en) * 2013-03-12 2015-06-02 Futurewei Technologies, Inc. Image registration and focus stacking on mobile platforms
KR102380979B1 (ko) * 2015-01-05 2022-04-01 삼성전자 주식회사 이미지의 메타데이터 관리 방법 및 장치
FR3033046B1 (fr) * 2015-02-23 2019-06-14 Safran Aircraft Engines Procede et dispositif de controle de l'etat d'un moteur d'aeronef a distance
US10424079B2 (en) * 2017-04-05 2019-09-24 Here Global B.V. Unsupervised approach to environment mapping at night using monocular vision

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002521880A (ja) 1998-07-15 2002-07-16 デジタル アクセレレーター コーポレーション 領域ベースのスケーラブルな画像コーディング
JP2010051013A (ja) 1999-08-27 2010-03-04 Koninkl Philips Electronics Nv 符号化方法、符号化装置、デコード方法及びデコーダ
JP2014524213A (ja) 2011-07-21 2014-09-18 ロッサト、ルカ 階層化された信号のデコードおよび信号再構成

Also Published As

Publication number Publication date
US11330197B2 (en) 2022-05-10
WO2019066450A1 (ko) 2019-04-04
US20200252555A1 (en) 2020-08-06
KR20190037842A (ko) 2019-04-08

Similar Documents

Publication Publication Date Title
KR102385188B1 (ko) 외부 전자 장치에서 생성된 정보를 이용하여 이미지 데이터를 처리하는 방법 및 전자 장치
KR102287043B1 (ko) 카메라를 이용하여 획득한 이미지를 처리하는 전자 장치 및 그 동작 방법
US10812830B2 (en) Method and electronic device for processing raw image acquired through camera by using external electronic device
CN105874776B (zh) 图像处理设备和方法
US11017598B2 (en) Method for processing omni-directional image using padding area and apparatus supporting the same
KR102385365B1 (ko) 전자 장치 및 전자 장치에서 이미지 데이터를 압축하는 방법
CN110581948A (zh) 提供质量定制图像的电子装置及其控制方法、服务器
KR102412007B1 (ko) 전자 장치 및 전자 장치에서 하이 다이나믹 레인지 이미지 데이터를 압축하는 방법
KR102386385B1 (ko) 전자 장치 및 전자 장치의 이미지 압축 방법
KR102383129B1 (ko) 이미지에 포함된 오브젝트의 카테고리 및 인식률에 기반하여 이미지를 보정하는 방법 및 이를 구현한 전자 장치
KR102499203B1 (ko) 신뢰도에 기반하여 객체를 인식하는 전자 장치 및 방법
WO2021078001A1 (zh) 一种图像增强方法及装置
US20190251670A1 (en) Electronic device and method for correcting images using external electronic device
US20190272625A1 (en) Electronic device and method for correcting images based on image feature information and image correction scheme
CN111788603A (zh) 用于以第二图像处理方案在外部电子设备中校正以第一图像处理方案校正的图像的电子设备和方法
KR20200117695A (ko) 외부 전자 장치를 이용하여 카메라를 제어하는 전자 장치 및 방법
US11393078B2 (en) Electronic device and method for correcting image on basis of image transmission state
US11144197B2 (en) Electronic device performing function according to gesture input and operation method thereof
CN111886874A (zh) 用于通知图像信号处理的更新的电子设备及用于操作电子设备的方法
KR20160112810A (ko) 이미지 처리 방법 및 그 전자 장치
CN115516494A (zh) 用于生成图像的方法及其电子装置
US20190349519A1 (en) Electronic device and image processing method therefor
US11380096B2 (en) Electronic device for performing image processing and method thereof
US20210306624A1 (en) Electronic device for performing image compression and operating method of electronic device
US20200273137A1 (en) Electronic device for providing image related to inputted information, and operating method therefor

Legal Events

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