KR20250066353A - Method for providing user interface in extended reality environment and an electronic device thereof - Google Patents
Method for providing user interface in extended reality environment and an electronic device thereof Download PDFInfo
- Publication number
- KR20250066353A KR20250066353A KR1020230177872A KR20230177872A KR20250066353A KR 20250066353 A KR20250066353 A KR 20250066353A KR 1020230177872 A KR1020230177872 A KR 1020230177872A KR 20230177872 A KR20230177872 A KR 20230177872A KR 20250066353 A KR20250066353 A KR 20250066353A
- Authority
- KR
- South Korea
- Prior art keywords
- electronic device
- image
- background
- blur
- user interface
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/002—Specific input/output arrangements not covered by G06F3/01 - G06F3/16
- G06F3/005—Input arrangements through a video camera
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/013—Eye tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Optics & Photonics (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
본 문서에 개시되는 일 실시 예에 따른 헤드 마운트 전자 장치는, 적어도 하나의 카메라, 적어도 하나의 디스플레이, 인스트럭션들을 저장하는 메모리, 및 프로세서를 포함할 수 있다. 상기 프로세서는, 상기 인스트럭션들이 실행될 시, 상기 적어도 하나의 카메라를 통해 제1 배경 이미지를 획득하도록 설정될 수 있다. 상기 프로세서는, 상기 인스트럭션들이 실행될 시, 상기 제1 배경 이미지를 배경 블러 이미지로 생성하도록 설정될 수 있다. 상기 프로세서는, 상기 인스트럭션들이 실행될 시, 상기 제1 배경 이미지 상에 표시될 사용자 인터페이스에 대한 표시 정보를 확인하도록 설정될 수 있다. 상기 프로세서는, 상기 인스트럭션들이 실행될 시, 상기 표시 정보를 기반으로 상기 사용자 인터페이스와 합성할 상기 배경 블러 이미지의 제1 부분을 획득하도록 설정될 수 있다. 상기 프로세서는, 상기 인스트럭션들이 실행될 시, 상기 제1 배경 이미지, 상기 배경 블러 이미지의 제1 부분 및 상기 사용자 인터페이스를 합성하여 상기 적어도 하나의 디스플레이 상에 표시하도록 설정될 수 있다. 이 외에도 본 문서를 통해 파악되는 다양한 실시 예들이 가능하다.A head mounted electronic device according to an embodiment disclosed in the present document may include at least one camera, at least one display, a memory storing instructions, and a processor. The processor may be configured to acquire a first background image through the at least one camera when the instructions are executed. The processor may be configured to generate the first background image as a background blur image when the instructions are executed. The processor may be configured to check display information for a user interface to be displayed on the first background image when the instructions are executed. The processor may be configured to acquire a first portion of the background blur image to be synthesized with the user interface based on the display information when the instructions are executed. The processor may be configured to synthesize the first background image, the first portion of the background blur image, and the user interface when the instructions are executed, and display the synthesized image on the at least one display. In addition to these, various embodiments are possible as identified through the present document.
Description
본 문서에 개시되는 다양한 실시 예들은 확장현실 환경에서 사용자 인터페이스를 제공하는 방법 및 그 전자 장치에 관한 것이다.Various embodiments disclosed in this document relate to a method and an electronic device for providing a user interface in an augmented reality environment.
최근 증강 현실(augmented reality, AR), 가상 현실(virtual reality, VR), 융합 현실(mixed reality, MR) 등 을 포괄하는 확장 현실(extended reality, XR)을 제공하는 서비스가 개발되고 있다. 특히, 이러한 XR 서비스들 중에서도 카메라, 게임 등과 관련된 다양한 XR 어플리케이션들이 사용자들에 의해 널리 이용되고 있다.Recently, services that provide extended reality (XR), including augmented reality (AR), virtual reality (VR), and mixed reality (MR), are being developed. In particular, among these XR services, various XR applications related to cameras and games are being widely used by users.
상술한 정보는 본 개시에 대한 이해를 돕기 위한 목적으로 하는 배경 기술(related art)로 제공될 수 있다. 상술한 내용 중 어느 것도 본 개시와 관련된 종래 기술(prior art)로서 적용될 수 있는지에 대하여 어떠한 주장이나 결정이 제기되지 않는다.The above information may be provided as related art for the purpose of assisting in understanding the present disclosure. No claim or determination is made as to whether any of the above is applicable as prior art related to the present disclosure.
본 문서에 개시되는 일 실시 예에 따른 전자 장치는, 적어도 하나의 카메라, 적어도 하나의 디스플레이, 인스트럭션들을 저장하는 메모리, 및 프로세서를 포함할 수 있다. 상기 프로세서는, 상기 인스트럭션들이 실행될 시, 상기 적어도 하나의 카메라를 통해 제1 배경 이미지를 획득하도록 설정될 수 있다. 상기 프로세서는, 상기 인스트럭션들이 실행될 시, 상기 제1 배경 이미지를 배경 블러 이미지로 생성하도록 설정될 수 있다. 상기 프로세서는, 상기 인스트럭션들이 실행될 시, 상기 제1 배경 이미지 상에 표시될 사용자 인터페이스에 대한 표시 정보를 확인하도록 설정될 수 있다. 상기 프로세서는, 상기 인스트럭션들이 실행될 시, 상기 표시 정보를 기반으로 상기 사용자 인터페이스와 합성할 상기 배경 블러 이미지의 제1 부분을 획득하도록 설정될 수 있다. 상기 프로세서는, 상기 인스트럭션들이 실행될 시, 상기 제1 배경 이미지, 상기 배경 블러 이미지의 제1 부분 및 상기 사용자 인터페이스를 합성하여 상기 적어도 하나의 디스플레이 상에 표시하도록 설정될 수 있다.An electronic device according to an embodiment disclosed in the present document may include at least one camera, at least one display, a memory storing instructions, and a processor. The processor may be configured to acquire a first background image through the at least one camera when the instructions are executed. The processor may be configured to generate the first background image as a background blur image when the instructions are executed. The processor may be configured to check display information for a user interface to be displayed on the first background image when the instructions are executed. The processor may be configured to acquire a first portion of the background blur image to be synthesized with the user interface based on the display information when the instructions are executed. The processor may be configured to synthesize the first background image, the first portion of the background blur image, and the user interface and display the synthesized image on the at least one display when the instructions are executed.
도 1은 일 실시 예에 따른 네트워크 환경 내의 전자 장치의 블록도이다.
도 2는 비교 예에 따른, 복수의 어플리케이션이 실행된 사용자 인터페이스를 표현하는 방식을 설명하는 도면이다.
도 3은 일 실시 예에 따른, 전자 장치의 구성을 설명하는 도면이다.
도 4는 일 실시 예에 따라, 전자 장치에서 사용자 인터페이스를 표현하는 방식을 설명하는 도면이다.
도 5는 일 실시 예에 따른, 전자 장치에서 사용자 인터페이스를 배경 블러 이미지와 합성하여 표시하는 방식을 설명하는 도면이다.
도 6은 일 실시 예에 따라, 전자 장치에서 블러 처리된 사용자 인터페이스를 배경 이미지 상에 표시하는 방식을 설명하는 도면이다.
도 7a 및 도 7b는 일 실시 예에 따른, 전자 장치에서 사용자 인터페이스에 포함된 윈도우의 위치 변경 시 블러 처리 방식을 설명하는 도면이다.
도 8a 및 도 8b는 일 실시 예에 따른, 전자 장치에서 사용자 인터페이스에 포함된 윈도우의 회전 각도 변경 시 블러 처리 방식을 설명하는 도면이다.
도 9a 및 도 9b는 일 실시 예에 따른, 전자 장치에서 사용자 인터페이스에 포함된 윈도우의 크기 변경 시 블러 처리 방식을 설명하는 도면이다.
도 10a, 도 10b, 도 10c 및 도 10d는 일 실시 예에 따른, 전자 장치에서 스테레오 렌더링 수행 시 블러 처리 방식을 설명하는 도면이다.
도 11a, 도 11b 및 도 11c는 일 실시 예에 따라, 전자 장치에서 배경 이미지의 깊이 데이터를 기반으로 블러 세기를 적용하는 방식을 설명하는 도면이다.
도 12a, 도 12b 및 도 12c는 일 실시 예에 따른, 다양한 종류의 사용자 인터페이스를 블러 처리하여 제공하는 방식을 설명하는 도면이다.
도 13은 일 실시 예에 따른, 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 14는 일 실시 예에 따른, 전자 장치에서 사용자 인터페이스를 배경 블러 이미지와 합성하여 표시하는 방법을 도시하는 흐름도이다.
도면의 설명과 관련하여, 동일 또는 유사한 구성요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.FIG. 1 is a block diagram of an electronic device within a network environment according to one embodiment.
Figure 2 is a drawing illustrating a method of representing a user interface in which multiple applications are executed, according to a comparative example.
FIG. 3 is a drawing illustrating a configuration of an electronic device according to one embodiment.
FIG. 4 is a drawing illustrating a method of representing a user interface in an electronic device according to one embodiment.
FIG. 5 is a diagram illustrating a method of displaying a user interface by synthesizing it with a background blur image in an electronic device according to one embodiment.
FIG. 6 is a diagram illustrating a method of displaying a blurred user interface on a background image in an electronic device, according to one embodiment.
FIGS. 7A and 7B are diagrams illustrating a blur processing method when the position of a window included in a user interface in an electronic device is changed according to one embodiment.
FIGS. 8A and 8B are diagrams illustrating a blur processing method when the rotation angle of a window included in a user interface in an electronic device changes according to one embodiment.
FIGS. 9A and 9B are diagrams illustrating a blur processing method when the size of a window included in a user interface in an electronic device is changed according to one embodiment.
FIGS. 10A, 10B, 10C, and 10D are diagrams illustrating a blur processing method when performing stereo rendering in an electronic device according to one embodiment.
FIGS. 11A, 11B, and 11C are diagrams illustrating a method of applying a blur intensity based on depth data of a background image in an electronic device, according to one embodiment.
FIGS. 12a, 12b and 12c are diagrams illustrating a method of providing various types of user interfaces by blurring them, according to one embodiment.
FIG. 13 is a flowchart illustrating a method of operating an electronic device according to one embodiment.
FIG. 14 is a flowchart illustrating a method of displaying a user interface by compositing it with a background blur image in an electronic device according to one embodiment.
In connection with the description of the drawings, the same or similar reference numerals may be used for identical or similar components.
이하, 첨부된 도면을 참조하여 본 문서에 개시된 다양한 실시 예들이 설명된다. 이는 본 발명의 다양한 실시 예들을 특정한 형태로 한정하려는 것이 아니며, 본 발명의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다.Hereinafter, various embodiments disclosed in this document will be described with reference to the attached drawings. It should be understood that this is not intended to limit the various embodiments of the present invention to a specific form, but includes various modifications, equivalents, and/or alternatives of the present invention.
XR 환경에서 디스플레이를 통해 표시되는 콘텐트의 시인성을 확보하기 위해, 전자 장치는 디스플레이를 통해 표시되는 이미지에 블러(blur)와 같은 그래픽 효과를 적용할 수 있다. 예를 들어, 텍스트를 포함하는 콘텐트가 배경 이미지의 일부 영역 상에 중첩 표시되는 경우, 콘텐트가 불투명한 형태로 표시되면 배경 이미지의 시인성이 떨어지고, 콘텐트가 투명한 형태로 표시되면 콘텐트의 시인성이 떨어질 수 있다. 이러한 현상을 방지하기 위해, 전자 장치는 콘텐트가 표시되는 배경 영역에 블러 효과를 적용할 수 있다. In order to secure the visibility of content displayed through a display in an XR environment, an electronic device may apply a graphic effect, such as blur, to an image displayed through the display. For example, when content including text is overlapped and displayed on a portion of a background image, if the content is displayed in an opaque form, the visibility of the background image may be reduced, and if the content is displayed in a transparent form, the visibility of the content may be reduced. To prevent this phenomenon, an electronic device may apply a blur effect to the background area where the content is displayed.
전자 장치는 이미지 전체 영역에 대한 렌더링을 전처리하고, 블러가 적용된 이미지와 원본 이미지를 합성하여 렌더링 처리하는 방식으로 디스플레이 상에 표시되는 이미지의 일부 영역에 블러를 적용할 수 있으나, 이 과정에서 전자 장치의 성능(예: 처리 속도)이 저하될 수 있다. XR 환경에서 복수의 어플리케이션을 사용하는 경우, 전자 장치는 이러한 그래픽 처리 작업들을 복수의 어플리케이션 UI(user interface) 객체(예: 윈도우)에 대하여 반복 수행해야 하기 때문에, 전자 장치의 성능 문제는 더욱 부각될 수 있다.Electronic devices can blur certain areas of an image displayed on a display by preprocessing the rendering of the entire image area and synthesizing the blurred image with the original image to perform rendering processing. However, the performance (e.g., processing speed) of the electronic device may be degraded during this process. When using multiple applications in an XR environment, the electronic device must repeatedly perform these graphic processing tasks for multiple application UI (user interface) objects (e.g., windows), so the performance issue of the electronic device may be further highlighted.
본 문서의 다양한 실시 예들에서는, VST(video see through) 환경에서 사용자 인터페이스에 블러와 같은 그래픽 효과를 적용하여 제공하는 경우, 전체 뷰 영역에 대응하는 배경 이미지의 전체 블러 이미지로부터 상기 사용자 인터페이스의 배경 영역에 대응하는 부분 블러 이미지를 획득하고, 상기 부분 블러 이미지를 상기 사용자 인터페이스와 합성하여 표시함으로써, 복잡한 그래픽 작업을 빠르게 처리하고 전자 장치의 성능 저하를 방지하기 위한 다양한 실시 예들을 제공할 수 있다.In various embodiments of the present document, when providing a graphic effect such as blur to a user interface in a VST (video see through) environment, various embodiments can be provided for quickly processing complex graphic tasks and preventing performance degradation of an electronic device by obtaining a partial blur image corresponding to a background area of the user interface from an entire blur image of a background image corresponding to the entire view area, and synthesizing the partial blur image with the user interface and displaying it.
도 1은 일 실시 예에 따른 네트워크 환경(100) 내의 전자 장치를 도시한 도면이다.FIG. 1 is a diagram illustrating an electronic device within a network environment (100) according to one embodiment.
도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108) 중 적어도 하나와 통신할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 모듈(150), 음향 출력 모듈(155), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 연결 단자(178), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(178))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시 예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(176), 카메라 모듈(180), 또는 안테나 모듈(197))은 하나의 구성요소(예: 디스플레이 모듈(160))로 통합될 수 있다.Referring to FIG. 1, in a network environment (100), an electronic device (101) may communicate with an electronic device (102) through a first network (198) (e.g., a short-range wireless communication network), or may communicate with at least one of an electronic device (104) or a server (108) through a second network (199) (e.g., a long-range wireless communication network). According to one embodiment, the electronic device (101) may communicate with the electronic device (104) through the server (108). According to one embodiment, the electronic device (101) may include a processor (120), a memory (130), an input module (150), an audio output module (155), a display module (160), an audio module (170), a sensor module (176), an interface (177), a connection terminal (178), a haptic module (179), a camera module (180), a power management module (188), a battery (189), a communication module (190), a subscriber identification module (196), or an antenna module (197). In some embodiments, the electronic device (101) may omit at least one of these components (e.g., the connection terminal (178)), or may include one or more other components. In some embodiments, some of these components (e.g., the sensor module (176), the camera module (180), or the antenna module (197)) may be integrated into one component (e.g., the display module (160)).
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시 예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 저장하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일 실시 예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(101)가 메인 프로세서(121) 및 보조 프로세서(123)를 포함하는 경우, 보조 프로세서(123)는 메인 프로세서(121)보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.The processor (120) may control at least one other component (e.g., a hardware or software component) of the electronic device (101) connected to the processor (120) by executing, for example, software (e.g., a program (140)), and may perform various data processing or calculations. According to one embodiment, as at least a part of the data processing or calculation, the processor (120) may store a command or data received from another component (e.g., a sensor module (176) or a communication module (190)) in a volatile memory (132), process the command or data stored in the volatile memory (132), and store result data in a non-volatile memory (134). According to one embodiment, the processor (120) may include a main processor (121) (e.g., a central processing unit or an application processor) or an auxiliary processor (123) (e.g., a graphic processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor) that can operate independently or together therewith. For example, if the electronic device (101) includes a main processor (121) and a secondary processor (123), the secondary processor (123) may be configured to use lower power than the main processor (121) or to be specialized for a given function. The secondary processor (123) may be implemented separately from the main processor (121) or as a part thereof.
보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일 실시 예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다. 일 실시 예에 따르면, 보조 프로세서(123)(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능 모델이 수행되는 전자 장치(101) 자체에서 수행될 수 있고, 별도의 서버(예: 서버(108))를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted Boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다.The auxiliary processor (123) may control at least a part of functions or states associated with at least one of the components of the electronic device (101) (e.g., the display module (160), the sensor module (176), or the communication module (190)), for example, while the main processor (121) is in an inactive (e.g., sleep) state, or together with the main processor (121) while the main processor (121) is in an active (e.g., application execution) state. According to one embodiment, the auxiliary processor (123) (e.g., an image signal processor or a communication processor) may be implemented as a part of another functionally related component (e.g., a camera module (180) or a communication module (190)). According to one embodiment, the auxiliary processor (123) (e.g., a neural network processing device) may include a hardware structure specialized for processing an artificial intelligence model. The artificial intelligence model may be generated through machine learning. Such learning may be performed, for example, in the electronic device (101) itself on which the artificial intelligence model is executed, or may be performed through a separate server (e.g., server (108)). The learning algorithm may include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model may include a plurality of artificial neural network layers. The artificial neural network may be one of a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), deep Q-networks, or a combination of two or more of the above, but is not limited to the examples described above. In addition to the hardware structure, the artificial intelligence model may additionally or alternatively include a software structure.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서 모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.The memory (130) can store various data used by at least one component (e.g., processor (120) or sensor module (176)) of the electronic device (101). The data can include, for example, software (e.g., program (140)) and input data or output data for commands related thereto. The memory (130) can include volatile memory (132) or nonvolatile memory (134).
프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.The program (140) may be stored as software in memory (130) and may include, for example, an operating system (142), middleware (144), or an application (146).
입력 모듈(150)은, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(150)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다.The input module (150) can receive commands or data to be used in a component of the electronic device (101) (e.g., a processor (120)) from an external source (e.g., a user) of the electronic device (101). The input module (150) can include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).
음향 출력 모듈(155)은 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 모듈(155)은, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다. 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일 실시 예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.The audio output module (155) can output an audio signal to the outside of the electronic device (101). The audio output module (155) can include, for example, a speaker or a receiver. The speaker can be used for general purposes such as multimedia playback or recording playback. The receiver can be used to receive an incoming call. According to one embodiment, the receiver can be implemented separately from the speaker or as a part thereof.
디스플레이 모듈(160)은 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시 예에 따르면, 디스플레이 모듈(160)은 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다.The display module (160) can visually provide information to an external party (e.g., a user) of the electronic device (101). The display module (160) can include, for example, a display, a holographic device, or a projector and a control circuit for controlling the device. According to one embodiment, the display module (160) can include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of a force generated by the touch.
오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일 실시 예에 따르면, 오디오 모듈(170)은, 입력 모듈(150)을 통해 소리를 획득하거나, 음향 출력 모듈(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.The audio module (170) can convert sound into an electrical signal, or vice versa, convert an electrical signal into sound. According to one embodiment, the audio module (170) can obtain sound through an input module (150), or output sound through an audio output module (155), or an external electronic device (e.g., an electronic device (102)) (e.g., a speaker or a headphone) directly or wirelessly connected to the electronic device (101).
센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일 실시 예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.The sensor module (176) can detect an operating state (e.g., power or temperature) of the electronic device (101) or an external environmental state (e.g., user state) and generate an electric signal or data value corresponding to the detected state. According to one embodiment, the sensor module (176) can include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.
인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일 실시 예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.The interface (177) may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device (101) with an external electronic device (e.g., the electronic device (102)). According to one embodiment, the interface (177) may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일 실시 예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.The connection terminal (178) may include a connector through which the electronic device (101) may be physically connected to an external electronic device (e.g., the electronic device (102)). According to one embodiment, the connection terminal (178) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일 실시 예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.The haptic module (179) can convert an electrical signal into a mechanical stimulus (e.g., vibration or movement) or an electrical stimulus that a user can perceive through a tactile or kinesthetic sense. According to one embodiment, the haptic module (179) can include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일 실시 예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.The camera module (180) can capture still images and moving images. According to one embodiment, the camera module (180) can include one or more lenses, image sensors, image signal processors, or flashes.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일 실시 예에 따르면, 전력 관리 모듈(188)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.The power management module (188) can manage power supplied to the electronic device (101). According to one embodiment, the power management module (188) can be implemented as, for example, at least a part of a power management integrated circuit (PMIC).
배터리(189)는 전자 장치(101)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일 실시 예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.The battery (189) can power at least one component of the electronic device (101). In one embodiment, the battery (189) can include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일 실시 예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제1 네트워크(198)(예: 블루투스, Wi-Fi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제2 네트워크(199)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치(104)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제1 네트워크(198) 또는 제2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 또는 인증할 수 있다.The communication module (190) may support establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (101) and an external electronic device (e.g., the electronic device (102), the electronic device (104), or the server (108)), and performance of communication through the established communication channel. The communication module (190) may operate independently from the processor (120) (e.g., the application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (190) may include a wireless communication module (192) (e.g., a cellular communication module, a short-range wireless communication module, or a GNSS (global navigation satellite system) communication module) or a wired communication module (194) (e.g., a local area network (LAN) communication module, or a power line communication module). Among these communication modules, a corresponding communication module may communicate with an external electronic device (104) via a first network (198) (e.g., a short-range communication network such as Bluetooth, Wi-Fi (wireless fidelity) direct, or IrDA (infrared data association)) or a second network (199) (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or WAN)). These various types of communication modules may be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module (192) may use subscriber information (e.g., an international mobile subscriber identity (IMSI)) stored in the subscriber identification module (196) to identify or authenticate the electronic device (101) within a communication network such as the first network (198) or the second network (199).
무선 통신 모듈(192)은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈(192)은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈(192)은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈(192)은 전자 장치(101), 외부 전자 장치(예: 전자 장치(104)) 또는 네트워크 시스템(예: 제2 네트워크(199))에 규정되는 다양한 요구사항을 지원할 수 있다. 일 실시 예에 따르면, 무선 통신 모듈(192)은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.The wireless communication module (192) can support a 5G network and next-generation communication technology after a 4G network, for example, NR access technology (new radio access technology). The NR access technology can support high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), terminal power minimization and connection of multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low-latency communications)). The wireless communication module (192) can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate. The wireless communication module (192) may support various technologies for securing performance in a high-frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module (192) may support various requirements specified in an electronic device (101), an external electronic device (e.g., electronic device (104)), or a network system (e.g., second network (199)). According to one embodiment, the wireless communication module (192) may support a peak data rate (e.g., 20 Gbps or more) for eMBB realization, a loss coverage (e.g., 164 dB or less) for mMTC realization, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL) each, or 1 ms or less for round trip) for URLLC realization.
안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일 실시 예에 따르면, 안테나 모듈(197)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일 실시 예에 따르면, 안테나 모듈(197)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제1 네트워크(198) 또는 제2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 상기 복수의 안테나로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시 예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다.The antenna module (197) can transmit or receive signals or power to or from the outside (e.g., an external electronic device). According to one embodiment, the antenna module (197) may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). According to one embodiment, the antenna module (197) may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network (198) or the second network (199), may be selected from the plurality of antennas by, for example, the communication module (190). A signal or power may be transmitted or received between the communication module (190) and the external electronic device through the selected at least one antenna. According to some embodiments, in addition to the radiator, another component (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as a part of the antenna module (197).
다양한 실시 예에 따르면, 안테나 모듈(197)은 mmWave 안테나 모듈을 형성할 수 있다. 일 실시 예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 상기 인쇄 회로 기판의 제1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원할 수 있는 RFIC, 및 상기 인쇄 회로 기판의 제2 면(예: 윗면 또는 측면)에 또는 그에 인접하여 배치되고 상기 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.According to various embodiments, the antenna module (197) may form a mmWave antenna module. According to one embodiment, the mmWave antenna module may include a printed circuit board, an RFIC positioned on or adjacent a first surface (e.g., a bottom surface) of the printed circuit board and capable of supporting a designated high-frequency band (e.g., a mmWave band), and a plurality of antennas (e.g., an array antenna) positioned on or adjacent a second surface (e.g., a top surface or a side surface) of the printed circuit board and capable of transmitting or receiving signals in the designated high-frequency band.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.At least some of the above components may be interconnected and exchange signals (e.g., commands or data) with each other via a communication method between peripheral devices (e.g., a bus, a general purpose input and output (GPIO), a serial peripheral interface (SPI), or a mobile industry processor interface (MIPI)).
일 실시 예에 따르면, 명령 또는 데이터는 제2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 외부의 전자 장치(102, 또는 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일 실시 예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부의 전자 장치들(102, 104, 또는 108) 중 하나 이상의 외부의 전자 장치에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC: mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(101)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 다른 실시 예에 있어서, 외부의 전자 장치(104)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(108)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일 실시 예에 따르면, 외부의 전자 장치(104) 또는 서버(108)는 제2 네트워크(199) 내에 포함될 수 있다. 전자 장치(101)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다.According to one embodiment, a command or data may be transmitted or received between the electronic device (101) and an external electronic device (104) via a server (108) connected to a second network (199). Each of the external electronic devices (102 or 104) may be the same or a different type of device as the electronic device (101). According to one embodiment, all or part of the operations executed in the electronic device (101) may be executed in one or more of the external electronic devices (102, 104, or 108). For example, when the electronic device (101) is to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device (101) may, instead of or in addition to executing the function or service by itself, request one or more external electronic devices to perform at least a part of the function or service. One or more external electronic devices that have received the request may execute at least a part of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device (101). The electronic device (101) may provide the result, as is or additionally processed, as at least a part of a response to the request. For this purpose, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used, for example. The electronic device (101) may provide an ultra-low latency service by using distributed computing or mobile edge computing, for example. In another embodiment, the external electronic device (104) may include an IoT (Internet of Things) device. The server (108) may be an intelligent server using machine learning and/or a neural network. According to one embodiment, the external electronic device (104) or the server (108) may be included in the second network (199). The electronic device (101) can be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.
도 2는 비교 예에 따른, 복수의 어플리케이션이 실행된 사용자 인터페이스를 표현하는 방식을 설명하는 도면이다. 비교 예에서, 전자 장치(예: 도 1의 전자 장치(101))는 VST(video see through) 환경에서 복수의 어플리케이션의 실행 화면을 포함하는 사용자 인터페이스를 제공하기 위한 렌더링 파이프라인을 수행할 수 있다.FIG. 2 is a drawing illustrating a method of representing a user interface in which multiple applications are executed according to a comparative example. In the comparative example, an electronic device (e.g., the electronic device (101) of FIG. 1) may perform a rendering pipeline for providing a user interface including execution screens of multiple applications in a VST (video see through) environment.
도 2를 참조하면, 전자 장치(101)는 복수의 어플리케이션의 실행 화면을 포함하는 사용자 인터페이스를 제공하기 위해 어플리케이션 렌더링(210) 과정 및 컴포지션(220) 과정을 수행할 수 있다.Referring to FIG. 2, the electronic device (101) can perform an application rendering (210) process and a composition (220) process to provide a user interface including execution screens of multiple applications.
비교 예에서, 어플리케이션 렌더링(210) 과정은 전자 장치(101)에서 실행된 어플리케이션의 실행 화면을 표시하기 위해 각 어플리케이션에 대응하는 버퍼에 각 어플리케이션의 실행 화면을 렌더링하는 것으로, 배경 캡처(211) 동작, 블러 처리(212) 동작 또는 렌더링 수행(213) 동작을 포함할 수 있다. In a comparative example, the application rendering (210) process renders the execution screen of each application to a buffer corresponding to each application to display the execution screen of the application executed on the electronic device (101), and may include a background capture (211) operation, a blur processing (212) operation, or a rendering performance (213) operation.
비교 예에서, 배경 캡처(211) 동작은 사용자에게 보여지는 전체 뷰 영역에 표시되는 배경 이미지를 획득하기 위한 것으로, 상기 전체 뷰 영역은 사용자가 한 번에 볼 수 있는 시야(field of view) 영역에 대응될 수 있다. 전자 장치(101)는 사용자가 전자 장치(101)를 착용한 동안 사용자의 머리 자세와 시야 방향을 확인하고, 상기 확인된 머리 자세 및/또는 시야 방향을 고려하여 상기 전체 뷰 영역을 결정할 수 있다. 전자 장치(101)는 상기 결정된 전체 뷰 영역을 기반으로 실제 공간 및/또는 가상 공간에 대한 배경 이미지를 획득할 수 있다. In the comparative example, the background capture (211) operation is for obtaining a background image displayed in the entire view area shown to the user, and the entire view area may correspond to a field of view area that the user can see at one time. The electronic device (101) may check the user's head posture and view direction while the user wears the electronic device (101), and determine the entire view area in consideration of the checked head posture and/or view direction. The electronic device (101) may obtain a background image for the actual space and/or virtual space based on the determined entire view area.
비교 예에서, 블러 처리(212) 동작은 상기 배경 이미지 상에 표시되는 어플리케이션의 실행 화면의 시인성을 확보하기 위한 것으로, 상기 배경 이미지에서 상기 실행 화면이 배치되는 위치에 대응하는 일부 영역에 대한 선명도를 낮추는(또는 투명도를 높이는) 방식으로 수행될 수 있다. 전자 장치(101)는 상기 배경 이미지 상에서 상기 어플리케이션의 실행 화면이 표시되는 위치의 좌표를 확인하고, 상기 확인된 좌표를 기반으로 상기 배경 이미지 내 상기 실행 화면의 배경 영역을 식별할 수 있다. 전자 장치(110)는 상기 배경 이미지로부터 상기 식별된 배경 영역을 캡처하거나 또는 상기 식별된 배경 영역을 크롭(crop)하여 상기 배경 영역의 이미지를 획득하고, 상기 배경 영역의 이미지에 블러 효과를 적용할 수 있다. In the comparative example, the blur processing (212) operation is to secure the visibility of the execution screen of the application displayed on the background image, and can be performed by lowering the sharpness (or increasing the transparency) of a portion of the background image corresponding to the position where the execution screen is placed. The electronic device (101) can check the coordinates of the position where the execution screen of the application is displayed on the background image, and identify the background area of the execution screen within the background image based on the checked coordinates. The electronic device (110) can capture the identified background area from the background image or crop the identified background area to obtain an image of the background area, and apply a blur effect to the image of the background area.
비교 예에서, 렌더링 수행(213) 동작은 상기 블러 처리된 배경 영역의 이미지 위에 상기 어플리케이션의 실행 화면을 렌더링하는 것일 수 있다. 전자 장치(101)는 상기 실행 화면을 상기 블러 처리된 배경 영역의 이미지와 합성하는 방식으로 상기 실행 화면에 대한 렌더링을 수행할 수 있다. 비교 예에서, 전자 장치(101)는 배경 캡처(211) 동작, 블러 처리(212) 동작 및 렌더링 수행(213) 동작을 실행 중인 어플리케이션의 개수만큼 반복 수행할 수 있다.In the comparative example, the rendering performance (213) operation may be rendering the execution screen of the application on the image of the blurred background area. The electronic device (101) may perform rendering on the execution screen in a manner of synthesizing the execution screen with the image of the blurred background area. In the comparative example, the electronic device (101) may repeatedly perform the background capture (211) operation, the blur processing (212) operation, and the rendering performance (213) operation as many times as the number of applications being executed.
비교 예에서, 컴포지션(220) 과정은 어플리케이션 렌더링(210) 과정을 통해 블러 처리된 복수 개의 어플리케이션의 실행 화면들을 상기 배경 이미지의 3차원 공간 상에 표현하기 위한 과정으로, 좌안 렌더링(221) 동작, 우안 렌더링(222) 동작, 왜곡 처리(223, 224) 동작, 색상 보정(225, 226) 동작, 합성(227) 동작 또는 디스플레이(228) 동작을 포함할 수 있다.In a comparative example, the composition (220) process is a process for expressing execution screens of multiple applications blurred through the application rendering (210) process on the three-dimensional space of the background image, and may include a left-eye rendering (221) operation, a right-eye rendering (222) operation, a distortion processing (223, 224) operation, a color correction (225, 226) operation, a composition (227) operation, or a display (228) operation.
비교 예에서, 좌안 렌더링(221) 동작은 사용자의 좌측 시야를 기준으로 상기 배경 이미지의 3차원 공간에 대하여 상기 실행 화면들을 렌더링하기 위한 것이고, 우안 렌더링(222) 동작은 사용자의 우측 시야를 기준으로 상기 배경 이미지의 3차원 공간에 2차원 형태의 상기 실행 화면들을 렌더링하기 위한 것일 수 있다. 전자 장치(101)는 사용자의 좌안용 디스플레이와 우안용 디스플레이 각각에 표시되는 상기 배경 이미지의 3차원 공간에 대하여 상기 각 어플리케이션에 대응하는 버퍼를 합성할 수 있다. 이 때, 전자 장치(101)는 각 어플리케이션의 실행 화면이 배치되는 상기 배경 이미지의 3차원 공간 내 위치와 깊이 데이터를 고려하여 순차적으로 합성을 수행할 수 있다.In a comparative example, the left-eye rendering (221) operation may be for rendering the execution screens in a three-dimensional space of the background image based on the user's left field of vision, and the right-eye rendering (222) operation may be for rendering the execution screens in a two-dimensional form in the three-dimensional space of the background image based on the user's right field of vision. The electronic device (101) may synthesize buffers corresponding to each application for the three-dimensional space of the background image displayed on each of the user's left-eye display and the right-eye display. At this time, the electronic device (101) may sequentially perform synthesis by considering the position and depth data of the background image in which the execution screen of each application is arranged within the three-dimensional space.
비교 예에서, 왜곡 처리(223) 동작은 사용자의 좌측 시야를 기준으로 렌더링된 실행 화면들의 왜곡을 처리하기 위한 것이고, 왜곡 처리(224) 동작은 사용자의 우측 시야를 기준으로 렌더링된 실행 화면들의 왜곡을 처리하기 위한 것일 수 있다. 전자 장치(101)는 곡면 형태의 좌/우 디스플레이의 시야각을 넓히기 위해 배치되는 볼록 렌즈에 의하여 사용자의 좌측 및 우측 시야에 보여지는 왜곡을 보정하기 위해, 각 어플리케이션에 대응하는 좌/우 버퍼에 대하여 왜곡을 처리할 수 있다.In a comparative example, the distortion processing (223) operation may be for processing distortion of execution screens rendered based on the user's left field of view, and the distortion processing (224) operation may be for processing distortion of execution screens rendered based on the user's right field of view. The electronic device (101) may process distortion for left and right buffers corresponding to each application in order to correct distortions shown to the user's left and right fields of view by convex lenses arranged to widen the field of view of the curved left and right displays.
비교 예에서, 색상 보정(225) 동작은 사용자의 좌측 시야를 기준으로 실행 화면들의 색상을 보정하기 위한 것이고, 색상 보정(226) 동작은 사용자의 우측 시야를 기준으로 렌더링된 실행 화면들의 색상을 보정하기 위한 것일 수 있다. 전자 장치(101)는 RGB 파장 별 굴절률의 차이로 인한 색수차를 제거하기 위해, 각 어플리케이션에 대응하는 좌/우 버퍼에 대한 색상 보정을 수행할 수 있다.In a comparative example, the color correction (225) operation may be for correcting the colors of execution screens based on the user's left field of vision, and the color correction (226) operation may be for correcting the colors of execution screens rendered based on the user's right field of vision. The electronic device (101) may perform color correction for the left/right buffers corresponding to each application in order to remove chromatic aberration due to the difference in refractive index for each RGB wavelength.
비교 예에서, 전자 장치(101)는 합성(227) 동작을 통해 각 어플리케이션에 대응하는 좌/우 버퍼를 한 장의 이미지로 합성할 수 있다.In a comparative example, the electronic device (101) can synthesize left and right buffers corresponding to each application into one image through a synthesis (227) operation.
비교 예에서, 전자 장치(101)는 디스플레이(228) 동작을 통해 상기 합성된 한 장의 이미지를 좌/우 디스플레이로 전달하여 표시할 수 있다.In a comparative example, the electronic device (101) can display the synthesized image by transmitting it to the left/right displays through the operation of the display (228).
비교 예에서, 전자 장치(101)는 실행 중인 어플리케이션의 개수만큼 어플리케이션 렌더링(210) 과정을 수행한 후 컴포지션(220) 과정을 거쳐 좌/우 디스플레이에 표시할 수 있는데, 이러한 과정들은 많은 연산을 필요로 하기 때문에 전자 장치(101)의 성능(예: 처리 속도)이 저하될 수 있다.In a comparative example, the electronic device (101) can perform the application rendering (210) process as many times as the number of running applications and then display them on the left and right displays through the composition (220) process. However, since these processes require a lot of calculations, the performance (e.g., processing speed) of the electronic device (101) may be reduced.
도 3은 일 실시 예에 따른, 전자 장치(300)의 구성을 설명하는 도면이다.FIG. 3 is a drawing illustrating the configuration of an electronic device (300) according to one embodiment.
도 3을 참조하면, 전자 장치(300)는 표시하고자 하는 전체 뷰 영역에 대응하는 배경 이미지의 전체 배경 블러 이미지로부터 사용자 인터페이스가 표시되는 위치의 배경 영역에 대응하는 부분 블러 이미지를 획득하고, 획득된 부분 블러 이미지를 사용자 인터페이스 및 상기 배경 이미지와 합성하여 표시하는 장치로서, 하나 이상의 센서(310), 적어도 하나의 카메라(320), 적어도 하나의 디스플레이(330), 메모리(340) 또는 프로세서(350)를 포함할 수 있다. 도 3에서, 전자 장치(300)는 도 1에 도시된 전자 장치(101)에 대응될 수 있다. 다양한 실시 예에 따라, 전자 장치(300)는 사용자의 신체 일부에 착용 가능한 웨어러블 타입의 장치(예: HMD(head mounted display) 장치 또는 AR 글래스)이거나, 또는 사용자가 휴대가능한 휴대용 멀티미디어 장치(예: 스마트폰 또는 태블릿 PC)일 수 있다.Referring to FIG. 3, an electronic device (300) is a device that obtains a partial blur image corresponding to a background area at a location where a user interface is displayed from a full background blur image of a background image corresponding to an entire view area to be displayed, and displays the obtained partial blur image by synthesizing it with a user interface and the background image, and may include one or more sensors (310), at least one camera (320), at least one display (330), a memory (340), or a processor (350). In FIG. 3, the electronic device (300) may correspond to the electronic device (101) illustrated in FIG. 1. According to various embodiments, the electronic device (300) may be a wearable type device that can be worn on a part of a user's body (e.g., an HMD (head mounted display) device or AR glasses) or a portable multimedia device that a user can carry (e.g., a smartphone or a tablet PC).
일 실시 예에서, 하나 이상의 센서(310) (예: 도 1의 센서 모듈(176))는 전자 장치(300) 또는 전자 장치(300)를 착용한 사용자의 자세 정보를 측정할 수 있다. 예시적으로, 하나 이상의 센서(310)는 자이로 센서, 가속도 센서 또는 그 외 사용자 및/또는 전자 장치의 자세 정보를 측정할 수 있는 다양한 타입의 센서들을 포함할 수 있다.In one embodiment, one or more sensors (310) (e.g., sensor module (176) of FIG. 1) can measure posture information of the electronic device (300) or a user wearing the electronic device (300). For example, the one or more sensors (310) can include a gyro sensor, an acceleration sensor, or various other types of sensors capable of measuring posture information of the user and/or the electronic device.
일 실시 예에서, 적어도 하나의 카메라(320) (예: 도 1의 카메라 모듈(180))는 사용자의 좌안 또는 우안 중 적어도 한쪽 눈을 인식하고, 인식된 사용자 눈의 시선이 향하는 방향을 추적할 수 있다. 다양한 실시 예에 따라, 적어도 하나의 카메라(320)는 실제 공간 이미지를 획득하여 사용자에 제공할 수도 있다.In one embodiment, at least one camera (320) (e.g., camera module (180) of FIG. 1) can recognize at least one eye of the user, either the left or right eye, and track the direction in which the recognized user eye is looking. According to various embodiments, at least one camera (320) can also obtain a real space image and provide it to the user.
일 실시 예에서, 적어도 하나의 디스플레이(330) (예: 도 1의 디스플레이 모듈(160))는 사용자의 조작에 따라 전체 뷰 영역에 대응하는 배경 이미지와 상기 배경 이미지 상에 배치되는 사용자 인터페이스를 표시할 수 있다. 예를 들어, 적어도 하나의 디스플레이(330)는 적어도 하나의 카메라(320)를 이용하여 촬영된 실제 공간 이미지 또는 통신 회로(예: 도 1의 통신 모듈(190))를 통해 외부 장치로부터 획득한 가상 공간 이미지를 상기 배경 이미지로서 표시할 수 있다. 다른 예를 들어, 적어도 하나의 디스플레이(330)는 하나 이상의 윈도우를 포함하는 사용자 인터페이스를 상기 배경 이미지 상에 렌더링하여 표시할 수 있다. 상기 하나 이상의 윈도우는 전자 장치(300)에서 실행된 하나 이상의 어플리케이션의 실행 화면, 멀티미디어 데이터, 텍스트 또는 아이콘 중 적어도 하나를 포함할 수 있다.In one embodiment, at least one display (330) (e.g., the display module (160) of FIG. 1) may display a background image corresponding to the entire view area and a user interface arranged on the background image according to a user's operation. For example, at least one display (330) may display a real space image captured using at least one camera (320) or a virtual space image acquired from an external device via a communication circuit (e.g., the communication module (190) of FIG. 1) as the background image. As another example, at least one display (330) may display a user interface including one or more windows by rendering it on the background image. The one or more windows may include at least one of an execution screen of one or more applications executed on the electronic device (300), multimedia data, text, or icons.
일 실시 예에서, 적어도 하나의 디스플레이(330)는 LCD(liquid crystal display), TFT-LCD(thin film transistor LCD), OLED(organic light emitting diodes), 발광다이오드(LED), AMOLED(active matrix organic LED), 플렉서블 디스플레이(flexible display) 및 3차원 디스플레이(3 dimension display) 중 적어도 하나 이상으로 구성될 수 있다. 또한 이들 중 일부 디스플레이는 그를 통해 외부를 볼 수 있도록 투명형 또는 광투과형으로 구성될 수 있다. 이는 TOLED(transparent OLED)를 포함하는 투명 디스플레이 형태로 구성될 수 있다.In one embodiment, at least one display (330) may be configured as at least one of a liquid crystal display (LCD), a thin film transistor LCD (TFT-LCD), an organic light emitting diodes (OLED), a light emitting diode (LED), an active matrix organic LED (AMOLED), a flexible display, and a 3 dimension display. Additionally, some of these displays may be configured as transparent or light-transmitting so that the outside can be viewed therethrough. This may be configured as a transparent display including a TOLED (transparent OLED).
다양한 실시 예에 따라, 적어도 하나의 디스플레이(330)는 사용자의 좌안용 디스플레이와 우안용 디스플레이가 분리된 형태이거나, 또는 좌/우 디스플레이가 분리되지 않은 일체형 디스플레이일 수 있다.According to various embodiments, at least one display (330) may be a separate display for the user's left eye and right eye, or may be an integrated display in which the left and right displays are not separated.
일 실시 예에서, 메모리(340) (예: 도 1의 메모리(130))는 실행 시에, 프로세서(350) (예: 도 1의 프로세서(120))에 의해, 전자 장치(300)가 각종 동작들을 수행하도록 하는 인스트럭션들을 저장할 수 있다. 예를 들어, 프로세서(350)는 배경 이미지 상에 표현되는 사용자 인터페이스에 대한 블러 처리 작업을 보다 빠르게 수행하기 위한 동작들을 수행하도록 제어할 수 있다.In one embodiment, the memory (340) (e.g., the memory (130) of FIG. 1) may store instructions that, when executed, cause the electronic device (300) to perform various operations by the processor (350) (e.g., the processor (120) of FIG. 1). For example, the processor (350) may control operations to perform blur processing for a user interface expressed on a background image more quickly.
일 실시 예에서, 프로세서(350)는 전체 뷰 영역에 대응하는 제1 배경 이미지를 획득하고, 상기 제1 배경 이미지를 기반으로 배경 블러 이미지를 획득할 수 있다. 상기 전체 뷰 영역은 하나 이상의 센서(310)에 의해 측정된 전자 장치(300)의 자세 정보(또는 전자 장치(300)를 착용한 사용자의 자세 정보) 또는 적어도 하나의 카메라(320)에 의해 감지된 사용자의 눈 시선 방향 정보를 기반으로 결정될 수 있으며, 사용자가 한 번에 볼 수 있는 시야(field of view) 영역에 대응될 수 있다. 상기 제1 배경 이미지는 적어도 하나의 카메라(320)로부터 획득된 실제 공간 이미지 또는 통신 회로(예: 도 1의 통신 모듈(190))를 이용하여 외부 장치로부터 획득된 가상 공간 이미지 중 적어도 하나를 포함할 수 있다. 프로세서(350)는 상기 실제 공간 이미지 또는 상기 가상 공간 이미지 중 적어도 하나로부터 상기 전체 뷰 영역에 대응하는 제1 배경 이미지를 획득하고, 상기 제1 배경 이미지에 블러 효과를 적용하여 배경 블러 이미지를 생성할 수 있다. 예를 들어, 프로세서(350)는 상기 제1 배경 이미지 내 특정 픽셀을 기준으로 그 주변 픽셀들을 섞어 새로운 컬러를 갖는 픽셀로 만드는 방식으로 상기 배경 블러 이미지를 생성할 수 있다.In one embodiment, the processor (350) may obtain a first background image corresponding to the entire view area, and obtain a background blur image based on the first background image. The entire view area may be determined based on posture information of the electronic device (300) measured by one or more sensors (310) (or posture information of a user wearing the electronic device (300)) or eye gaze direction information of the user detected by at least one camera (320), and may correspond to a field of view area that the user can see at one time. The first background image may include at least one of a real space image obtained from at least one camera (320) or a virtual space image obtained from an external device using a communication circuit (e.g., the communication module (190) of FIG. 1). The processor (350) may obtain a first background image corresponding to the entire view area from at least one of the real space image and the virtual space image, and may apply a blur effect to the first background image to generate a background blur image. For example, the processor (350) may generate the background blur image by mixing surrounding pixels based on a specific pixel in the first background image to create a pixel with a new color.
일 실시 예에서, 프로세서(350)는 상기 제1 배경 이미지 상에 표시될 사용자 인터페이스에 포함된 하나 이상의 윈도우에 대해 블러 처리 대상인지 여부를 확인할 수 있다. 예를 들어, 프로세서(350)는 실행 중인 어플리케이션이나 콘텐트가 사용자에 의해 블러 효과 적용 대상으로 지정되었는지 여부를 확인하고, 상기 확인 결과 블러 효과 적용 대상으로 지정된 어플리케이션이나 콘텐트와 연관되는 윈도우가 존재하면 상기 사용자 인터페이스를 상기 블러 처리 대상으로 결정할 수 있다.In one embodiment, the processor (350) may determine whether one or more windows included in a user interface to be displayed on the first background image are targets for blur processing. For example, the processor (350) may determine whether an application or content being executed has been designated as a target for blur effect application by a user, and if a window associated with an application or content designated as a target for blur effect application exists as a result of the determination, the processor may determine the user interface as a target for blur processing.
일 실시 예에서, 프로세서(350)는 상기 블러 처리 대상으로 확인된 적어도 하나의 윈도우가 존재하면, 렌더링 환경 정보를 기반으로 블러 옵션 데이터를 결정할 수 있다. 상기 렌더링 환경 정보는 상기 사용자 인터페이스의 밝기, 상기 배경 이미지의 깊이 데이터, 그래픽 버퍼의 크기, 전자 장치(300)에 포함된 하드웨어나 프로세서(350)의 성능, 또는 적어도 하나의 디스플레이(330)의 물리적 크기 중 적어도 하나를 포함할 수 있다. 이외에도, 프로세서(350)는 CPU 점유율이나 런타임 상태와 같은 사용 환경 정보를 추가적으로 고려하여 상기 블러 옵션 데이터를 결정할 수도 있다. 일 실시 예에서, 상기 블러 옵션 데이터는 상기 적어도 하나의 윈도우에 대한 블러 처리를 위해 적용 가능한 블러 타입 또는 블러 세기 중 적어도 하나를 포함할 수 있다. 상기 블러 타입은 가우시안 블러(gaussian blur) 또는 카와세 블러(Kawase blur) 중 적어도 하나를 포함할 수 있다. 상기 블러 세기는 이미지가 흐릿해지는 정도를 나타내는데, 이미지에 적용되는 블러 세기에 따라 상이한 블러 이미지가 생성될 수 있다. 예를 들어, 상기 블러 세기가 크게 설정될수록 흐릿한 블러 이미지가 생성되고, 상기 블러 세기가 작을수록 선명한 블러 이미지가 생성될 수 있다. 다양한 실시 예에 따라, 상기 블러 옵션 데이터는 미리 지정된 구성에 따라 결정되거나, 또는 누적된 사용자 데이터의 학습에 의해 추정된 값을 기반으로 결정될 수도 있다. 프로세서(350)는 상기 결정된 블러 옵션 데이터를 기반으로 상기 제1 배경 이미지에 대한 블러 효과를 적용하는 방식으로 상기 배경 블러 이미지를 획득할 수 있다.In one embodiment, the processor (350) may determine blur option data based on rendering environment information if there is at least one window identified as the blur processing target. The rendering environment information may include at least one of the brightness of the user interface, depth data of the background image, the size of the graphic buffer, the performance of hardware or the processor (350) included in the electronic device (300), or the physical size of at least one display (330). In addition, the processor (350) may additionally consider usage environment information such as CPU usage or runtime status to determine the blur option data. In one embodiment, the blur option data may include at least one of a blur type or blur intensity applicable for blur processing for the at least one window. The blur type may include at least one of a Gaussian blur or a Kawase blur. The blur intensity indicates the degree to which the image is blurred, and different blurred images may be generated depending on the blur intensity applied to the image. For example, as the blur intensity is set to a large value, a blurry blur image can be generated, and as the blur intensity is set to a small value, a clear blur image can be generated. According to various embodiments, the blur option data may be determined according to a pre-specified configuration, or may be determined based on a value estimated by learning accumulated user data. The processor (350) may obtain the background blur image by applying a blur effect to the first background image based on the determined blur option data.
일 실시 예에서, 프로세서(350)는 상기 제1 배경 이미지 상에 표시될 사용자 인터페이스에 대한 표시 정보를 확인할 수 있다. 상기 표시 정보는 상기 사용자 인터페이스의 표시 위치 정보, 또는 크기 정보를 포함할 수 있다. 상기 표시 위치 정보는 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우가 표시되는 적어도 하나의 디스플레이(330) 또는 배경 이미지 상의 위치 정보로서, 위치 좌표 또는 회전 각도 중 적어도 하나를 포함할 수 있다. 상기 크기 정보는 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우가 적어도 하나의 디스플레이(330) 또는 배경 이미지 상에서 어떠한 크기로 표시되는지에 연관될 수 있다. 예를 들어, 프로세서(350)는 3차원 정보들로 구성된 각 사용자 인터페이스의 3차원 좌표를 상기 배경 이미지에 정사영(projection) 시켜 2차원 좌표를 획득할 수 있으며, 상기 획득된 2차원 좌표를 기반으로 상기 표시 정보를 확인할 수 있다. In one embodiment, the processor (350) may check display information for a user interface to be displayed on the first background image. The display information may include display position information or size information of the user interface. The display position information may include position information on at least one display (330) or background image where one or more windows included in the user interface are displayed, and may include at least one of position coordinates or rotation angles. The size information may be related to a size at which one or more windows included in the user interface are displayed on at least one display (330) or background image. For example, the processor (350) may project three-dimensional coordinates of each user interface composed of three-dimensional information onto the background image to obtain two-dimensional coordinates, and may check the display information based on the obtained two-dimensional coordinates.
일 실시 예에서, 프로세서(350)는 상기 표시 정보를 기반으로 상기 사용자 인터페이스와 합성(compose)할 상기 배경 블러 이미지의 제1 부분을 획득할 수 있다. 상기 배경 블러 이미지의 제1 부분은 상기 제1 배경 이미지 상에 표시되는 상기 사용자 인터페이스의 배경 영역에 대응하는 부분 블러 이미지일 수 있다. 예를 들어, 프로세서(350)는 상기 표시 정보를 기반으로 상기 제1 배경 이미지의 전체 영역 중 사용자 인터페이스가 중첩 표시되는 배경 영역을 계산할 수 있다. 프로세서(350)는 상기 배경 블러 이미지로부터 상기 계산된 배경 영역에 대응하는 부분 이미지를 크롭(crop)하여 상기 배경 블러 이미지의 제1 부분을 획득할 수 있다.In one embodiment, the processor (350) may obtain a first portion of the background blur image to be composited with the user interface based on the display information. The first portion of the background blur image may be a partial blur image corresponding to a background area of the user interface displayed on the first background image. For example, the processor (350) may calculate a background area on which the user interface is overlapped and displayed among the entire area of the first background image based on the display information. The processor (350) may crop a partial image corresponding to the calculated background area from the background blur image to obtain the first portion of the background blur image.
일 실시 예에서, 프로세서(350)는 상기 획득된 배경 블러 이미지의 제1 부분을 상기 사용자 인터페이스와 합성하고, 상기 합성을 통해 블러 처리된 사용자 인터페이스를 상기 제1 배경 이미지와 합성하여 적어도 하나의 디스플레이(330) 상에 표시할 수 있다.In one embodiment, the processor (350) may synthesize a first portion of the acquired background blur image with the user interface, and display the blurred user interface through the synthesis with the first background image on at least one display (330).
일 실시 예에서, 프로세서(350)는 상기 사용자 인터페이스의 표시 정보가 변경됨을 확인하면, 상기 변경된 표시 정보를 기반으로 상기 사용자 인터페이스와 합성할 상기 배경 블러 이미지의 제2 부분을 획득할 수 있다. 예를 들어, 프로세서(350)는 상기 사용자 인터페이스에 포함된 윈도우들 중 제1 윈도우의 위치가 이동됨을 확인하면, 상기 제1 윈도우의 위치 이동에 따라 변경된 배경 영역을 계산할 수 있다. 다른 예를 들어, 프로세서(350)는 상기 제1 윈도우가 소정 각도로 회전함을 확인하면, 상기 제1 윈도우의 회전에 따라 변경된 배경 영역을 계산할 수 있다. 또 다른 예를 들어, 프로세서(350)는 상기 제1 윈도우의 크기가 확대(또는 축소)됨을 확인하면, 상기 제1 윈도우의 크기 확대(또는 축소)에 따라 변경된 배경 영역을 계산할 수 있다. 프로세서(350)는 상기 배경 블러 이미지로부터 상기 변경된 배경 영역에 대응하는 부분 이미지를 크롭하여 상기 배경 블러 이미지의 제2 부분을 획득하고, 상기 배경 블러 이미지의 제2 부분을 상기 사용자 인터페이스와 합성할 수 있다. 프로세서(350)는 상기 합성을 통해 블러 처리된 사용자 인터페이스를 상기 변경된 표시 정보에 따라 제2 배경 이미지와 합성하여 적어도 하나의 디스플레이(330) 상에 표시할 수 있다. 다양한 실시 예에 따라, 상기 제2 배경 이미지는 상기 제1 배경 이미지와 동일한 이미지일 수 있다. 예를 들어, 프로세서(350)는 상기 사용자 인터페이스의 표시 정보가 변경되더라도 전자 장치(300)의 자세 정보나 전자 장치(300)를 착용한 사용자의 움직임 또는 시선 방향 변경이 감지되지 않고, 상기 사용자 인터페이스에 포함된 적어도 하나의 윈도우의 위치나 크기만 변경됨을 확인하면, 상기 제1 배경 이미지와 동일한 상기 제2 배경 이미지를 상기 블러 처리된 사용자 인터페이스와 합성하여 표시할 수 있다.In one embodiment, when the processor (350) determines that the display information of the user interface is changed, the processor (350) may obtain a second portion of the background blur image to be synthesized with the user interface based on the changed display information. For example, when the processor (350) determines that the position of a first window among the windows included in the user interface is moved, the processor (350) may calculate a background area changed according to the position movement of the first window. For another example, when the processor (350) determines that the first window is rotated by a predetermined angle, the processor (350) may calculate a background area changed according to the rotation of the first window. For another example, when the processor (350) determines that the size of the first window is enlarged (or reduced), the processor (350) may calculate a background area changed according to the enlargement (or reduction) of the size of the first window. The processor (350) may crop a partial image corresponding to the changed background area from the background blur image to obtain a second portion of the background blur image, and may synthesize the second portion of the background blur image with the user interface. The processor (350) may display the blurred user interface through the synthesis on at least one display (330) by synthesizing it with a second background image according to the changed display information. According to various embodiments, the second background image may be the same image as the first background image. For example, if the processor (350) determines that even if the display information of the user interface is changed, the posture information of the electronic device (300) or the movement or gaze direction change of the user wearing the electronic device (300) is not detected, and only the position or size of at least one window included in the user interface is changed, the processor (350) may display the second background image, which is the same as the first background image, by synthesizing it with the blurred user interface.
다양한 실시 예에 따라, 상기 제2 배경 이미지는 상기 제1 배경 이미지와 상이한 이미지일 수 있다. 일 실시 예에서, 프로세서(350)는 상기 사용자 인터페이스를 표시하는 중 배경 이미지가 변경됨을 확인하면, 상기 제1 배경 이미지와 상이한 상기 제2 배경 이미지를 상기 블러 처리된 사용자 인터페이스와 합성하여 표시할 수 있다. 예를 들어, 프로세서(350)는 전자 장치(300)의 자세 변경, 전자 장치(300)를 착용한 사용자의 움직임 또는 사용자의 시선 방향 변경을 감지하면, 전체 뷰 영역의 변경에 따라 상기 배경 이미지가 변경됨을 판단할 수 있다. 다른 예를 들어, 상기 배경 이미지가 시간의 흐름에 따라 자동으로 업데이트되는 타입인 경우, 프로세서(350)는 상기 배경 이미지가 업데이트 되는 기준(예: 시간, 날짜) 충족 시 상기 배경 이미지가 변경됨을 판단할 수 있다. 또 다른 예를 들어, 프로세서(350)는 가상 공간을 포함하는 배경 이미지를 표시하는 중 실제 공간에 새로운 객체(예: 사람)이 등장하는 경우, 적어도 하나의 카메라(320)로부터 획득된 실시간 이미지를 상기 배경 이미지의 적어도 일부 영역에 표시하여 상기 배경 이미지가 변경됨을 판단할 수 있다. 상기 제2 배경 이미지가 상기 제1 배경 이미지와 상이한 경우, 프로세서(350)는 상기 변경된 제2 배경 이미지에 대한 블러 옵션 데이터를 결정하고, 상기 블러 옵션 데이터를 기반으로 상기 제2 배경 이미지에 대하여 블러 효과를 적용하여 상기 배경 블러 이미지를 업데이트할 수 있다. According to various embodiments, the second background image may be a different image from the first background image. In one embodiment, if the processor (350) determines that the background image is changed while displaying the user interface, the processor (350) may synthesize the second background image, which is different from the first background image, with the blurred user interface and display it. For example, if the processor (350) detects a change in the posture of the electronic device (300), a movement of a user wearing the electronic device (300), or a change in the user's gaze direction, the processor (350) may determine that the background image is changed according to a change in the entire view area. For another example, if the background image is of a type that is automatically updated over time, the processor (350) may determine that the background image is changed when a criterion (e.g., time, date) for updating the background image is satisfied. As another example, when a new object (e.g., a person) appears in a real space while the processor (350) is displaying a background image including a virtual space, the processor (350) may determine that the background image has changed by displaying a real-time image acquired from at least one camera (320) on at least a portion of the background image. When the second background image is different from the first background image, the processor (350) may determine blur option data for the changed second background image, and apply a blur effect to the second background image based on the blur option data to update the background blur image.
일 실시 예에서, 프로세서(350)는 상기 제1 배경 이미지(또는 상기 제2 배경 이미지)에 포함된 적어도 하나의 객체에 대한 깊이 데이터를 기반으로 블러 세기를 상이하게 적용할 수 있다. 예를 들어, 상기 제1 배경 이미지(또는 상기 제2 배경 이미지) 내에서 사용자의 시점을 기준으로 제1 객체가 제2 객체보다 가까이에 위치한 경우, 프로세서(350)는 상기 제1 객체에 대응하는 영역이 상기 제2 객체의 영역보다 선명하게 표현되도록 블러 세기를 차등 적용하여 상기 배경 블러 이미지를 생성할 수 있다.In one embodiment, the processor (350) may apply a blur intensity differently based on depth data for at least one object included in the first background image (or the second background image). For example, if a first object is located closer than a second object based on a user's viewpoint within the first background image (or the second background image), the processor (350) may apply a blur intensity differently to generate the background blur image so that an area corresponding to the first object is expressed more clearly than an area of the second object.
다양한 실시 예에 따라, 적어도 하나의 디스플레이(330)가 좌안용 디스플레이 및 우안용 디스플레이로 분리된 형태인 경우, 두 개의 디스플레이에 대한 렌더링이 필요할 수 있다. 이 경우, 프로세서(350)는 좌안용 배경 이미지와 우안용 배경 이미지에서 서로 중첩하는 부분을 기준으로 중첩하지 않는 부분(예: 좌안용 배경 이미지에만 포함된 부분 및/또는 우안용 배경 이미지에만 포함된 부분)을 이어 붙여 하나의 이미지로 생성하거나 또는 좌안용 배경 이미지와 우안용 배경 이미지를 서로 겹쳐서 하나의 이미지로 생성하고, 상기 하나의 이미지에 대해 일괄적으로 블러 효과를 적용하는 방식으로 블러 처리 성능을 높일 수 있다.According to various embodiments, when at least one display (330) is divided into a left-eye display and a right-eye display, rendering for the two displays may be required. In this case, the processor (350) may generate a single image by connecting non-overlapping portions (e.g., portions included only in the left-eye background image and/or portions included only in the right-eye background image) based on overlapping portions of the left-eye background image and the right-eye background image, or may generate a single image by overlapping the left-eye background image and the right-eye background image, and applying a blur effect to the single image at once, thereby increasing blur processing performance.
도 4는 일 실시 예에 따라, 전자 장치(300)에서 사용자 인터페이스를 표현하는 방식을 설명하는 도면이다.FIG. 4 is a drawing illustrating a method of expressing a user interface in an electronic device (300) according to one embodiment.
도 4를 참조하면, 전자 장치(300)는 둘 이상의 레이어가 중첩 표시되는 방식을 활용하여 3차원 공간 상에 2차원 형태의 사용자 인터페이스가 배치되는 구조를 표현할 수 있다. 예를 들어, 사용자의 시야에 보여지는 전체 뷰 영역의 바탕에 제1 레이어(410)가 배치되고, 제1 레이어(410) 상에 제2 레이어(420), 제3 레이어(430) 또는 제4 레이어(440)가 배치될 수 있다. 제1 레이어(410) 상에 중첩 배치되는 레이어의 개수는 상기 사용자 인터페이스를 통해 표시하고자 하는 윈도우의 개수에 대응할 수 있다.Referring to FIG. 4, the electronic device (300) can express a structure in which a two-dimensional user interface is arranged in a three-dimensional space by utilizing a method in which two or more layers are overlapped and displayed. For example, a first layer (410) can be arranged on the background of the entire view area visible to the user's field of vision, and a second layer (420), a third layer (430), or a fourth layer (440) can be arranged on the first layer (410). The number of layers that are overlapped and arranged on the first layer (410) can correspond to the number of windows to be displayed through the user interface.
일 실시 예에서, 전자 장치(300)는 제1 레이어(410)에 배경 이미지를 렌더링하고, 제1 레이어(410) 상에 중첩 배치되는 제2 레이어(420), 제3 레이어(430) 또는 제4 레이어(440)에 표시하고자 하는 하나 이상의 윈도우를 각각 렌더링 할 수 있다. 이 때, 제2 레이어(420), 제3 레이어(430) 또는 제4 레이어(440)는 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우가 상기 배경 이미지 상에 표시되는 위치/크기/회전 각도에 대응하도록 상기 제1 레이어(410) 상에 생성될 수 있다. 상기 배경 이미지는 카메라(예: 도 1의 카메라 모듈(180) 또는 도 3의 적어도 하나의 카메라(320))를 통해 실시간 획득되는 실제 공간의 이미지 또는 통신 회로(예: 도 1의 통신 모듈(190))를 통해 외부 장치로부터 획득된 가상 공간의 이미지 중 적어도 하나를 포함할 수 있다. 상기 하나 이상의 윈도우는 전자 장치(300)에서 실행된 어플리케이션의 실행 화면, 멀티미디어 데이터, 텍스트 또는 아이콘 중 적어도 하나를 포함할 수 있다.In one embodiment, the electronic device (300) may render a background image on the first layer (410) and render one or more windows to be displayed on the second layer (420), the third layer (430), or the fourth layer (440) that are overlappingly arranged on the first layer (410). At this time, the second layer (420), the third layer (430), or the fourth layer (440) may be generated on the first layer (410) so as to correspond to the position/size/rotation angle at which one or more windows included in the user interface are displayed on the background image. The background image may include at least one of an image of a real space acquired in real time through a camera (e.g., the camera module (180) of FIG. 1 or at least one camera (320) of FIG. 3) or an image of a virtual space acquired from an external device through a communication circuit (e.g., the communication module (190) of FIG. 1). The one or more windows may include at least one of an execution screen, multimedia data, text, or icon of an application running on the electronic device (300).
도 5는 일 실시 예에 따른, 전자 장치(300)에서 사용자 인터페이스를 배경 블러 이미지와 합성하여 표시하는 방식을 설명하는 도면이다.FIG. 5 is a drawing illustrating a method of displaying a user interface by synthesizing it with a background blur image in an electronic device (300) according to one embodiment.
도 5를 참조하면, 전자 장치(300)는 사용자 인터페이스(510)를 표시하는 과정에서 배경 이미지 및/또는 사용자 인터페이스(510)에 대한 시인성을 높이기 위해 상기 배경 이미지 상에서 사용자 인터페이스(510)가 중첩 표시되는 적어도 일부 영역을 블러 처리할 수 있다. 일 실시 예에서, 전자 장치(300)는 전자 장치(300)의 자세 정보(또는 전자 장치(300)를 착용한 사용자의 자세 정보) 또는 감지된 사용자의 눈 시선 방향 정보 중 적어도 하나를 기반으로 결정된 전체 뷰 영역을 기반으로 제1 레이어(예: 도 4의 제1 레이어(410))에 렌더링되는 배경 이미지를 획득할 수 있다. 상기 배경 이미지는 적어도 하나의 카메라(예: 도 1의 카메라 모듈(180) 또는 도 3의 적어도 하나의 카메라(320))로부터 실시간 획득되는 실제 공간 이미지 또는 외부 장치로부터 획득되는 가상 공간 이미지 중 적어도 하나를 포함할 수 있다.Referring to FIG. 5, the electronic device (300) may blur at least a portion of an area on which the user interface (510) is overlapped on the background image to increase the visibility of the background image and/or the user interface (510) during the process of displaying the user interface (510). In one embodiment, the electronic device (300) may obtain a background image to be rendered on a first layer (e.g., the first layer (410) of FIG. 4) based on an entire view area determined based on at least one of the posture information of the electronic device (or the posture information of a user wearing the electronic device (300)) or the detected eye gaze direction information of the user. The background image may include at least one of a real space image obtained in real time from at least one camera (e.g., the camera module (180) of FIG. 1 or at least one camera (320) of FIG. 3) or a virtual space image obtained from an external device.
일 실시 예에서, 전자 장치(300)는 상기 배경 이미지에 블러 효과를 적용하여 배경 블러 이미지(520)를 생성할 수 있다. 전자 장치(300)는 배경 블러 이미지(520)를 생성하고자 하는 시점에 확인된 렌더링 환경 정보를 기반으로 블러 옵션 데이터를 결정할 수 있다. 상기 렌더링 환경 정보는 사용자 인터페이스(510)의 밝기, 상기 배경 이미지의 깊이 데이터, 그래픽 버퍼의 크기, 전자 장치(300)에 포함된 하드웨어의 성능, 또는 적어도 하나의 디스플레이(330)의 물리적 크기 중 적어도 하나를 포함할 수 있다. 상기 블러 옵션 데이터는 상기 적어도 하나의 인터페이스에 대한 블러 처리를 위해 적용 가능한 블러 타입 또는 블러 세기 중 적어도 하나를 포함할 수 있다. 다양한 실시 예에 따라, 상기 블러 옵션 데이터는 미리 지정된 구성에 따라 결정되거나, 또는 누적된 사용자 데이터의 학습에 의해 추정된 값을 기반으로 결정될 수도 있다. 전자 장치(300)는 상기 결정된 블러 옵션 데이터를 기반으로 상기 배경 이미지에 대한 블러 효과를 적용하여 배경 블러 이미지(520)를 생성할 수 있다.In one embodiment, the electronic device (300) may apply a blur effect to the background image to generate a background blur image (520). The electronic device (300) may determine blur option data based on rendering environment information confirmed at the time of generating the background blur image (520). The rendering environment information may include at least one of the brightness of the user interface (510), depth data of the background image, the size of the graphic buffer, the performance of the hardware included in the electronic device (300), or the physical size of at least one display (330). The blur option data may include at least one of a blur type or blur intensity applicable for blur processing for the at least one interface. According to various embodiments, the blur option data may be determined according to a pre-specified configuration, or may be determined based on a value estimated by learning accumulated user data. The electronic device (300) may apply a blur effect to the background image based on the determined blur option data to generate the background blur image (520).
일 실시 예에서, 전자 장치(300)는 상기 배경 이미지 상에 표시되는 사용자 인터페이스(510)의 크기, 위치 또는 회전 각도 중 적어도 하나를 포함하는 표시 정보를 확인하고, 상기 표시 정보를 기반으로 상기 배경 이미지의 전체 영역 중 사용자 인터페이스(510)가 중첩 표시되는 배경 영역을 계산할 수 있다. 전자 장치(300)는 배경 블러 이미지(520)로부터 상기 배경 영역에 대응하는 부분 이미지를 크롭하여 부분 블러 이미지(521)를 획득할 수 있다.In one embodiment, the electronic device (300) can check display information including at least one of a size, a position, or a rotation angle of a user interface (510) displayed on the background image, and calculate a background area where the user interface (510) is overlapped and displayed among the entire area of the background image based on the display information. The electronic device (300) can crop a partial image corresponding to the background area from a background blur image (520) to obtain a partial blur image (521).
일 실시 예에서, 전자 장치(300)는 상기 획득된 부분 블러 이미지(521)를 사용자 인터페이스(510)와 합성하는 방식으로 사용자 인터페이스(510)에 대한 블러 처리를 수행할 수 있다. 전자 장치(300)는 상기 블러 처리된 사용자 인터페이스(530)를 상기 배경 이미지 상에 표시할 수 있으며, 이는 도 6과 같이 표현될 수 있다.In one embodiment, the electronic device (300) may perform blur processing on the user interface (510) by synthesizing the acquired partial blur image (521) with the user interface (510). The electronic device (300) may display the blurred user interface (530) on the background image, which may be expressed as in FIG. 6.
도 6은 일 실시 예에 따라, 전자 장치(300)에서 블러 처리된 사용자 인터페이스를 배경 이미지 상에 표시하는 방식을 설명하는 도면이다.FIG. 6 is a diagram illustrating a method of displaying a blurred user interface on a background image in an electronic device (300), according to one embodiment.
도 6을 참조하면, 전자 장치(300)는 제1 레이어(610) 상에 전체 뷰 영역에 대응하는 배경 이미지를 렌더링하고, 제1 레이어(610) 상에 중첩 배치되는 제2 레이어(620)와 제3 레이어(630) 상에 블러 처리된 사용자 인터페이스를 렌더링할 수 있다.Referring to FIG. 6, the electronic device (300) can render a background image corresponding to the entire view area on the first layer (610) and render a blurred user interface on the second layer (620) and the third layer (630) that are overlaid on the first layer (610).
다양한 실시 예에 따라, 제1 레이어(610) 상에 중첩 배치되는 레이어들의 개수, 크기 및/또는 위치는 어느 하나의 실시예로 제한되지 않으며, 상기 배경 이미지 상에 표시되는 사용자 인터페이스에 포함된 윈도우의 개수/크기/위치에 대응하도록 배치될 수 있다.According to various embodiments, the number, size, and/or position of layers overlappingly arranged on the first layer (610) is not limited to any one embodiment, and may be arranged to correspond to the number/size/position of windows included in the user interface displayed on the background image.
도 7a 및 도 7b는 일 실시 예에 따른, 전자 장치(300)에서 사용자 인터페이스에 포함된 윈도우의 위치 변경 시 블러 처리 방식을 설명하는 도면이다.FIGS. 7A and 7B are drawings explaining a blur processing method when the position of a window included in a user interface in an electronic device (300) is changed according to one embodiment.
도 7a를 참조하면, 배경 이미지(700) 상에 사용자 인터페이스를 표시하는 동안 사용자 입력에 의해 제1 윈도우(701)의 위치가 이동될 수 있다. 예를 들어, 전자 장치(300)는 제1 윈도우(701)가 이동 1에 대응하는 사용자 입력에 의해 제1 위치(710)에서 제2 위치(720)로 이동된 후, 이동 2에 대응하는 사용자 입력에 의해 제2 위치(720)에서 제3 위치(730)로 이동됨을 확인할 수 있다.Referring to FIG. 7A, while displaying a user interface on a background image (700), the position of the first window (701) may be moved by a user input. For example, the electronic device (300) may confirm that the first window (701) is moved from a first position (710) to a second position (720) by a user input corresponding to
일 실시 예에서, 전자 장치(300)는 제1 윈도우(701)의 위치가 이동될 때마다 제1 윈도우(701)에 대한 블러 처리를 업데이트할 수 있다. 전자 장치(300)는 이동 1에 의해 제1 윈도우(701)의 위치가 제2 위치(720)로 이동됨을 확인하면, 배경 이미지(700)의 전체 영역 중 제2 위치(720)에 대응하여 변경된 배경 영역을 계산하고, 상기 변경된 배경 영역의 부분 블러 이미지를 이용하여 제1 윈도우(701)에 대한 블러 처리를 수행할 수 있다. 도 7b에서, 전자 장치(300)는 배경 이미지(700)에 블러 효과를 적용하여 생성된 배경 블러 이미지(740)로부터 상기 변경된 배경 영역의 부분 블러 이미지를 획득할 수 있다. 예를 들어, 전자 장치(300)는 배경 블러 이미지(740)로부터 상기 변경된 배경 영역에 대응하는 부분 이미지를 크롭하여 상기 부분 블러 이미지를 획득하고, 상기 부분 블러 이미지를 제1 윈도우(701)와 합성하는 방식으로 제2 위치(720)에 대응하여 블러 처리된 제1 윈도우(741)를 생성할 수 있다.In one embodiment, the electronic device (300) can update the blur processing for the first window (701) whenever the position of the first window (701) is moved. When the electronic device (300) determines that the position of the first window (701) is moved to the second position (720) by the
일 실시 예에서, 전자 장치(300)는 이동 2에 의해 제1 윈도우(701)의 위치가 제3 위치(730)로 추가 이동됨을 확인하면, 배경 이미지(700)의 전체 영역 중 제3 위치(730)에 대응하여 변경된 배경 영역을 계산하고, 상기 변경된 배경 영역의 부분 블러 이미지를 이용하여 제1 윈도우(701)에 대한 블러 처리를 재수행할 수 있다. 도 7b에서, 전자 장치(300)는 배경 블러 이미지(740)로부터 상기 변경된 배경 영역에 대응하는 부분 이미지를 크롭하여 상기 부분 블러 이미지를 획득하고, 상기 부분 블러 이미지를 제1 윈도우(701)와 합성하는 방식으로 제3 위치(730)에 대응하여 블러 처리된 제1 윈도우(742)를 생성할 수 있다.In one embodiment, when the electronic device (300) determines that the position of the first window (701) is further moved to the third position (730) by the
도 8a 및 도 8b는 일 실시 예에 따른, 전자 장치(300)에서 사용자 인터페이스에 포함된 윈도우의 회전 각도 변경 시 블러 처리 방식을 설명하는 도면이다.FIGS. 8A and 8B are drawings explaining a blur processing method when the rotation angle of a window included in a user interface in an electronic device (300) changes according to one embodiment.
도 8a를 참조하면, 배경 이미지(800) 상에 사용자 인터페이스를 표시하는 동안 사용자 입력에 의해 제1 윈도우(801)가 소정 각도로 회전될 수 있다. 예를 들어, 전자 장치(300)는 제1 윈도우(801)가 사용자의 시점을 기준으로 제1 각도(810)로 표시되던 중 사용자의 움직임이나 시선 방향 변경 또는 사용자 입력에 의해 제1 회전이 발생하여 제1 윈도우(801)의 표시 각도가 제2 각도(820)로 변경되고, 이후 사용자의 움직임이나 시선 방향 변경 또는 사용자 입력에 의해 제2 회전이 추가 발생하여 제1 윈도우(801)의 표시 각도가 제3 각도(830)로 변경됨을 확인할 수 있다.Referring to FIG. 8A, while displaying a user interface on a background image (800), the first window (801) may be rotated to a predetermined angle by a user input. For example, the electronic device (300) may confirm that while the first window (801) is displayed at a first angle (810) based on the user's viewpoint, a first rotation occurs due to a user's movement, a change in the gaze direction, or a user input, thereby changing the display angle of the first window (801) to a second angle (820), and then a second rotation additionally occurs due to the user's movement, a change in the gaze direction, or a user input, thereby changing the display angle of the first window (801) to a third angle (830).
일 실시 예에서, 전자 장치(300)는 제1 윈도우(801)가 회전하여 표시 각도가 변경될 때마다 제1 윈도우(801)에 대한 블러 처리를 업데이트할 수 있다. 전자 장치(300)는 회전 1에 의해 제1 윈도우(801)의 표시 각도가 제2 각도(820)로 변경됨을 확인하면, 배경 이미지(800)의 전체 영역 중 회전 1에 대응하여 변경된 배경 영역을 계산하고, 상기 변경된 배경 영역의 부분 블러 이미지를 이용하여 제1 윈도우(801)에 대한 블러 처리를 수행할 수 있다. 도 8b에서, 전자 장치(300)는 배경 이미지(800)에 블러 효과를 적용하여 생성된 배경 블러 이미지(840)로부터 상기 변경된 배경 영역의 부분 블러 이미지를 획득할 수 있다. 예를 들어, 전자 장치(300)는 배경 블러 이미지(840)로부터 상기 변경된 배경 영역에 대응하는 부분 이미지를 크롭하여 상기 부분 블러 이미지를 획득하고, 상기 부분 블러 이미지를 제1 윈도우(801)와 합성하는 방식으로 제2 각도(820) 회전에 대응하여 블러 처리된 제1 윈도우(841)를 생성할 수 있다.In one embodiment, the electronic device (300) may update blur processing for the first window (801) whenever the first window (801) is rotated and the display angle changes. When the electronic device (300) determines that the display angle of the first window (801) is changed to the second angle (820) by
일 실시 예에서, 전자 장치(300)는 회전 2에 의해 제1 윈도우(801)의 표시 각도가 제3 각도(830)로 추가 변경됨을 확인하면, 배경 이미지(800)의 전체 영역 중 회전 2에 대응하여 변경된 배경 영역을 계산하고, 상기 변경된 배경 영역의 부분 블러 이미지를 이용하여 제1 윈도우(801)에 대한 블러 처리를 재수행할 수 있다. 도 8b에서, 전자 장치(300)는 배경 블러 이미지(840)로부터 상기 변경된 배경 영역에 대응하는 부분 이미지를 크롭하여 상기 부분 블러 이미지를 획득하고, 상기 부분 블러 이미지를 제1 윈도우(801)와 합성하는 방식으로 제3 각도(830) 회전에 대응하여 블러 처리된 제1 윈도우(842)를 생성할 수 있다.In one embodiment, when the electronic device (300) determines that the display angle of the first window (801) is additionally changed to a third angle (830) by
도 9a 및 도 9b는 일 실시 예에 따른, 전자 장치(300)에서 사용자 인터페이스에 포함된 윈도우의 크기 변경 시 블러 처리 방식을 설명하는 도면이다.FIGS. 9A and 9B are drawings explaining a blur processing method when the size of a window included in a user interface in an electronic device (300) is changed according to one embodiment.
도 9a를 참조하면, 배경 이미지(900) 상에 사용자 인터페이스를 표시하는 동안 사용자 입력에 의해 제1 윈도우(901)의 크기가 변경될 수 있다. 예를 들어, 전자 장치(300)는 제1 윈도우(901)가 확장 1에 대응하는 사용자 입력에 의해 제1 크기(910)에서 제2 크기(920)로 확대된 후, 축소 2에 대응하는 사용자 입력에 의해 제2 크기(920)에서 제3 크기(930)로 축소됨을 확인할 수 있다.Referring to FIG. 9A, the size of the first window (901) may be changed by a user input while displaying a user interface on a background image (900). For example, the electronic device (300) may confirm that the first window (901) is enlarged from a first size (910) to a second size (920) by a user input corresponding to
일 실시 예에서, 전자 장치(300)는 제1 윈도우(901)의 크기가 변경될 때마다 제1 윈도우(901)에 대한 블러 처리를 업데이트할 수 있다. 전자 장치(300)는 확장 1에 의해 제1 윈도우(901)의 크기가 제2 크기(920)로 변경됨을 확인하면, 배경 이미지(900)의 전체 영역 중 확장 1에 대응하여 변경된 배경 영역을 계산하고, 상기 변경된 배경 영역의 부분 블러 이미지를 이용하여 제1 윈도우(901)에 대한 블러 처리를 수행할 수 있다. 도 9b에서, 전자 장치(300)는 배경 이미지(900)에 블러 효과를 적용하여 생성된 배경 블러 이미지(940)로부터 상기 변경된 배경 영역의 부분 블러 이미지를 획득할 수 있다. 예를 들어, 전자 장치(300)는 배경 블러 이미지(940)로부터 상기 변경된 배경 영역에 대응하는 부분 이미지를 크롭하여 상기 부분 블러 이미지를 획득하고, 상기 부분 블러 이미지를 제1 윈도우(901)와 합성하는 방식으로 제2 크기(920)에 대응하여 블러 처리된 제1 윈도우(941)를 생성할 수 있다.In one embodiment, the electronic device (300) may update the blur processing for the first window (901) whenever the size of the first window (901) changes. When the electronic device (300) determines that the size of the first window (901) is changed to the second size (920) by the
일 실시 예에서, 전자 장치(300)는 축소 2에 의해 제1 윈도우(901)의 크기가 제3 크기(930)로 추가 변경됨을 확인하면, 배경 이미지(900)의 전체 영역 중 축소 2에 대응하여 변경된 배경 영역을 계산하고, 상기 변경된 배경 영역의 부분 블러 이미지를 이용하여 제1 윈도우(901)에 대한 블러 처리를 재수행할 수 있다. 도 9b에서, 전자 장치(300)는 배경 블러 이미지(940)로부터 상기 변경된 배경 영역에 대응하는 부분 이미지를 크롭하여 상기 부분 블러 이미지를 획득하고, 상기 부분 블러 이미지를 제1 윈도우(901)와 합성하는 방식으로 제3 크기(930)에 대응하여 블러 처리된 제1 윈도우(942)를 생성할 수 있다.In one embodiment, when the electronic device (300) determines that the size of the first window (901) is further changed to the third size (930) by
도 10a, 도 10b, 도 10c 및 도 10d는 일 실시 예에 따른, 전자 장치(300)에서 스테레오 렌더링 수행 시 블러 처리 방식을 설명하는 도면이다. 다양한 실시 예에 따라, 전자장치(300)는 스테레오 렌더링을 위해 좌안과 우안에 대하여 각각 렌더링을 수행할 수 있다.FIGS. 10A, 10B, 10C, and 10D are diagrams illustrating a blur processing method when performing stereo rendering in an electronic device (300) according to one embodiment. According to various embodiments, the electronic device (300) may perform rendering for each of the left and right eyes for stereo rendering.
도 10a를 참조하면, 사용자(1000)의 양안을 기준으로 좌안에 대하여 표시되는 좌안 배경 이미지(1010)와 우안에 대하여 표시되는 우안 배경 이미지(1020)는 일치하지 않지만 서로 중첩하는 부분이 존재할 수 있다. 전자 장치(300)는 상기 중첩하는 부분에 대해 블러 효과가 중복 적용되지 않도록, 좌안 배경 이미지(1010)와 우안 배경 이미지(1020)에 대하여 개별적으로 블러 효과를 적용하지 않고, 일괄 적용하는 방식으로 블러 처리 성능을 향상시킬 수 있다.Referring to FIG. 10A, the left-eye background image (1010) displayed for the left eye and the right-eye background image (1020) displayed for the right eye based on the two eyes of the user (1000) do not match, but may have overlapping portions. The electronic device (300) may improve blur processing performance by applying the blur effect to the left-eye background image (1010) and the right-eye background image (1020) at once instead of individually so that the blur effect is not applied repeatedly to the overlapping portions.
일 실시 예에서, 전자 장치(300)는 도 10b와 같이, 우안 배경 이미지(1020)에서 좌안 배경 이미지(1010)에 포함되지 않는 부분(1031)을 좌안 배경 이미지(1010)에 대응하는 부분(1030)에 이어 붙인 후 블러 효과를 적용할 수 있다.In one embodiment, the electronic device (300) may apply a blur effect by attaching a portion (1031) not included in the left-eye background image (1010) of the right-eye background image (1020) to a portion (1030) corresponding to the left-eye background image (1010), as shown in FIG. 10b.
일 실시 예에서, 전자 장치(300)는 도 10c와 같이, 좌안 배경 이미지(1041)와 우안 배경 이미지(1042)가 서로 겹쳐진 상태에서 블러 효과를 일괄 적용할 수도 있다.In one embodiment, the electronic device (300) may also apply a blur effect in batches while the left-eye background image (1041) and the right-eye background image (1042) overlap each other, as shown in FIG. 10c.
일 실시 예에서, 사용자의 좌안과 우안 양측에서 모두 볼 수 있는 배경 이미지 내 영역들이 존재할 수 있다. 다만, 사용자의 좌안과 우안에서 상기 배경 이미지 내 동일한 객체를 바라보는 경우라도, 좌안과 우안에서 상기 객체를 보는 각도가 서로 상이할 수 있다. 이로 인해, 좌안 배경 이미지(1010)와 우안 배경 이미지(1020)에서 서로 중첩하는 영역이라 할지라도 다르게 표시될 수 있으나, 블러 효과가 적용되는 경우 이미지들이 흐릿해지기 때문에 좌안용 블러 이미지(1051)와 우안용 블러 이미지(1052)의 차이는 육안 상으로 느껴지지 않을 수 있다. 따라서, 전자 장치(300)는 좌안용 블러 이미지(1051)로부터 크롭된 부분 이미지를 우안에 대하여 활용하는 방식으로, 불필요한 연산을 줄일 수 있다.In one embodiment, there may be areas within a background image that can be viewed from both the left and right eyes of the user. However, even when the user views the same object within the background image from the left and right eyes, the angles at which the left and right eyes view the object may be different. As a result, even if there are overlapping areas in the left-eye background image (1010) and the right-eye background image (1020), they may be displayed differently. However, since the images become blurred when a blur effect is applied, the difference between the left-eye blur image (1051) and the right-eye blur image (1052) may not be perceived with the naked eye. Therefore, the electronic device (300) may reduce unnecessary operations by utilizing a partial image cropped from the left-eye blur image (1051) for the right eye.
도 11a, 도 11b 및 도 11c는 일 실시 예에 따라, 전자 장치(300)에서 배경 이미지의 깊이 데이터를 기반으로 블러 세기를 적용하는 방식을 설명하는 도면이다.FIGS. 11A, 11B, and 11C are diagrams illustrating a method of applying a blur intensity based on depth data of a background image in an electronic device (300), according to one embodiment.
도 11a를 참조하면, 전자 장치(300)는 배경 이미지(1110) 내 공간에 대한 깊이 데이터를 기반으로 블러 세기를 상이하게 적용할 수 있다. 예를 들어, 전자 장치(300)는 사용자 시점(1100)을 기준으로 배경 이미지(1110) 내 공간의 거리 범위에 따라 블러 세기를 차등 적용할 수 있다. 도 11a에서, 전자 장치(300)는 제1 거리 범위에 속하는 영역/객체에 대하여 제1 깊이 값(1111)을 갖는 것으로 판단하고, 제2 거리 범위에 속하는 영역/객체에 대하여 제2 깊이 값(1112)을 갖는 것으로 판단하고, 제3 거리 범위에 속하는 영역/객체에 대하여 제3 깊이 값(1113)을 갖는 것으로 판단할 수 있다. 전자 장치(300)는 제1 깊이 값(1111)에 대해서는 제1 블러 세기를 적용하고, 제2 깊이 값(1112)과 제3 깊이 값(1113)에 대해서는 상기 제1 블러 세기보다 큰 제2 블러 세기를 적용할 수 있다. 이 경우, 블러 효과가 적용된 배경 이미지(1120) 내에서 제1 깊이 값(1111)을 갖는 제1 객체 영역(1121)이 제2 깊이 값(1112) 및 제3 깊이 값(1113)을 갖는 제2 객체 영역(1122)보다 선명하게 표현될 수 있다.Referring to FIG. 11A, the electronic device (300) may apply a blur intensity differently based on depth data for a space within a background image (1110). For example, the electronic device (300) may apply a blur intensity differently according to a distance range of a space within a background image (1110) based on a user viewpoint (1100). In FIG. 11A, the electronic device (300) may determine that an area/object belonging to a first distance range has a first depth value (1111), that an area/object belonging to a second distance range has a second depth value (1112), and that an area/object belonging to a third distance range has a third depth value (1113). The electronic device (300) may apply a first blur intensity to the first depth value (1111), and may apply a second blur intensity greater than the first blur intensity to the second depth value (1112) and the third depth value (1113). In this case, a first object area (1121) having the first depth value (1111) in a background image (1120) to which a blur effect is applied may be expressed more clearly than a second object area (1122) having the second depth value (1112) and the third depth value (1113).
일 실시 예에서, 전자 장치(300)는 블러 세기가 차등 적용된 블러 이미지의 적어도 일부를 사용자 인터페이스와 합성하여 배경 이미지 상에 표시할 수 있다. 예를 들어, 도 11b와 같이, 사용자 인터페이스(1140)에서 배경 영역별 깊이 값에 따라 블러 세기가 상이하게 적용되어, 사용자 인터페이스(1140) 내 제1 영역(1141)에 대응하는 배경이 제2 영역(1142)에 대응하는 배경보다 선명하게 표현될 수 있다. 다른 예를 들어, 도 11c와 같이, 상이한 두 개의 윈도우(1151, 1152)를 포함하는 사용자 인터페이스가 표시되는 경우, 배경 이미지(1150) 내 위치의 깊이 값에 따라 블러 세기가 상이하게 적용되어, 제2 윈도우(1152)에 대응하는 배경이 제1 윈도우(1151)에 대응하는 배경보다 흐릿하게 표현될 수 있다.In one embodiment, the electronic device (300) may synthesize at least a portion of a blurred image to which a blur intensity is differentially applied with a user interface and display the result on a background image. For example, as shown in FIG. 11b, the blur intensity may be applied differently according to a depth value of each background area in the user interface (1140), so that a background corresponding to a first area (1141) in the user interface (1140) may be expressed more clearly than a background corresponding to a second area (1142). As another example, as shown in FIG. 11c, when a user interface including two different windows (1151, 1152) is displayed, the blur intensity may be applied differently according to a depth value of a location in the background image (1150), so that a background corresponding to the second window (1152) may be expressed more blurry than a background corresponding to the first window (1151).
도 12a, 도 12b 및 도 12c는 일 실시 예에 따른, 다양한 종류의 사용자 인터페이스를 블러 처리하여 제공하는 방식을 설명하는 도면이다. 다양한 실시 예에 따라, 전자 장치(300)는 실행 중인 어플리케이션의 실행 화면 외에 다양한 종류의 사용자 인터페이스에 대해서도 블러 처리를 수행할 수 있다.FIGS. 12A, 12B, and 12C are diagrams illustrating a method of providing various types of user interfaces by blurring them according to one embodiment. According to various embodiments, the electronic device (300) may perform blurring on various types of user interfaces in addition to the execution screen of a running application.
도 12a를 참조하면, 전자 장치(300)는 배경 이미지 상에 특정 정보를 나타내는 그래프(1210)를 표시하기 위해 블러 처리를 수행할 수 있다. 예시적으로, 상기 그래프(1210)는 전자 장치(300)에서 수행 중인 특정 작업에 대한 진행 상태 또는 배터리 잔량에 연관될 수 있다. 전자 장치(300)는 특정 작업에 대한 진행 상태 또는 배터리 잔량이 64%인 경우, 나머지 36%에 대응하는 그래프에 대하여 블러 처리를 수행할 수 있다.Referring to FIG. 12A, the electronic device (300) may perform blur processing to display a graph (1210) representing specific information on a background image. For example, the graph (1210) may be related to a progress status or a battery level for a specific task being performed by the electronic device (300). When the progress status or the battery level for the specific task is 64%, the electronic device (300) may perform blur processing on a graph corresponding to the remaining 36%.
도 12b를 참조하면, 전자 장치(300)는 배경 이미지 상에 표시되는 아이콘(1220)에 대하여 블러 처리를 수행할 수 있다. 상기 아이콘(1220)은 실시간 날씨 정보나 날짜, 시간 또는 주변 환경 데이터와 같은 지정된 타입의 정보를 나타낼 수 있다.Referring to FIG. 12b, the electronic device (300) can perform blur processing on an icon (1220) displayed on a background image. The icon (1220) can represent a specified type of information, such as real-time weather information, date, time, or surrounding environment data.
도 12c를 참조하면, 전자 장치(300)는 배경 이미지 상에 표시되는 텍스트(1230)에 대하여 블러 처리를 수행하여 텍스트(1230)에 대한 시인성을 높일 수 있다.Referring to FIG. 12c, the electronic device (300) can perform blur processing on text (1230) displayed on a background image to increase the visibility of the text (1230).
도 13은 일 실시 예에 따른, 전자 장치(300)의 동작 방법을 도시하는 흐름도이다. 일 실시 예에 따르면, 전자 장치(300)는 전체 뷰 영역에 대응하는 배경 이미지의 전체 배경 블러 이미지로부터 사용자 인터페이스가 표시되는 위치의 배경 영역에 대응하는 부분 블러 이미지를 획득하고, 획득된 부분 블러 이미지를 사용자 인터페이스 및 상기 배경 이미지와 합성하여 표시하는 장치로서, 도 1에 도시된 전자 장치(101)에 대응될 수 있다. 도 13의 동작들은 전자 장치(300)에 포함된 프로세서(예: 도 1의 프로세서(120) 또는 도 3의 프로세서(350))에 의해 수행될 수 있다.FIG. 13 is a flowchart illustrating an operating method of an electronic device (300) according to an embodiment. According to an embodiment, the electronic device (300) is a device that obtains a partial blur image corresponding to a background area at a location where a user interface is displayed from a full background blur image of a background image corresponding to an entire view area, and displays the obtained partial blur image by synthesizing it with a user interface and the background image, and may correspond to the electronic device (101) illustrated in FIG. 1. The operations of FIG. 13 may be performed by a processor included in the electronic device (300) (e.g., the processor (120) of FIG. 1 or the processor (350) of FIG. 3).
도 13을 참조하면, 동작 1310에서 전자 장치(300)는 전체 뷰 영역에 대응하는 제1 배경 이미지를 배경 블러 이미지로 생성할 수 있다. 전자 장치(300)는 상기 전체 뷰 영역은 하나 이상의 센서(예: 도 1의 센서 모듈(176) 또는 도 3의 하나 이상의 센서(310))를 이용하여 측정된 전자 장치(300)의 자세 정보(또는 전자 장치(300)를 착용한 사용자의 자세 정보) 또는 적어도 하나의 카메라(예: 도 1의 카메라 모듈(180) 또는 도 3의 적어도 하나의 카메라(320))를 이용하여 감지된 사용자의 눈 시선 방향 정보를 기반으로 결정될 수 있으며, 사용자가 한 번에 볼 수 있는 시야(field of view) 영역에 대응될 수 있다. 상기 배경 이미지는 적어도 하나의 카메라(320)로부터 획득된 실제 공간 이미지 또는 통신 회로(예: 도 1의 통신 모듈(190))를 이용하여 외부 장치로부터 획득된 가상 공간 이미지 중 적어도 하나를 포함할 수 있다. 동작 1310에서, 전자 장치(300)는 상기 실제 공간 이미지 또는 상기 가상 공간 이미지 중 적어도 하나로부터 상기 전체 뷰 영역에 대응하는 제1 배경 이미지를 획득하고, 상기 제1 배경 이미지에 블러 효과를 적용하여 상기 배경 블러 이미지를 생성할 수 있다. 예를 들어, 전자 장치(300)는 상기 제1 배경 이미지 내 특정 픽셀을 기준으로 그 주변 픽셀들을 섞어 새로운 컬러를 갖는 픽셀로 만드는 방식으로 상기 배경 블러 이미지를 생성할 수 있다.Referring to FIG. 13, in
다양한 실시 예에 따라, 전자 장치(300)는 동작 1310에서, 렌더링 환경 정보를 기반으로 블러 옵션 데이터를 결정하고, 상기 결정된 블러 옵션 데이터를 기반으로 상기 제1 배경 이미지에 대한 블러 효과를 적용하는 방식으로 상기 배경 블러 이미지를 획득할 수 있다. 상기 렌더링 환경 정보는 상기 배경 이미지 상에 표시될 사용자 인터페이스의 밝기, 상기 배경 이미지의 깊이 데이터, 그래픽 버퍼의 크기, 전자 장치(300)에 포함된 하드웨어나 프로세서 (350)의 성능, 또는 적어도 하나의 디스플레이(예: 도 1의 디스플레이 모듈(160) 또는 도 3의 적어도 하나의 디스플레이(330))의 물리적 크기 중 적어도 하나를 포함할 수 있다. 이외에도, 전자 장치(300)는 CPU 점유율이나 런타임 상태와 같은 사용 환경 정보를 추가적으로 고려하여 상기 블러 옵션 데이터를 결정할 수도 있다. 상기 블러 옵션 데이터는 상기 인터페이스에 대한 블러 처리를 위해 적용 가능한 블러 타입 또는 블러 세기 중 적어도 하나를 포함할 수 있다. 상기 블러 타입은 가우시안 블러(gaussian blur) 또는 카와세 블러(Kawase blur) 중 적어도 하나를 포함할 수 있다. 상기 블러 세기는 이미지가 흐릿해지는 정도를 나타내는데, 이미지에 적용되는 블러 세기에 따라 상이한 블러 이미지가 생성될 수 있다. 예를 들어, 상기 블러 세기가 크게 설정될수록 흐릿한 블러 이미지가 생성되고, 상기 블러 세기가 작을수록 선명한 블러 이미지가 생성될 수 있다. 다양한 실시 예에 따라, 상기 블러 옵션 데이터는 미리 지정된 구성에 따라 결정되거나, 또는 누적된 사용자 데이터의 학습에 의해 추정된 값을 기반으로 결정될 수도 있다.According to various embodiments, the electronic device (300) may obtain the background blur image by determining blur option data based on rendering environment information in
다양한 실시 예에 따라, 전자 장치(300)는 동작 1310에서, 상기 제1 배경 이미지에 포함된 적어도 하나의 객체에 대한 깊이 데이터를 기반으로 블러 세기를 상이하게 적용할 수 있다. 예를 들어, 상기 제1 배경 이미지 내에서 사용자의 시점을 기준으로 제1 객체가 제2 객체보다 가까이에 위치한 경우, 전자 장치(300)는 상기 제1 객체에 대응하는 영역이 상기 제2 객체의 영역보다 선명하게 표현되도록 블러 세기를 차등 적용하여 상기 배경 블러 이미지를 생성할 수 있다.According to various embodiments, the electronic device (300) may, in
일 실시 예에 따르면, 동작 1320에서 전자 장치(300)는 상기 제1 배경 이미지 상에 표시될 사용자 인터페이스에 대한 표시 정보를 확인할 수 있다. 상기 표시 정보는 상기 사용자 인터페이스의 표시 위치 정보, 또는 크기 정보를 포함할 수 있다. 상기 표시 위치 정보는 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우가 표시되는 적어도 하나의 디스플레이(330) 또는 제1 배경 이미지 상의 위치 정보로서, 위치 좌표 또는 회전 각도 중 적어도 하나를 포함할 수 있다. 상기 크기 정보는 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우가 적어도 하나의 디스플레이(330) 또는 제1 배경 이미지 상에서 어떠한 크기로 표시되는지를 나타낼 수 있다. 예를 들어, 전자 장치(300)는 3차원 정보들로 구성된 각 사용자 인터페이스의 3차원 좌표를 상기 배경 이미지에 정사영(projection) 시켜 2차원 좌표를 획득할 수 있으며, 상기 획득된 2차원 좌표를 기반으로 상기 표시 정보를 확인할 수 있다.According to one embodiment, in
일 실시 예에 따르면, 동작 1330에서 전자 장치(300)는 상기 표시 정보를 기반으로 상기 사용자 인터페이스와 합성할 상기 배경 블러 이미지의 제1 부분을 획득할 수 있다. 상기 배경 블러 이미지의 제1 부분은 상기 제1 배경 이미지 상에 표시되는 상기 사용자 인터페이스의 배경 영역에 대응하는 부분 블러 이미지일 수 있다. 예를 들어, 전자 장치(300)는 상기 표시 정보를 기반으로 상기 제1 배경 이미지의 전체 영역 중 사용자 인터페이스가 중첩 표시되는 배경 영역을 계산할 수 있다. 동작 1330에서, 전자 장치(300)는 상기 배경 블러 이미지로부터 상기 계산된 배경 영역에 대응하는 부분 이미지를 크롭(crop)하여 상기 배경 블러 이미지의 제1 부분을 획득할 수 있다.According to one embodiment, in
일 실시 예에 따르면, 동작 1340에서 전자 장치(300)는 상기 획득된 배경 블러 이미지의 제1 부분을 상기 사용자 인터페이스와 합성하고, 상기 합성을 통해 블러 처리된 사용자 인터페이스를 상기 제1 배경 이미지와 합성하여 적어도 하나의 디스플레이(330) 상에 표시할 수 있다.According to one embodiment, in
일 실시 예에 따르면, 동작 1350에서 전자 장치(300)는 상기 사용자 인터페이스를 표시하는 동안 상기 사용자 인터페이스의 표시 정보가 변경됨을 확인하고, 상기 변경된 표시 정보를 기반으로 상기 사용자 인터페이스와 합성할 상기 배경 블러 이미지의 제2 부분을 획득할 수 있다. 예를 들어, 전자 장치(300)는 상기 사용자 인터페이스에 포함된 윈도우들 중 제1 윈도우의 위치, 크기, 회전 각도 중 적어도 하나가 변경됨을 확인하면, 상기 제1 윈도우에 대하여 변경된 배경 영역을 계산할 수 있다. 전자 장치(300)는 상기 배경 블러 이미지로부터 상기 변경된 배경 영역에 대응하는 부분 이미지를 크롭하여 상기 배경 블러 이미지의 제2 부분을 획득할 수 있다. According to one embodiment, in
일 실시 예에 따르면, 동작 1360에서 전자 장치(300)는 제2 배경 이미지, 상기 배경 블러 이미지의 제2 부분 및 상기 사용자 인터페이스와 합성할 수 있다. 전자 장치(300)는 상기 획득된 배경 블러 이미지의 제2 부분을 상기 사용자 인터페이스와 합성하고, 상기 합성을 통해 블러 처리된 사용자 인터페이스를 상기 변경된 표시 정보에 따라 상기 제2 배경 이미지와 합성하여 적어도 하나의 디스플레이(330) 상에 표시할 수 있다. 다양한 실시 예에 따라, 상기 제2 배경 이미지는 상기 제1 배경 이미지와 동일한 이미지일 수 있다. 예를 들어, 전자 장치(350)는 상기 사용자 인터페이스의 표시 정보가 변경되더라도 전자 장치(300)의 자세 정보나 전자 장치(300)를 착용한 사용자의 움직임 또는 시선 방향 변경이 감지되지 않고, 상기 사용자 인터페이스에 포함된 적어도 하나의 윈도우의 위치나 크기만 변경됨을 확인하면, 상기 제1 배경 이미지와 동일한 상기 제2 배경 이미지를 상기 블러 처리된 사용자 인터페이스와 합성하여 표시할 수 있다.According to one embodiment, in
다양한 실시 예에 따라, 상기 제2 배경 이미지는 상기 제1 배경 이미지와 상이한 이미지일 수 있다. 전자 장치(300)는 상기 사용자 인터페이스를 표시하는 중 배경 이미지가 변경됨을 확인하면, 상기 제1 배경 이미지와 상이한 상기 제2 배경 이미지를 상기 블러 처리된 사용자 인터페이스와 합성하여 표시할 수 있다. 예를 들어, 전자 장치(300)는, 전자 장치(300)의 자세 변경, 전자 장치(300)를 착용한 사용자의 움직임 또는 사용자의 시선 방향 변경을 감지하면, 전체 뷰 영역의 변경에 따라 상기 배경 이미지가 변경됨을 판단할 수 있다. 다른 예를 들어, 상기 배경 이미지가 시간의 흐름에 따라 자동으로 업데이트되는 타입인 경우, 전자 장치(300)는 상기 배경 이미지가 업데이트 되는 기준(예: 시간, 날짜) 충족 시 상기 배경 이미지가 변경됨을 판단할 수 있다. 또 다른 예를 들어, 전자 장치(300)는 가상 공간을 포함하는 배경 이미지를 표시하는 중 실제 공간에 새로운 객체(예: 사람)이 등장하는 경우, 적어도 하나의 카메라(320)로부터 획득된 실시간 이미지를 상기 배경 이미지의 적어도 일부 영역에 표시하여 상기 배경 이미지가 변경됨을 판단할 수 있다. 상기 제2 배경 이미지가 상기 제1 배경 이미지와 상이한 경우, 전자 장치(300)는 상기 변경된 제2 배경 이미지에 대한 블러 옵션 데이터를 결정하고, 상기 블러 옵션 데이터를 기반으로 상기 제2 배경 이미지에 대하여 블러 효과를 적용하여 상기 배경 블러 이미지를 업데이트할 수 있다. According to various embodiments, the second background image may be a different image from the first background image. When the electronic device (300) determines that the background image is changed while displaying the user interface, the electronic device (300) may synthesize the second background image, which is different from the first background image, with the blurred user interface and display it. For example, when the electronic device (300) detects a change in the posture of the electronic device (300), a movement of a user wearing the electronic device (300), or a change in the user's gaze direction, the electronic device (300) may determine that the background image is changed according to a change in the entire view area. For another example, when the background image is of a type that is automatically updated over time, the electronic device (300) may determine that the background image is changed when a criterion (e.g., time, date) for updating the background image is satisfied. As another example, when a new object (e.g., a person) appears in a real space while the electronic device (300) is displaying a background image including a virtual space, the electronic device (300) may determine that the background image has changed by displaying a real-time image acquired from at least one camera (320) on at least a portion of the background image. When the second background image is different from the first background image, the electronic device (300) may determine blur option data for the changed second background image, and apply a blur effect to the second background image based on the blur option data to update the background blur image.
도 14는 일 실시 예에 따른, 전자 장치(300)에서 사용자 인터페이스를 배경 블러 이미지와 합성하여 표시하는 방법을 도시하는 흐름도이다. 도 14의 동작들은 전자 장치(300)에 포함된 적어도 하나의 프로세서(예: 도 1의 프로세서(120) 또는 도 3의 프로세서(350))에 의해 수행되는 기능으로 이해될 수 있다.FIG. 14 is a flowchart illustrating a method of displaying a user interface by synthesizing it with a background blur image in an electronic device (300) according to one embodiment. The operations of FIG. 14 may be understood as functions performed by at least one processor (e.g., the processor (120) of FIG. 1 or the processor (350) of FIG. 3) included in the electronic device (300).
도 14를 참조하면, 동작 1410에서 전자 장치(300)는 디스플레이(예: 도 1의 디스플레이 모듈(160) 또는 도 3의 적어도 하나의 디스플레이(330)) 상에 표시되는 배경 이미지와 사용자 인터페이스를 획득할 수 있다. 상기 배경 이미지는 하나 이상의 센서(310)에 의해 측정된 전자 장치(300)의 자세 정보(또는 전자 장치(300)를 착용한 사용자의 자세 정보) 또는 적어도 하나의 카메라(320)에 의해 감지된 사용자의 눈 시선 방향 정보를 기반으로 결정된 전체 뷰 영역에 대응하는 이미지로서, 적어도 하나의 카메라(예: 도 1의 카메라 모듈(180) 또는 도 3의 적어도 하나의 카메라(320))로부터 획득된 실제 공간 이미지 또는 통신 회로(예: 도 1의 통신 모듈(190))를 이용하여 외부 장치로부터 획득된 가상 공간 이미지 중 적어도 하나를 포함할 수 있다. 상기 사용자 인터페이스는 하나 이상의 윈도우를 포함하며, 상기 하나 이상의 윈도우는 전자 장치(300)에서 실행된 하나 이상의 어플리케이션의 실행 화면, 멀티미디어 데이터, 텍스트 또는 아이콘 중 적어도 하나를 포함할 수 있다.Referring to FIG. 14, in operation 1410, the electronic device (300) may obtain a background image and a user interface displayed on a display (e.g., the display module (160) of FIG. 1 or at least one display (330) of FIG. 3). The background image is an image corresponding to an entire view area determined based on posture information of the electronic device (300) measured by one or more sensors (310) (or posture information of a user wearing the electronic device (300)) or eye gaze direction information of the user detected by at least one camera (320), and may include at least one of a real space image obtained from at least one camera (e.g., the camera module (180) of FIG. 1 or at least one camera (320) of FIG. 3)) or a virtual space image obtained from an external device using a communication circuit (e.g., the communication module (190) of FIG. 1). The above user interface includes one or more windows, and the one or more windows may include at least one of an execution screen, multimedia data, text, or icon of one or more applications running on the electronic device (300).
일 실시 예에 따르면, 동작 1420에서 전자 장치(300)는 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우에 대하여 블러 처리 대상인지 여부를 판단할 수 있다. 예를 들어, 전자 장치(300)는 실행 중인 어플리케이션이나 콘텐트가 사용자에 의해 블러 효과 적용 대상으로 지정되었는지 여부를 확인하고, 상기 확인 결과 블러 효과 적용 대상으로 지정된 어플리케이션이나 콘텐트와 연관되는 윈도우가 존재하면 상기 사용자 인터페이스를 상기 블러 처리 대상으로 결정할 수 있다.According to one embodiment, in
동작 1420의 판단 결과 상기 사용자 인터페이스가 블러 처리 대상이면(동작 1420-Yes), 전자 장치(300)는 동작 1430에서 상기 배경 이미지에 대한 변경이 발생하였는지 여부를 판단할 수 있다. 예를 들어, 전자 장치 (300)는 전자 장치(300)의 자세 변경, 전자 장치(300)를 착용한 사용자의 움직임 또는 사용자의 시선 방향 변경을 감지하면, 전체 뷰 영역의 변경에 따라 상기 배경 이미지가 변경됨을 판단할 수 있다. 다른 예를 들어, 상기 배경 이미지가 시간의 흐름에 따라 자동으로 업데이트되는 타입인 경우, 전자 장치(300)는 상기 배경 이미지가 업데이트 되는 기준(예: 시간, 날짜) 충족 시 상기 배경 이미지가 변경됨을 판단할 수 있다. 또 다른 예를 들어, 전자 장치(300)는 가상 공간을 포함하는 배경 이미지를 표시하는 중 실제 공간에 새로운 객체(예: 사람)이 등장하는 경우, 적어도 하나의 카메라(320)로부터 획득된 실시간 이미지를 상기 배경 이미지의 적어도 일부 영역에 표시하여 상기 배경 이미지가 변경됨을 판단할 수 있다. If the user interface is a target of blur processing as a result of the determination in operation 1420 (operation 1420-Yes), the electronic device (300) can determine whether a change has occurred in the background image in
동작 1430의 판단 결과 상기 배경 이미지가 변경되었으면(동작 1430-Yes), 전자 장치(300)는 동작 1435에서 상기 변경된 배경 이미지에 대한 블러 옵션 데이터를 결정할 수 있다. 상기 블러 옵션 데이터는 상기 사용자 인터페이스에 대한 블러 처리를 위해 적용 가능한 블러 타입 또는 블러 세기 중 적어도 하나를 포함하는데, 상기 블러 타입은 가우시안 블러(gaussian blur) 또는 카와세 블러(Kawase blur) 중 적어도 하나를 포함하고, 상기 블러 세기는 이미지가 흐릿해지는 정도를 나타낼 수 있다. 전자 장치(300)는 동작 1440에서 상기 배경 이미지에 블러 효과를 적용하여 배경 블러 이미지를 생성하고, 동작 1450에서 전자 장치(300)는 상기 사용자 인터페이스에 대한 표시 정보를 기반으로 상기 배경 이미지의 전체 영역 중 상기 사용자 인터페이스가 중첩 표시되는 배경 영역을 계산할 수 있다.If the background image is changed as a result of the determination in operation 1430 (operation 1430-Yes), the electronic device (300) can determine blur option data for the changed background image in
동작 1430의 판단 결과 상기 배경 이미지가 변경되지 않았으면(동작 1430-No), 전자 장치(300)는 동작 1435 내지 동작 1440을 생략하고, 동작 1450에서 상기 배경 이미지의 전체 영역 중 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우가 중첩 표시되는 배경 영역을 계산할 수 있다.If the judgment result of
일 실시 예에 따르면, 동작 1460에서 전자 장치(300)는 상기 계산된 배경 영역을 기반으로 상기 사용자 인터페이스에 대한 배경 블러 이미지의 부분 블러 이미지를 획득할 수 있다. 전자 장치(300)는 상기 배경 블러 이미지로부터 상기 계산된 배경 영역에 대응하는 부분을 크롭(crop)하여 상기 사용자 인터페이스에 대한 상기 부분 블러 이미지를 획득할 수 있다.According to one embodiment, in
일 실시 예에 따르면, 동작 1470에서 전자 장치(300)는 상기 부분 블러 이미지를 상기 사용자 인터페이스와 합성하고, 상기 합성을 통해 블러 처리된 사용자 인터페이스를 상기 배경 이미지와 합성하여 적어도 하나의 디스플레이(330) 상에 표시할 수 있다.According to one embodiment, in
동작 1420의 판단 결과 상기 사용자 인터페이스가 블러 처리 대상이 아니면(동작 1420-No), 전자 장치(300)는 동작 1430 내지 동작 1470을 수행하지 않고, 블러 처리되지 않은 사용자 인터페이스를 상기 배경 이미지 상에 표시할 수 있다.If the user interface is not a target for blur processing as a result of the judgment of operation 1420 (operation 1420-No), the electronic device (300) may display the non-blurred user interface on the background image without performing
일 실시 예에 따른 헤드 마운트 전자 장치(예: 전자 장치(300))는, 적어도 하나의 카메라(예: 카메라(320)), 적어도 하나의 디스플레이(예: 디스플레이(330)), 인스트럭션(instruction)들을 저장하도록 구성된 메모리(예: 메모리(340)), 및 프로세서(예: 프로세서(350))를 포함하고, 상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가, 상기 적어도 하나의 카메라를 통해 제1 배경 이미지를 획득하고, 상기 제1 배경 이미지를 배경 블러 이미지로 생성하고, 상기 제1 배경 이미지 상에 표시될 사용자 인터페이스에 대한 표시 정보를 확인하고, 상기 표시 정보를 기반으로 상기 사용자 인터페이스와 합성할 상기 배경 블러 이미지의 제1 부분을 획득하고, 상기 제1 배경 이미지, 상기 획득한 배경 블러 이미지의 제1 부분 및 상기 사용자 인터페이스를 합성하여 상기 적어도 하나의 디스플레이 상에 표시하고, 상기 사용자 인터페이스의 표시 정보가 변경됨에 따라, 상기 변경된 표시 정보를 기반으로 상기 사용자 인터페이스와 합성할 상기 배경 블러 이미지의 제2 부분을 획득하고, 상기 제2 배경 이미지, 상기 획득한 배경 블러 이미지의 제2 부분 및 상기 사용자 인터페이스를 합성하여 상기 적어도 하나의 디스플레이 상에 표시하도록 하는 인스트럭션들을 저장할 수 있다. According to an embodiment, a head-mounted electronic device (e.g., electronic device (300)) includes at least one camera (e.g., camera (320)), at least one display (e.g., display (330)), a memory (e.g., memory (340)) configured to store instructions, and a processor (e.g., processor (350)), wherein, when the instructions are executed, the processor (350) causes the electronic device (300) to acquire a first background image through the at least one camera, generate the first background image as a background blur image, check display information for a user interface to be displayed on the first background image, acquire a first part of the background blur image to be synthesized with the user interface based on the display information, synthesize the first background image, the first part of the acquired background blur image, and the user interface and display them on the at least one display, and, as the display information of the user interface is changed, acquire a second part of the background blur image to be synthesized with the user interface based on the changed display information, and generate the second part of the background blur image to be synthesized with the user interface based on the changed display information. Instructions may be stored for synthesizing a background image, a second portion of the acquired background blur image, and the user interface and displaying the result on at least one display.
일 실시 예에서, 상기 전자 장치(300)는 상기 전자 장치의 자세 정보를 획득하도록 구성된 하나 이상의 센서(예: 센서(310)) 를 더 포함하고, 상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가, 상기 전자 장치의 자세 정보가 변경됨을 확인하면, 상기 적어도 하나의 카메라를 통해 상기 변경된 자세 정보에 대응하는 상기 제2 배경 이미지를 획득하도록 설정될 수 있다.In one embodiment, the electronic device (300) further includes one or more sensors (e.g., sensor (310)) configured to obtain attitude information of the electronic device, and the processor (350) may be configured to obtain the second background image corresponding to the changed attitude information through the at least one camera when the instructions are executed and the electronic device (300) determines that the attitude information of the electronic device has been changed.
일 실시 예에서, 상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가, 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우에 대해 블러 처리 대상인지 여부를 확인하고, 상기 블러 처리 대상으로 확인된 윈도우가 있으면, 렌더링 환경 정보를 기반으로 블러 옵션 데이터를 결정하고, 상기 결정된 블러 옵션 데이터를 기반으로 상기 제1 배경 이미지에 대한 블러 처리를 수행하여 상기 배경 블러 이미지를 획득하도록 설정될 수 있다.In one embodiment, the processor (350) may be configured to, when the instructions are executed, determine whether one or more windows included in the user interface are targets of blur processing, determine blur option data based on rendering environment information if there is a window identified as a target of blur processing, and perform blur processing on the first background image based on the determined blur option data to obtain the background blur image.
일 실시 예에서, 상기 렌더링 환경 정보는, 상기 사용자 인터페이스의 밝기, 상기 제1 배경 이미지의 깊이 데이터, 그래픽 버퍼의 크기, 상기 프로세서의 성능 또는 상기 적어도 하나의 디스플레이의 크기 중 적어도 하나를 포함할 수 있다.In one embodiment, the rendering environment information may include at least one of brightness of the user interface, depth data of the first background image, a size of a graphics buffer, performance of the processor, or a size of the at least one display.
일 실시 예에서, 상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가, 상기 표시 정보를 기반으로 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우에 대한 배경 영역을 계산하고, 상기 배경 블러 이미지로부터 상기 계산된 배경 영역에 대응하는 부분 이미지를 크롭(crop)하여 상기 배경 블러 이미지의 제1 부분을 획득하도록 설정될 수 있다.In one embodiment, the processor (350) may be configured such that, when the instructions are executed, the electronic device (300) calculates a background area for one or more windows included in the user interface based on the display information, and crops a partial image corresponding to the calculated background area from the background blur image to obtain a first portion of the background blur image.
일 실시 예에서, 상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가, 상기 하나 이상의 윈도우 각각의 크기, 위치, 또는 회전 각도 중 적어도 하나를 기반으로 상기 배경 영역을 계산하도록 설정될 수 있다. In one embodiment, the processor (350) may be configured to cause the electronic device (300) to calculate the background area based on at least one of the size, position, or rotation angle of each of the one or more windows when the instructions are executed.
일 실시 예에서, 상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가, 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우 중 제1 윈도우의 표시 정보가 변경됨을 확인하면, 상기 변경된 표시 정보를 기반으로 상기 제1 윈도우에 대한 변경된 배경 영역을 계산하고, 상기 배경 블러 이미지로부터 상기 변경된 배경 영역에 대응하는 부분 이미지를 크롭하여 상기 배경 블러 이미지의 제3 부분을 획득하고, 상기 제1 배경 이미지, 상기 배경 블러 이미지의 제3 부분 및 상기 사용자 인터페이스를 합성하여 표시하도록 할 수 있다.In one embodiment, the processor (350), when the instructions are executed, if the electronic device (300) determines that display information of a first window among one or more windows included in the user interface has been changed, calculates a changed background area for the first window based on the changed display information, crops a partial image corresponding to the changed background area from the background blur image to obtain a third part of the background blur image, and synthesizes and displays the first background image, the third part of the background blur image, and the user interface.
일 실시 예에서, 상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가, 상기 제2 배경 이미지를 획득하면, 상기 제2 배경 이미지에 대한 블러 옵션 데이터를 확인하고, 상기 확인된 블러 옵션 데이터를 기반으로 상기 변경된 제2 배경 이미지에 대응하는 배경 블러 이미지를 생성하도록 할 수 있다.In one embodiment, the processor (350) may cause the electronic device (300) to, when the instructions are executed, check blur option data for the second background image when the second background image is obtained, and generate a background blur image corresponding to the changed second background image based on the checked blur option data.
일 실시 예에서, 상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가, 상기 제1 배경 이미지에 포함된 적어도 하나의 객체에 대한 깊이 데이터를 확인하고, 상기 확인된 깊이 데이터를 기반으로 상기 제1 배경 이미지 내 상기 적어도 하나의 객체에 대응하는 영역 별 블러 세기를 차등적으로 적용하여 상기 배경 블러 이미지를 생성하도록 할 수 있다.In one embodiment, the processor (350) may cause the electronic device (300) to, when the instructions are executed, identify depth data for at least one object included in the first background image, and differentially apply a blur intensity for each area corresponding to the at least one object in the first background image based on the identified depth data to generate the background blur image.
일 실시 예에서, 상기 하나 이상의 윈도우는, 상기 전자 장치에서 실행된 어플리케이션의 실행 화면, 멀티미디어 데이터, 텍스트, 또는 아이콘 중 적어도 하나를 포함할 수 있다.In one embodiment, the one or more windows may include at least one of an execution screen of an application running on the electronic device, multimedia data, text, or an icon.
일 실시 예에 따른 헤드 마운트 전자 장치(예: 전자 장치(300))의 동작 방법은, 제1 배경 이미지를 획득하는 동작, 상기 제1 배경 이미지를 배경 블러 이미지로 생성하는 동작, 상기 제1 배경 이미지 상에 표시될 사용자 인터페이스에 대한 표시 정보를 확인하는 동작, 상기 표시 정보를 기반으로 상기 사용자 인터페이스와 합성할 상기 배경 블러 이미지의 제1 부분을 획득하는 동작, 상기 제1 배경 이미지, 상기 획득한 배경 블러 이미지의 제1 부분 및 상기 사용자 인터페이스를 합성하여 표시하는 동작, 상기 사용자 인터페이스의 표시 정보가 변경됨에 따라 상기 변경된 표시 정보를 기반으로 상기 사용자 인터페이스와 합성할 상기 배경 블러 이미지의 제2 부분을 획득하는 동작, 및 상기 제2 배경 이미지, 상기 획득한 배경 블러 이미지의 제2 부분 및 상기 사용자 인터페이스를 합성하여 표시하는 동작을 포함할 수 있다.According to an embodiment, a method for operating a head mounted electronic device (e.g., electronic device (300)) may include an operation of acquiring a first background image, an operation of generating the first background image as a background blur image, an operation of checking display information for a user interface to be displayed on the first background image, an operation of acquiring a first part of the background blur image to be synthesized with the user interface based on the display information, an operation of synthesizing and displaying the first background image, the first part of the acquired background blur image, and the user interface, an operation of acquiring a second part of the background blur image to be synthesized with the user interface based on the changed display information as the display information of the user interface is changed, and an operation of synthesizing and displaying the second background image, the second part of the acquired background blur image, and the user interface.
일 실시 예에서, 상기 방법은, 상기 전자 장치의 자세 정보가 변경됨을 확인하면, 상기 변경된 자세 정보에 대응하는 상기 제2 배경 이미지를 획득하는 동작을 더 포함할 수 있다.In one embodiment, the method may further include an operation of obtaining the second background image corresponding to the changed posture information when it is determined that the posture information of the electronic device has changed.
일 실시 예에서, 상기 제1 배경 이미지를 배경 블러 이미지로 생성하는 동작은, 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우에 대해 블러 처리 대상인지 여부를 확인하는 동작, 상기 블러 처리 대상으로 확인된 윈도우가 있으면, 렌더링 환경 정보를 기반으로 블러 옵션 데이터를 결정하는 동작, 및 상기 결정된 블러 옵션 데이터를 기반으로 상기 제1 배경 이미지에 대한 블러 처리를 수행하여 상기 배경 블러 이미지를 획득하는 동작을 포함할 수 있다.In one embodiment, the operation of generating the first background image as a background blur image may include the operation of checking whether one or more windows included in the user interface are targets of blur processing, if there is a window identified as a target of blur processing, the operation of determining blur option data based on rendering environment information, and the operation of performing blur processing on the first background image based on the determined blur option data to obtain the background blur image.
일 실시 예에서, 상기 렌더링 환경 정보는, 상기 사용자 인터페이스의 밝기, 상기 제1 배경 이미지의 깊이 데이터, 그래픽 버퍼의 크기, 상기 프로세서의 성능 또는 상기 적어도 하나의 디스플레이의 크기 중 적어도 하나를 포함할 수 있다.In one embodiment, the rendering environment information may include at least one of brightness of the user interface, depth data of the first background image, a size of a graphics buffer, performance of the processor, or a size of the at least one display.
일 실시 예에서, 상기 배경 블러 이미지의 제1 부분을 획득하는 동작은, 상기 표시 정보를 기반으로 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우에 대한 배경 영역을 계산하는 동작, 및 상기 배경 블러 이미지로부터 상기 계산된 배경 영역에 대응하는 부분 이미지를 크롭(crop)하여 상기 배경 블러 이미지의 제1 부분을 획득하는 동작을 더 포함할 수 있다.In one embodiment, the operation of obtaining the first portion of the background blur image may further include the operation of calculating a background area for one or more windows included in the user interface based on the display information, and the operation of cropping a partial image corresponding to the calculated background area from the background blur image to obtain the first portion of the background blur image.
일 실시 예에서, 상기 배경 영역을 계산하는 동작은, 상기 하나 이상의 윈도우 각각의 크기, 위치, 또는 회전 각도 중 적어도 하나를 기반으로 상기 배경 영역을 계산하는 동작을 포함할 수 있다.In one embodiment, the operation of calculating the background area may include calculating the background area based on at least one of a size, a position, or a rotation angle of each of the one or more windows.
일 실시 예에서, 상기 방법은, 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우 중 제1 윈도우의 표시 정보가 변경됨을 확인하면, 상기 변경된 표시 정보를 기반으로 상기 제1 윈도우에 대한 변경된 배경 영역을 계산하는 동작, 상기 배경 블러 이미지로부터 상기 변경된 배경 영역에 대응하는 부분 이미지를 크롭하여 상기 배경 블러 이미지의 제3 부분을 획득하는 동작, 및 상기 제1 배경 이미지, 상기 배경 블러 이미지의 제3 부분 및 상기 사용자 인터페이스를 합성하여 표시하는 동작을 더 포함할 수 있다.In one embodiment, the method may further include, when it is determined that display information of a first window among one or more windows included in the user interface has been changed, calculating a changed background area for the first window based on the changed display information, cropping a partial image corresponding to the changed background area from the background blur image to obtain a third portion of the background blur image, and synthesizing and displaying the first background image, the third portion of the background blur image, and the user interface.
일 실시 예에서, 상기 방법은, 상기 제2 배경 이미지를 획득하면, 상기 제2 배경 이미지에 대한 블러 옵션 데이터를 확인하는 동작, 및 상기 확인된 블러 옵션 데이터를 기반으로 상기 변경된 제2 배경 이미지에 대응하는 배경 블러 이미지를 생성하는 동작을 더 포함할 수 있다.In one embodiment, the method may further include, when obtaining the second background image, an operation of checking blur option data for the second background image, and an operation of generating a background blur image corresponding to the changed second background image based on the checked blur option data.
일 실시 예에서, 상기 방법은, 상기 제1 배경 이미지에 포함된 적어도 하나의 객체에 대한 깊이 데이터를 확인하는 동작, 및 상기 확인된 깊이 데이터를 기반으로 상기 제1 배경 이미지 내 상기 적어도 하나의 객체에 대응하는 영역 별 블러 세기를 차등적으로 적용하여 상기 배경 블러 이미지를 생성하는 동작을 더 포함할 수 있다.In one embodiment, the method may further include an operation of identifying depth data for at least one object included in the first background image, and an operation of differentially applying a blur intensity for each area corresponding to the at least one object in the first background image based on the identified depth data to generate the background blur image.
일 실시 예에서, 상기 하나 이상의 윈도우는, 상기 전자 장치에서 실행된 어플리케이션의 실행 화면, 멀티미디어 데이터, 텍스트, 또는 아이콘 중 적어도 하나를 포함할 수 있다.In one embodiment, the one or more windows may include at least one of an execution screen of an application running on the electronic device, multimedia data, text, or an icon.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects obtainable from the present disclosure are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by a person having ordinary skill in the art to which the present disclosure belongs.
본 문서에 개시된 다양한 실시 예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치 (예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시 예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.Electronic devices according to various embodiments disclosed in this document may be devices of various forms. The electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliance devices. Electronic devices according to embodiments of this document are not limited to the above-described devices.
본 문서의 다양한 실시 예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시 예들로 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C," "A, B 및 C 중 적어도 하나", 및 " A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제1", "제2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제1) 구성요소가 다른(예: 제2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.The various embodiments of this document and the terminology used herein are not intended to limit the technical features described in this document to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly indicates otherwise. In this document, each of the phrases "A or B," "at least one of A and B," "at least one of A or B," "A, B, or C," "at least one of A, B, and C," and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase, or all possible combinations thereof. Terms such as "first", "second", or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일 실시 예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다. The term "module" as used in this document may include a unit implemented in hardware, software or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be an integrally configured component or a minimum unit of the component or a part thereof that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).
본 문서의 다양한 실시 예들은 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, "비일시적"은 저장매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.Various embodiments of the present document may be implemented as software (e.g., a program (140)) including one or more commands stored in a storage medium (e.g., an internal memory (136) or an external memory (138)) readable by a machine (e.g., an electronic device (101)). For example, a processor (e.g., a processor (120)) of the machine (e.g., an electronic device (101)) may call at least one command among the one or more commands stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the called at least one command. The one or more commands may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, "non-transitory" means only that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.
일 실시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어??)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, the method according to the various embodiments disclosed in the present document may be provided as included in a computer program product. The computer program product may be traded between a seller and a buyer as a commodity. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., a compact disc read only memory (CD-ROM)), or may be distributed online (e.g., downloaded or uploaded) via an application store (e.g., Play Store??) or directly between two user devices (e.g., smartphones). In the case of online distribution, at least a part of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium, such as a memory of a manufacturer's server, a server of an application store, or an intermediary server.
다양한 실시 예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시 예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.According to various embodiments, each of the components (e.g., modules or programs) described above may include a single or multiple entities. According to various embodiments, one or more of the components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (e.g., modules or programs) may be integrated into a single component. In such a case, the integrated component may perform one or more functions of each of the components of the plurality of components identically or similarly to those performed by the corresponding component of the plurality of components prior to the integration. According to various embodiments, the operations performed by the modules, programs or other components may be executed sequentially, in parallel, repeatedly, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.
Claims (10)
적어도 하나의 카메라(320);
적어도 하나의 디스플레이(330);
인스트럭션(instruction)들을 저장하도록 구성된 메모리(340); 및
프로세서(350)를 포함하고,
상기 프로세서는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가,
상기 적어도 하나의 카메라를 통해 제1 배경 이미지를 획득하고,
상기 제1 배경 이미지를 배경 블러 이미지로 생성하고,
상기 제1 배경 이미지 상에 표시될 사용자 인터페이스에 대한 표시 정보를 확인하고, 상기 표시 정보는 상기 사용자 인터페이스의 표시 위치 정보, 크기 정보를 포함하고,
상기 표시 정보를 기반으로, 상기 사용자 인터페이스와 합성(compose)할 상기 배경 블러 이미지의 제1 부분을 획득하고,
상기 제1 배경 이미지, 상기 획득한 배경 블러 이미지의 제1 부분, 상기 사용자 인터페이스를 합성하여 상기 적어도 하나의 디스플레이 상에 표시하고,
상기 사용자 인터페이스의 표시 정보가 변경됨에 따라, 상기 변경된 표시 정보를 기반으로, 상기 사용자 인터페이스와 합성 할 상기 배경 블러 이미지의 제2 부분을 획득하고,
제2 배경 이미지, 상기 획득한 배경 블러 이미지의 제2 부분, 상기 사용자 인터페이스를 합성하여 상기 적어도 하나의 디스플레이 상에 표시하도록 설정되며,
상기 제1 배경 이미지와 상기 제2 배경 이미지는 동일 또는 상이한, 전자 장치.In a head mounted electronic device (300),
At least one camera (320);
At least one display (330);
A memory (340) configured to store instructions; and
Contains a processor (350),
The above processor, when the above instructions are executed, the electronic device (300),
Acquiring a first background image through at least one camera,
Generate the above first background image as a background blur image,
Check display information for a user interface to be displayed on the first background image, and the display information includes display position information and size information of the user interface,
Based on the above display information, a first part of the background blur image to be composited with the user interface is obtained,
Compositely displaying the first background image, the first part of the acquired background blur image, and the user interface on at least one display,
As the display information of the above user interface is changed, a second part of the background blur image to be synthesized with the user interface is obtained based on the changed display information,
A second background image, a second part of the acquired background blur image, and the user interface are set to be synthesized and displayed on at least one display,
An electronic device wherein the first background image and the second background image are the same or different.
상기 전자 장치(300)의 자세 정보를 획득하도록 구성된 하나 이상의 센서(310를 더 포함하고,
상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가,
상기 전자 장치의 자세 정보가 변경됨을 확인하면,
상기 적어도 하나의 카메라(320)를 통해, 상기 변경된 자세 정보에 대응하는 상기 제2 배경 이미지를 획득하도록 설정되는, 전자 장치.In claim 1,
One or more sensors (310) configured to obtain detailed information of the electronic device (300) are further included.
The above processor (350) causes the electronic device (300) to, when the above instructions are executed,
If you confirm that the detailed information of the above electronic device has changed,
An electronic device set to acquire the second background image corresponding to the changed posture information through at least one camera (320).
상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가,
상기 사용자 인터페이스에 포함된 하나 이상의 윈도우에 대해 블러 처리 대상인지 여부를 확인하고,
상기 블러 처리 대상으로 확인된 윈도우가 있으면, 렌더링 환경 정보를 기반으로 블러 옵션 데이터를 결정하고,
상기 결정된 블러 옵션 데이터를 기반으로 상기 제1 배경 이미지에 대한 블러 처리를 수행하여 상기 배경 블러 이미지를 획득하도록 설정되는, 전자 장치.In claim 1,
The above processor (350) causes the electronic device (300) to, when the above instructions are executed,
Check whether one or more windows included in the above user interface are subject to blur processing,
If there is a window identified as a target for the above blur processing, the blur option data is determined based on the rendering environment information,
An electronic device configured to perform blur processing on the first background image based on the determined blur option data to obtain the background blurred image.
상기 렌더링 환경 정보는,
상기 사용자 인터페이스의 밝기, 상기 제1 배경 이미지의 깊이 데이터, 그래픽 버퍼의 크기, 상기 프로세서의 성능 또는 상기 적어도 하나의 디스플레이의 크기 중 적어도 하나를 포함하는, 전자 장치.In claim 3,
The above rendering environment information is:
An electronic device comprising at least one of the brightness of the user interface, depth data of the first background image, a size of a graphics buffer, performance of the processor, or a size of the at least one display.
상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가,
상기 표시 정보를 기반으로 상기 사용자 인터페이스에 포함된 하나 이상의 윈도우에 대한 배경 영역을 계산하고,
상기 배경 블러 이미지로부터 상기 계산된 배경 영역에 대응하는 부분 이미지를 크롭(crop)하여 상기 배경 블러 이미지의 제1 부분을 획득하도록 설정되는, 전자 장치.In claim 1,
The above processor (350) causes the electronic device (300) to, when the above instructions are executed,
Calculating a background area for one or more windows included in the user interface based on the above display information,
An electronic device configured to obtain a first portion of the background blur image by cropping a partial image corresponding to the calculated background area from the background blur image.
상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가,
상기 하나 이상의 윈도우 각각의 크기, 위치, 또는 회전 각도 중 적어도 하나를 기반으로 상기 배경 영역을 계산하도록 설정되는, 전자 장치.In claim 5,
The above processor (350) causes the electronic device (300) to, when the above instructions are executed,
An electronic device configured to calculate the background area based on at least one of the size, position, or rotation angle of each of the one or more windows.
상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가,
상기 사용자 인터페이스에 포함된 하나 이상의 윈도우 중 제1 윈도우의 표시 정보가 변경됨을 확인하면, 상기 변경된 표시 정보를 기반으로 상기 제1 윈도우에 대한 변경된 배경 영역을 계산하고,
상기 배경 블러 이미지로부터 상기 변경된 배경 영역에 대응하는 부분 이미지를 크롭하여 상기 배경 블러 이미지의 제3 부분을 획득하고,
상기 제1 배경 이미지, 상기 배경 블러 이미지의 제3 부분 및 상기 사용자 인터페이스를 합성하여 표시하도록 설정되는, 전자 장치.In claim 1,
The above processor (350) causes the electronic device (300) to, when the above instructions are executed,
When it is confirmed that the display information of a first window among one or more windows included in the user interface has changed, a changed background area for the first window is calculated based on the changed display information,
A third part of the background blur image is obtained by cropping a partial image corresponding to the changed background area from the background blur image,
An electronic device set to display a composite image of the first background image, a third portion of the background blur image, and the user interface.
상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가,
상기 제2 배경 이미지를 획득하면, 상기 제2 배경 이미지에 대한 블러 옵션 데이터를 확인하고,
상기 확인된 블러 옵션 데이터를 기반으로 상기 변경된 제2 배경 이미지에 대응하는 배경 블러 이미지를 생성하도록 하는, 전자 장치.In claim 2,
The above processor (350) causes the electronic device (300) to, when the above instructions are executed,
When the second background image is obtained, the blur option data for the second background image is checked,
An electronic device that generates a background blur image corresponding to the changed second background image based on the above-mentioned confirmed blur option data.
상기 프로세서(350)는, 상기 인스트럭션들이 실행될 시, 상기 전자 장치(300)가,
상기 제1 배경 이미지에 포함된 적어도 하나의 객체에 대한 깊이 데이터를 확인하고,
상기 확인된 깊이 데이터를 기반으로 상기 제1 배경 이미지 내 상기 적어도 하나의 객체에 대응하는 영역 별 블러 세기를 차등적으로 적용하여 상기 배경 블러 이미지를 생성하도록 설정되는, 전자 장치.In claim 1,
The above processor (350) causes the electronic device (300) to, when the above instructions are executed,
Verifying depth data for at least one object included in the first background image,
An electronic device configured to generate the background blur image by differentially applying a blur intensity to each area corresponding to at least one object in the first background image based on the verified depth data.
상기 하나 이상의 윈도우는,
상기 전자 장치에서 실행된 어플리케이션의 실행 화면, 멀티미디어 데이터, 텍스트, 또는 아이콘 중 적어도 하나를 포함하는, 전자 장치.In claim 1,
One or more of the above windows,
An electronic device comprising at least one of an execution screen, multimedia data, text, or icon of an application running on the electronic device.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020230151772 | 2023-11-06 | ||
| KR20230151772 | 2023-11-06 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR20250066353A true KR20250066353A (en) | 2025-05-13 |
Family
ID=95707852
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020230177872A Pending KR20250066353A (en) | 2023-11-06 | 2023-12-08 | Method for providing user interface in extended reality environment and an electronic device thereof |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR20250066353A (en) |
-
2023
- 2023-12-08 KR KR1020230177872A patent/KR20250066353A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12423879B2 (en) | Electronic device and method for anchoring of augmented reality object | |
| KR20220060926A (en) | Electronic apparatus and displaying method thereof | |
| US11829527B2 (en) | Augmented reality device, electronic device interacting with augmented reality device, and controlling method thereof | |
| KR20220136776A (en) | Method for providing augmented reality image and head mounted display device supporting the same | |
| KR20250066353A (en) | Method for providing user interface in extended reality environment and an electronic device thereof | |
| US11341729B2 (en) | Method and electronic device for correcting external reality pixels and virtual content pixels within an augmented reality environment | |
| US20250173919A1 (en) | Device and method for measuring distance with respect to external object | |
| US20240119683A1 (en) | Electronic device and method for providing ar information using watch face image | |
| US20250321636A1 (en) | Wearable device, method, and non-transitory computer-readable storage medium for setting depth value of pixels | |
| US20250068235A1 (en) | Wearable device and method for identifying location of target object | |
| US20250265739A1 (en) | Electronic device and method for acquiring image having changed rendering style | |
| KR20250080724A (en) | Electronic device, method, and computer readable medium for rendering image | |
| US20240071021A1 (en) | Head-mounted electronic device for converting a screen of an electronic device into extended reality and electronic device connected thereto | |
| US20250224801A1 (en) | Electronic device for supporting augmented reality function and operating method thereof | |
| US20240420410A1 (en) | Electronic device and method for displaying content in virtual environment | |
| US20250216683A1 (en) | Wearable device for guiding user's posture and method thereof | |
| US20240054740A1 (en) | Augmented reality device and electronic device interacting with augmented reality device | |
| KR20230022658A (en) | An electronic device comprising foldable display | |
| KR20250015644A (en) | Electronic device, method, and computer-readable storage medium for changing screen based on switching of virtual space | |
| KR20240175670A (en) | Electronic device and method for displaying a content in virtual environment | |
| KR20250077326A (en) | Device and method for measuring distance with respect to external object | |
| WO2025116544A1 (en) | Electronic device, method, and computer-readable medium for rendering images | |
| KR20250030878A (en) | Electronic device, method, and storage medium for obtaining image for tracking | |
| KR20240058729A (en) | Electronic device and method for acquiring an image with a changed rendering style | |
| KR20240018993A (en) | Electronic device and method for visal disortion compensation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20231208 |
|
| PG1501 | Laying open of application |