WO2023219189A1 - 깊이 맵에 기반하여 이미지를 합성하기 위한 전자 장치 및 그 방법 - Google Patents

깊이 맵에 기반하여 이미지를 합성하기 위한 전자 장치 및 그 방법 Download PDF

Info

Publication number
WO2023219189A1
WO2023219189A1 PCT/KR2022/006846 KR2022006846W WO2023219189A1 WO 2023219189 A1 WO2023219189 A1 WO 2023219189A1 KR 2022006846 W KR2022006846 W KR 2022006846W WO 2023219189 A1 WO2023219189 A1 WO 2023219189A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
electronic device
depth
depth map
map
Prior art date
Application number
PCT/KR2022/006846
Other languages
English (en)
French (fr)
Inventor
이건희
김민재
임종화
김찬란
Original Assignee
주식회사 엔씨소프트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 엔씨소프트 filed Critical 주식회사 엔씨소프트
Priority to PCT/KR2022/006846 priority Critical patent/WO2023219189A1/ko
Publication of WO2023219189A1 publication Critical patent/WO2023219189A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration by the use of more than one image, e.g. averaging, subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics

Definitions

  • the descriptions below relate to an electronic device and method for synthesizing images based on a depth map.
  • the electronic device may receive information (eg, text and/or photo) required for image composition from the user. Using the received information, the electronic device can synthesize a virtual image.
  • information eg, text and/or photo
  • an electronic device may include a memory for storing instructions, and at least one processor operably coupled to the memory.
  • the at least one processor may identify a first image including one or more areas distinguished by one or more colors.
  • the at least one processor may obtain, based on the identified first image, at least one depth map based on the one or more areas included in the first image.
  • the at least one processor generates, based on the identified first image and the at least one depth map, a second image including one or more subjects indicated by colors of the one or more regions. It can be obtained.
  • a method of an electronic device may include identifying a first image including one or more areas distinguished by one or more colors.
  • the method of the electronic device may include, based on the identified first image, obtaining at least one depth map based on the one or more areas included in the first image.
  • the method of the electronic device includes an operation of acquiring a second image including one or more subjects indicated by colors of the one or more areas based on the identified first image and the at least one depth map. It can be included.
  • an electronic device may include a memory for storing instructions, and at least one processor operably coupled to the memory.
  • the at least one processor may identify a semantic map indicating the shape and location of one or more subjects.
  • the at least one processor may obtain a plurality of candidate depth maps including depth values of a plurality of pixels included in the semantic map, based on the semantic map.
  • the at least one processor may acquire one or more images in which the one or more subjects are located based on the identified depth map and the semantic map.
  • a method of an electronic device may include identifying a semantic map indicating the shape and location of one or more subjects.
  • the method of the electronic device may include, based on the semantic map, obtaining a plurality of candidate depth maps including depth values of a plurality of pixels included in the semantic map.
  • the method of the electronic device may include identifying a depth map matching the semantic map based on the plurality of candidate depth maps.
  • the method of the electronic device may include an operation of acquiring one or more images in which the one or more subjects are located based on the identified depth map and the semantic map.
  • an electronic device can synthesize an image with quality similar to that of a photograph.
  • an electronic device may generate another image similar to a photograph, from an image including areas specified by a user, and including at least one subject arranged along the areas.
  • FIG. 1 is an exemplary diagram illustrating an operation of an electronic device generating an image, according to an embodiment.
  • Figure 2 is a block diagram of an electronic device, according to one embodiment.
  • FIG. 3 is an example diagram illustrating a depth map generated by an electronic device from an image, according to an embodiment.
  • FIG. 4 is an exemplary diagram illustrating the distribution of depth values within a depth map generated by an electronic device, according to an embodiment.
  • FIG. 5 is an example diagram illustrating an operation in which an electronic device generates one or more images based on an image received from a user and a depth map generated from the image, according to an embodiment.
  • FIG. 6 is a diagram illustrating a plurality of neural networks stored in an electronic device and used to generate an image, according to an embodiment.
  • FIG. 7 is a block diagram for explaining the structure of a model stored in an electronic device and used to generate an image, according to an embodiment.
  • FIG. 8 is a diagram for explaining a neural network stored in an electronic device, according to an embodiment.
  • FIG. 9 is a diagram for explaining an operation of generating a data set stored in an electronic device, used to generate an image, and used to train a model, according to an embodiment.
  • FIG. 10 is a diagram for explaining the operation of an electronic device, according to an embodiment.
  • FIG. 11 is a diagram for explaining the operation of an electronic device, according to an embodiment.
  • FIG. 12 is a diagram for explaining an operation of training a neural network of an electronic device, according to an embodiment.
  • the components are not limited. When a component (e.g. a first) component is said to be “connected (functionally or communicatively)" or “connected” to another (e.g. a second) component, it means that the component is connected to the other component. It may be connected directly to a component or may be connected through another component (e.g., a third component).
  • module used in this document includes a unit comprised of hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit, for example.
  • a module may be an integrated part, a minimum unit that performs one or more functions, or a part thereof.
  • a module may be comprised of an application-specific integrated circuit (ASIC).
  • ASIC application-specific integrated circuit
  • FIG. 1 is an example diagram illustrating an operation of the electronic device 101 to generate an image, according to an embodiment.
  • the electronic device 101 may include a personal computer (PC) such as a desktop 101-1 and/or a laptop 101-2.
  • the electronic device 101 may include a smartphone, a smartpad, and/or a personal computer (PC), like the terminal 101-3.
  • the form factor of the electronic device 101 is not limited to the examples in FIG. 1 and may include smart accessories such as, for example, a smartwatch and a head-mounted device (HMD). You can.
  • One or more hardware included in the electronic device 101, according to one embodiment, is described with reference to FIG. 2 .
  • the electronic device 101 may generate the second image 120 based on the first image 110.
  • the electronic device 101 may obtain the first image 110 from the user.
  • the electronic device 101 may display a user interface (UI) for receiving the first image 110 to the user. Through the UI, the electronic device 101 can obtain the first image 110.
  • the first image 110 received by the electronic device 101 may be referred to as an input image, a segmentation map, and/or a semantic map.
  • the second image 120 generated by the electronic device 101 may be referred to as an output image, a virtual image, and/or a virtual photo.
  • the first image 110 may include one or more regions (eg, regions 112, 114, 116, and 118) distinguished by one or more colors. For example, areas 112, 114, 116, and 118 may be filled with different colors.
  • the first image 110 may be composed of another image (e.g., The second image 120 may include a semantic map indicating one or more subjects.
  • the semantic map may include semantic information of the image corresponding to the semantic map.
  • the semantic information may include information indicating the type, category, location, and/or size of the subject captured in the image.
  • a semantic map may include a plurality of pixels, each corresponding to a pixel in an image and representing the semantic information based on location and/or color.
  • a group of pixels with a specific color may indicate the location and/or size at which a type of subject corresponding to the specific color was captured within the image.
  • areas 112, 114, 116, and 118 may be an example of the group of pixels having the specific color.
  • the first image 110 which is an example of a semantic map, is synthesized from the first image 110 based on the size and/or color of the regions 112, 114, 116, and 118. It may indicate the size and/or category of one or more subjects to be included in another image.
  • area 112 may be filled with a first color (eg, green) representing a lowland.
  • area 114 may be filled with a second color representing acid (eg, brown).
  • area 116 may be filled with a third color (eg, blue) representing the sky.
  • area 118 may be filled with a fourth color (eg, white) representing clouds.
  • the first to fourth colors may be indicated by a one-dimensional vector based on a color space such as RGB, CMYK, and/or YCbCr. Because the regions 112, 114, 116, and 118 are divided into different colors (e.g., the first to fourth colors), the first image including the regions 112, 114, 116, and 118 (110) may not include colors other than the first to fourth colors.
  • the electronic device 101 may obtain information for generating the second image 120 from the first image 110.
  • the information may be information for providing perspective to one or more subjects to be arranged based on the areas 112, 114, 116, and 118 of the first image 110.
  • the information may be referred to as a depth map.
  • the depth map may include a plurality of pixels, each corresponding to a pixel in the semantic map (e.g., first image 110) and having numeric values representing the perspective of each pixel in the semantic map. there is.
  • the numerical values may be referred to as depth values.
  • the depth map that the electronic device 101 acquires from the first image 110 is described with reference to FIGS. 3 and 4.
  • the second image 120 that the electronic device 101 acquires based on the first image 110 includes areas 112, 114, 116, and 118 of the first image 110. It may include one or more subjects arranged based on .
  • the electronic device 101 displays a low area in a portion of the second image 120 corresponding to an area 112 of the first image 110 and a low area in an area 114 of the first image 110.
  • one or more mountains within a portion of the corresponding second image 120 a sky within a portion of the second image 120 corresponding to an area 116 of the first image 110
  • an area of the first image 110 Clouds may be displayed within a portion of the second image 120 corresponding to 118.
  • the electronic device 101 may adjust the perspective of one or more subjects included in the second image 120 based on the depth map obtained from the first image 110.
  • the electronic device 101 may be configured to cause one or more mountains disposed within a portion of the second image 120 corresponding to an area 114 of the first image 110 to have a perspective based on the depth map.
  • a second image 120 may be generated.
  • the electronic device 101 may display a low-lying area located within a portion of the second image 120 corresponding to an area 112 of the first image 110 so that the second image has a perspective based on the depth map. (120) can be generated.
  • An operation in which the electronic device 101 generates the second image 120 based on the first image 110 and the depth map, according to one embodiment, is described with reference to FIGS. 5 and 6 .
  • the electronic device 101 displays information not represented by the first image 110 (e.g., the terrain of a mountain to be placed within the area 114 filled with the second color). (e.g., a ridge), or the perspective of a low-lying area to be placed within the area 112 filled with the first color) may be inferred. Based on the inferred information, the electronic device 101 may generate a realistic second image 120 from the first image 110. Below, with reference to FIG. 2 , one or more pieces of hardware included in the electronic device 101 of FIG. 1 for generating the second image 120 from the first image 110 are described.
  • FIG. 2 is a block diagram of an electronic device 101, according to one embodiment.
  • the electronic device 101 of FIG. 2 may be an example of the electronic device 101 of FIG. 1 .
  • the electronic device 101 may include at least one of a processor 220, a memory 230, a display 240, or a communication circuit 250.
  • Processor 220, memory 230, display 240, and communication circuit 250 are electrically and/or operationally connected to each other by electronic components such as a communication bus 210. Can be connected (electronically and/or operably coupled with each other).
  • a communication bus 210 can be connected (electronically and/or operably coupled with each other).
  • SoC SoC
  • the type and/or number of hardware components included in the electronic device 101 are not limited to those shown in FIG. 2 .
  • electronic device 101 may include only some of the hardware components shown in FIG. 2 .
  • the processor 220 of the electronic device 101 may include hardware components for processing data based on one or more instructions.
  • Hardware components for processing data include, for example, an Arithmetic and Logic Unit (ALU), a Floating Point Unit (FPU), a Field Programmable Gate Array (FPGA), a Central Processing Unit (CPU), and/or an Application Processor (AP).
  • ALU Arithmetic and Logic Unit
  • FPU Floating Point Unit
  • FPGA Field Programmable Gate Array
  • CPU Central Processing Unit
  • AP Application Processor
  • the number of processors 220 may be one or more.
  • the processor 220 may have the structure of a multi-core processor such as dual core, quad core, or hexa core.
  • the memory 230 of the electronic device 101 may include hardware components for storing data and/or instructions input and/or output to the processor 220.
  • the memory 230 may include, for example, volatile memory such as random-access memory (RAM) and/or non-volatile memory such as read-only memory (ROM). there is.
  • Volatile memory may include, for example, at least one of Dynamic RAM (DRAM), Static RAM (SRAM), Cache RAM, and Pseudo SRAM (PSRAM).
  • Non-volatile memory may include, for example, at least one of PROM (Programmable ROM), EPROM (Erasable PROM), EEPROM (Electrically Erasable PROM), flash memory, hard disk, compact disk, and eMMC (Embedded Multi Media Card). You can.
  • PROM Programmable ROM
  • EPROM Erasable PROM
  • EEPROM Electrically Erasable PROM
  • flash memory hard disk, compact disk, and eMMC (Embedded Multi Media Card). You can.
  • one or more instructions indicating operations and/or operations to be performed by processor 220 on data may be stored.
  • a set of one or more instructions may be referred to as firmware, operating system, process, routine, sub-routine and/or application.
  • the electronic device 101 and/or the processor 220 executes a set of a plurality of instructions distributed in the form of an operating system, firmware, driver, and/or application. , at least one of the operations of FIGS. 10 to 12 may be performed.
  • the fact that an application is installed on the electronic device 101 may mean that one or more instructions provided in the form of an application are stored in the memory 230 of the electronic device 101.
  • That an application is installed on the electronic device 101 means that the one or more applications are in an executable format (e.g., an extension specified by the operating system of the electronic device 101) by the processor 220 of the electronic device 101. It may mean that it is saved as a file with .
  • an executable format e.g., an extension specified by the operating system of the electronic device 101
  • the display 240 of the electronic device 101 outputs visualized information (e.g., the first image 110 and/or the second image 120 of FIG. 1) to the user.
  • the display 240 may be controlled by a controller such as a GPU (Graphic Processing Unit) to output visualized information to the user.
  • the display 240 may include a flat panel display (FPD) and/or electronic paper.
  • the FPD may include a Liquid Crystal Display (LCD), a Plasma Display Panel (PDP), and/or one or more Light Emitting Diodes (LED).
  • the LED may include OLED (Organic LED).
  • the communication circuit 250 of the electronic device 101 may include hardware components to support transmission and/or reception of electrical signals between the electronic device 101 and an external electronic device.
  • the communication circuit 250 may include, for example, at least one of a modem, an antenna, and an optical/electronic (O/E) converter.
  • the communication circuit 280 includes Ethernet, LAN (Local Area Network), WAN (Wide Area Network), WiFi (Wireless Fidelity), Bluetooth, BLE (Bluetooth Low Energy), ZigBee, LTE (Long Term Evolution), It can support transmission and/or reception of electrical signals based on various types of protocols, such as 5G NR (New Radio).
  • the electronic device 101 can receive the first image 110 of FIG. 1 from an external electronic device, or transmit the second image 120 of FIG. 1 to an external electronic device. there is.
  • the electronic device 101 may include one or more hardware for receiving, combining, and/or displaying images.
  • the electronic device 101 may perform compositing of the image using software running based on the one or more pieces of hardware.
  • the electronic device 101 may run software based on artificial intelligence, such as a neural network.
  • artificial intelligence such as a neural network.
  • FIG. 3 is an example diagram for explaining a depth map (e.g., depth maps 310, 320, and 330) generated by an electronic device from an image (e.g., first image 110), according to an embodiment.
  • the electronic device in FIG. 3 may be an example of the electronic device 101 in FIGS. 1 and 2 .
  • the first image 110 of FIG. 3 may include the first image 110 of FIG. 1 .
  • FIG. 3 an example of a first image 110 received from a user by an electronic device is shown, according to one embodiment.
  • the electronic device Based on the first image 110, one or more subjects to be included in another image to be synthesized (eg, the second image 120 of FIG. 1) may be identified.
  • the electronic device may acquire one or more depth maps (eg, depth maps 310, 320, and 330) with different distributions of depth values within one area of the first image 110.
  • the one or more depth maps may be used to provide perspective to the other image while the electronic device composites the other image from the first image 110.
  • the electronic device may obtain a plurality of depth maps 310, 320, and 330 selectable by the user from the first image 110.
  • the electronic device may obtain depth maps 310, 320, and 330 by assigning depth values to each pixel of the first image 110, which is a semantic map.
  • An embodiment is shown in which the electronic device acquires three depth maps 310, 320, and 330 from the first image 110, but the embodiment is not limited thereto.
  • the number of depth maps that the electronic device obtains from the first image 110 may be 1 or more.
  • An exemplary structure of a neural network that the electronic device executes to obtain a depth map from the first image 110, according to one embodiment, is described with reference to FIGS. 7 and 8 .
  • the electronic device may provide the user with selectable options based on a plurality of depth maps 310, 320, and 330 in order to identify the user's intention related to the first image 110. You can.
  • the electronic device may display at least one of the depth maps 310, 320, and 330 on a display (eg, display 240 of FIG. 2).
  • the electronic device may display one or more visual objects (eg, radio buttons) for selecting one of the depth maps 310, 320, and 330.
  • the electronic device may select one of the depth maps 310, 320, and 330 based on the input of the one or more visual objects.
  • the electronic device can synthesize a second image (eg, the second image 120 of FIG. 1) based on virtual reality.
  • the electronic device may synthesize the second image reflecting the user's intention based on the depth map selected by the user.
  • selectable options provided to the user from the electronic device and based on the plurality of depth maps 310, 320, and 330 include an option to edit at least one of the plurality of depth maps 310, 320, and 330. It can be included.
  • the electronic device may display a UI and/or a screen on which at least one of the depth maps 310, 320, and 330 can be edited.
  • the electronic device may display depth values assigned to pixels of at least one depth map based on different colors within the UI.
  • the electronic device may change at least one depth map based on an input for adjusting the colors within the UI.
  • the electronic device displays one or more regions included in the first image 110 (e.g., regions 112, 114, 116, and 118) based on the first image 110. )), at least one depth map (eg, depth maps 310, 320, and 330) based on the depth map can be obtained.
  • the at least one depth map may represent a perspective of a second image to be synthesized from the first image 110.
  • the electronic device may provide the user with an option to select and/or change the plurality of depth maps.
  • FIG. 4 is an exemplary diagram illustrating the distribution of depth values within a depth map generated by an electronic device, according to an embodiment.
  • the electronic device in FIG. 4 may be an example of the electronic device 101 in FIGS. 1 and 2 .
  • the depth maps 310 and 320 of FIG. 4 may correspond to the depth maps 310 and 320 of FIG. 3 .
  • Depth maps 310 and 320 may be obtained based on the operation of the electronic device described above with reference to FIG. 3 .
  • the distribution of depth values of the depth maps 310 and 320 is shown based on the density of dots.
  • the density of dots may be inversely proportional to the depth value. For example, as the density of dots increases, the length value may decrease.
  • points A and B are shown, which have matching coordinates in the depth maps 310 and 320.
  • Each of the graphs 410 and 420 may represent a distribution of depth values assigned to pixels included on a line connecting point A and point B of the depth maps 310 and 320.
  • the X axis of the graphs 410 and 420 may represent the distance from point A.
  • the Y axis of the graphs 410 and 420 may relatively represent the size of the depth value.
  • the size of the depth value is the subject in the second image to be synthesized from the first image 110 (e.g., the second image 120 in FIG. 1) and the virtual location where the second image was captured. It can represent the distance between
  • a line connecting point A and point B may be included in the area 114 of the first image 110.
  • pixels in the first image 110 corresponding to the line may be a second color (eg, brown).
  • the electronic device displays the regions 112, 114, 116, and 118 of the first image 110, respectively, indicated by colors assigned to each of the regions 112, 114, 116, and 118. Based on the types of subjects, depth values included in each of the depth maps 310 and 320 can be adjusted.
  • the electronic device can adjust the distribution of depth values.
  • the electronic device adjusts the depth values between lines A-B of the depth map 310 included in the area 114 of the first image 110 to calculate the The ridge can be expressed.
  • the electronic device may indicate the ridge of a mountain based on discontinuities in depth values.
  • the electronic device may represent a single mountain by assigning depth values between points A to C of the depth map 310 as continuous values.
  • the electronic device may allocate depth values between points D and B of the depth map 310 to be smaller than depth values between points A and D.
  • the electronic device uses a depth map 320 that is different from the depth map 310 to determine the perspective of the first image 110 and perspective based on the depth map 310. It can be provided differently.
  • the distribution of depth values between lines A-B of the depth map 320 is the distribution of depth values between lines A-B of the depth map 310 represented by the graph 410.
  • depth values between points A and E of the depth map 320 may be assigned to be smaller than depth values between points E and B.
  • a mountain including points A to E is located at points F to B within the second image. It may appear closer than other acids it contains.
  • the electronic device generates one or more depth maps (e.g., the depth maps 310, 320, and 330 of FIG. 3) from one semantic map (e.g., the first image 110). It can be obtained.
  • the one or more depth maps may have a distribution of different depth values.
  • the electronic device obtains a plurality of depth maps from one semantic map
  • the electronic device provides the plurality of depth maps to the user as a candidate depth map for synthesizing an image. can be provided. Based on the depth map, the electronic device can synthesize a semantic map and an image with improved perspective than an image synthesized using the semantic map among the depth maps.
  • An electronic device can simultaneously use a semantic map and a depth map to synthesize an image with a subject that matches the user's intent rather than an image synthesized using the depth map among the semantic map and the depth map. Because different segments of the depth map are mapped one-to-one to different segments of the image (e.g., the output image) synthesized by the electronic device, the electronic device can perform the user's intuitive editing of the depth map and based on the edited depth map. It can support compositing of images.
  • FIG. 5 is an example diagram illustrating an operation in which an electronic device generates one or more images based on an image received from a user and a depth map generated from the image, according to an embodiment.
  • the electronic device in FIG. 5 may be an example of the electronic device 101 in FIGS. 1 and 2 .
  • the depth map 310 of FIG. 5 may correspond to the depth map 310 of FIGS. 3 and 4 .
  • the first image 110 of FIG. 5 may correspond to the first image 110 of FIG. 1 and/or FIGS. 3 and 4 .
  • the electronic device includes a first image 110, which is an input image, and a single depth map (e.g., the depth map of FIGS. 3 to 6) corresponding to the first image 110. 310)), one or more output images may be obtained.
  • the electronic device selects the depth map 310 from a plurality of depth maps (e.g., the depth maps 310, 320, and 330 of FIG. 3) corresponding to the first image 110 from the user. , the operation of obtaining one or more output images is described.
  • the embodiment is not limited thereto.
  • the electronic device may obtain one or more output images corresponding to each of the plurality of depth maps based on the plurality of depth maps received from the user.
  • FIG. 5 illustrates a first output image 510 and a second output image 520 as examples of one or more output images that the electronic device acquires from the depth map 310, according to an embodiment.
  • the electronic device may display one or more subjects represented by the first image 110 within the one or more output images, based on perspective based on the depth map 310.
  • the lowland area corresponds to the area 112 of the first image 110.
  • a first output image 510 and a second output image 520 disposed in respective parts of the second output image 520, where one or more mountains correspond to the area 114 of the first image 110.
  • the sky is disposed in each portion of the first output image 510 and the second output image 520 corresponding to the area 116 of the first image 110
  • the cloud It may be disposed in each portion of the first output image 510 and the second output image 520 corresponding to the area 118 of the first image 110.
  • the electronic device may generate a first output image 510 and a second output image 520 based on different styles.
  • the style may be adjusted differently depending on the output image, depending on different combinations of subjects included in the type indicated by the first image 110.
  • the style may be distinguished based on the mood and/or painting style of the output image.
  • the portion of the first output image 510 corresponding to the area 116 of the first image 110, and the portion of the second output image 520 each correspond to a type, such as the sky. May include different subjects (e.g., day sky, and night sky).
  • each of the portion of the first output image 510 corresponding to the area 112 of the first image 110 and the portion of the second output image 520 is within a type, such as a lowland. May include different subjects.
  • the portion of the first output image 510 corresponding to the area 112 of the first image 110 may represent a lowland area that does not include a lake.
  • the portion of the second output image 520 that corresponds to area 112 of first image 110 may represent a lake, and other low-lying areas, including trees.
  • a portion of the first output image 510 corresponding to the area 114 of the first image 110 may include a plurality of mountains filled with trees.
  • the portion of the second output image 520 corresponding to the area 114 of the first image 110 may include snow-covered rocky mountains.
  • the electronic device generates a first output image 510 corresponding to each of the regions 112, 114, 116, and 118 of the first image 110, and a first output image 510, based on the depth map 310.
  • 2 Perspective can be added within different parts of the output image 520 and/or at the boundaries between the parts.
  • subjects representing the lowland e.g., grass
  • depth values of a portion corresponding to the area 112 of the first image 110 may be displayed in different sizes, shapes, and/or colors.
  • a plurality of mountains are displayed in a depth map 310. It may have one or more ridges based on depth values of a portion corresponding to the area 114 of the first image 110 .
  • the electronic device displays a depth map 310. ), a plurality of mountains can be displayed based on ridges indicated by depth values.
  • the electronic device may display the first output image 510 and the second output image 520 to the user.
  • the electronic device may display, within a display (e.g., display 240 of FIG. 2), a first output image 510, which is a result of synthesizing the output image from the first image 110, which is a semantic map, or a second output.
  • a display e.g., display 240 of FIG. 2
  • At least one of the images 520 may be displayed.
  • the electronic device transmits at least one of the first output image 510 or the second output image 520 to an external electronic device using a communication circuit (e.g., the communication circuit 250 of FIG. 2). can do.
  • a communication circuit e.g., the communication circuit 250 of FIG. 2
  • At least one of the first output image 510 or the second output image 520 is stored in the memory of the electronic device (e.g., in FIG. 2) based on a format for representing images, such as JPEG (Joint Photographic Experts Group). It may be stored in memory 230).
  • JPEG Joint Photographic Experts Group
  • the electronic device may display at least one of the first output image 510 or the second output image 520 in three dimensions based on the depth map 310.
  • the electronic device such as a head-mounted device (HMD) outputs an image (e.g., one of the first output image 510 or the second output image 520) with binocular disparity to each of the user's eyes. output image) can be displayed.
  • the binocular disparity may be provided to the user based on the depth map 310 in an embodiment in which the electronic device displays one of the first output image 510 or the second output image 520. You can.
  • the depth map 310 obtained from the first image 110 which is a semantic map, may be stored in the electronic device along with at least one of the first output image 510 or the second output image 520. there is.
  • the electronic device receives from the user and receives from the first image 110 having solid color areas 112, 114, 116, and 118, the areas ( 112, 114, 116, 118) including one or more subjects indicated by each color, and a perspective indicated by at least one depth map (e.g., depth map 310) obtained from the first image 110
  • One or more output images e.g, a first output image 510 and a second output image 520
  • the electronic device synthesizes another image (e.g., image 530) from the first image 110 independently of the depth map 310, the areas 112, 114, 116, and 118 of the first image 110 ) Adding perspective to one or more subjects placed respectively may be limited.
  • the electronic device additionally obtains at least one depth map corresponding to the input image (e.g., the first image 110) received from the user, and has a perspective according to the at least one acquired depth map.
  • One or more output images may be obtained. Based on the one or more output images with the perspective, the electronic device can support the synthesis of a more realistic image (eg, a landscape image).
  • an electronic device may generate an output image (e.g., a first output image 510) and/or a second output image (e.g., a first output image 510) from an input image such as the first image 110.
  • an output image e.g., a first output image 510
  • a second output image e.g., a first output image 510
  • a neural network used to synthesize 520) and a model based on the neural network are described.
  • FIG. 6 is a diagram illustrating a plurality of neural networks stored in an electronic device and used to generate an image, according to an embodiment.
  • the electronic device in FIG. 6 may be an example of the electronic device 101 in FIGS. 1 and 2 .
  • the first image 110 of FIG. 6 may correspond to the first image 110 of FIG. 1 and/or FIGS. 3 to 5.
  • the depth maps 310, 320, and 330 of FIG. 6 may correspond to each of the depth maps 310, 320, and 330 of FIG. 3.
  • the first output image 510 and the second output image 520 of FIG. 6 may correspond to the first output image 510 and the second output image 520 of FIG. 5 , respectively.
  • FIG. 6 is executed in an electronic device according to an embodiment, and output image (e.g., first output image 510, and/or second output image 520) from an input image (e.g., first image 110). )
  • This is a diagram to explain one or more processes for obtaining.
  • functions and/or sub-routines included in one or more processes executed in an electronic device according to an embodiment are shown divided according to information transmitted between functions and/or sub-routines. .
  • the electronic device according to one embodiment may execute one or more processes divided into blocks in FIG. 6 based on one or more instructions stored in a memory (eg, memory 230 of FIG. 2).
  • the processes may run in a second state distinct from the first state visible to the user, for example, as a background process and/or daemon.
  • the electronic device generates one or more depth maps (e.g., depth maps 310, 320, and 330) from the first image 110 based on execution of the depth map generator 610. ) can be obtained.
  • the depth map generator 610 includes an input image (e.g., the first image 110) including a plurality of regions distinguished by one or more colors, and a set (Z1) of one or more random numbers. Based on this, it may be a process (or a pipeline) of an electronic device for executing a neural network for generating one or more depth maps.
  • One or more random numbers can be selected independently of the rules of the sequence.
  • the one or more random numbers may include pseudo-random numbers randomly selected based on a timestamp expressed in milliseconds.
  • the random numbers included in the set Z1 are used in the first image to increase the diversity of depth maps obtained by the depth map generator 610 while the electronic device executes the depth map generator 610. It can be input to the depth map generator 610 along with 110.
  • the number of random numbers included in the set Z1 is the number of depth maps (e.g., 3, which is the number of depth maps 310, 320, and 330) acquired by the electronic device using the depth map generator 610. dog) can be matched.
  • the depth map generator 610 may be referred to as a semantic-to-depth translation unit.
  • the electronic device generates one or more output images (e.g., the first image 110) from the first image 110 and at least one depth map based on execution of the output image generator 620.
  • 1 output image 510 and a second output image 520) can be obtained.
  • the output image generator 620 includes a depth map of one of the depth maps obtained by the depth map generator 610, a first image 110 input to the depth map generator 610, and one It may be a process (or pipeline) of an electronic device for executing a neural network for synthesizing one or more output images based on the above set of random numbers (Z2).
  • the random numbers included in the set Z2 are used to adjust the variety and/or style of output images synthesized by the output image generator 620 while the electronic device executes the output image generator 620.
  • 1 image 110, along with at least one depth map, may be input to the output image generator 620.
  • the number of random numbers included in the set Z2 is the number of output images acquired by the electronic device using the output image generator 620 (e.g., the first output image 510 and the second output image It can be matched to (2) which is the number of (520).
  • the output image generator 620 may be referred to as a semantic and depth-to-image translation unit.
  • the electronic device outputs one or more outputs from an input image, such as the first image 110, based on the serial connection of the depth map generator 610 and the output image generator 620.
  • Images eg, first output image 510 and second output image 520
  • the serial connection may be referred to as a 2-phase inference pipeline.
  • the electronic device may use the depth map generator 610 to provide the user with options for depth maps while compositing an output image based on the serial connection.
  • the user can select and/or edit one of the depth maps to adjust the perspective to be added to the output image desired to be obtained from the input image. Because the electronic device synthesizes an output image based on a specific depth map selected and/or edited by the user, the electronic device can synthesize an output image that meets the user's intent.
  • FIG. 7 is a block diagram for explaining the structure of a model 700 that is stored in an electronic device and is used to generate an image, according to an embodiment.
  • the electronic device in FIG. 7 may be an example of the electronic device 101 in FIGS. 1 and 2 .
  • the model 700 of FIG. 7 is an example block diagram for explaining an algorithm commonly included in the depth map generator 610 and the output image generator 620 of FIG. 6 and implemented in software. .
  • an electronic device outputs one or more output images (e.g., the second image 120 of FIG. 1) from an input image (e.g., the first image 110 of FIG. 1).
  • the model 700 used to generate may have a structure based at least on the StyleGAN model.
  • model 700 may have a modified structure to generate one or more depth maps based on the styleGAN model.
  • model 700 may have a modified structure to generate the output image from a semantic map (e.g., the input image) and/or a depth map, based on the styleGAN model.
  • the model 700 includes a Condition Preparation Module 710 that receives at least one image 714 and one or more random numbers 712.
  • a condition fusion module 730 that receives information (e.g., feature maps, feature information, feature vectors, and/or latent maps) generated based on the condition fusion module 730. ) and an image synthesis module 740 that receives random numbers 744 such as noise. Since the model 700 includes the condition preparation module 710, the electronic device can change the diversity of at least one image output by the image synthesis module 740 based on the random numbers 712.
  • random numbers 712 may be elements of sets of random numbers (Z1, Z2) in FIG. 6.
  • the electronic device may obtain rate maps 718 based on random numbers 712 based on the mapping network 716 of the condition preparation module 710 of the model 700.
  • Latent maps 718 may be referred to as random latent maps.
  • Latent maps 718 may include a plurality of numerical values output from the mapping network 716 while random numbers 712 propagate along a plurality of layers within the mapping network 716.
  • the rate maps 718 may be three-dimensional information of the channel number, width, and width of the mapping network 716.
  • the width, and/or the width may be the width, and/or the width of the output image to be synthesized based on the model 700.
  • the number of channels may have different numerical values depending on the implementation of the model 700.
  • the number of latent maps 718 may be matched to the number of random numbers 712 received by the condition preparation module 710.
  • the electronic device resizes at least one image 714 (e.g., represented by blocks 720 and 724, based on the condition preparation module 710 of the model 700, and blocks ( differently defined sizes for each block 720 and 724), and convolution (e.g., a convolution operation represented by blocks 722 and 726) may be performed.
  • at least one image 714 may be adjusted to a first size and then subjected to a convolution operation.
  • at least one image 714 may be adjusted to a second size that is different from the first size and then subjected to a convolution operation.
  • the electronic device determines a plurality of conditional rates based on a convolution operation (e.g., a convolution operation represented by blocks 722 and 726) corresponding to different sizes within the model 700. Codes 728 can be obtained.
  • the plurality of condition rate codes 728 that the electronic device obtains from the condition preparation module 710 are the result of the convolution operation (e.g., condition map) within the channel unit (channel-wise). It may contain information combined from .
  • Conditional latency codes 728 similar to latency maps 718, may be three-dimensional information based on channel number, width, and width. The number of channels, the width, and the width of the conditional latency codes 728 may be independently set for each conditional latency code 728. In one embodiment, the width of the conditional rate codes 728, and the width may match the width of the output image to be synthesized by the model 700, and the width.
  • the electronic device uses the condition synthesis module 730 in the model 700 to obtain rate maps 718 based on random numbers 712 and condition rate codes 728. Synthesis can be performed. The synthesis may be performed to match features within the image synthesis module 740 based on convolution operations and upsampling operations. Referring to FIG. 7, w 1 + and w 2 + may be referred to as an intermediate fusion map. The intermediate synthesis map may include a result of the electronic device performing the synthesis based on the condition synthesis module 730.
  • the electronic device inputs the i th intermediate synthesis map (w i + ) to a specific layer (e.g., i + 1 th layer) of the conditional synthesis module 730, which is divided into a convolution operation.
  • a specific layer e.g., i + 1 th layer
  • Random numbers 744 such as noise, may be input to each layer of the image synthesis module 740.
  • Serial convolution operations within the image synthesis module 740 may be performed serially until the size of at least one image 714 input to the model 700 is reached.
  • the electronic device uses the image synthesis module 740 in the model 700 to map the intermediate synthesis map of each layer of the conditional synthesis module 730 (e.g., the intermediate synthesis map of the ith layer w i + ) can be obtained.
  • the electronic device can input a designated numerical value 742 (eg, a constant number) into the image synthesis module 740.
  • the specified numerical value 742 can be set for compositing images in the styleGAN model.
  • the electronic device may add noise per pixel using random numbers 744. Random numbers 744 may be input to model 700 to increase the diversity of images synthesized by model 700.
  • the electronic device may train the model 700 based on adversarial learning. An operation in which an electronic device trains the model 700, according to one embodiment, is described with reference to FIG. 9 .
  • Each of the depth map generator 610 and output image generator 620 of FIG. 6 may include the model 700 of FIG. 7 .
  • the depth map generator 610 of FIG. 6, through the condition preparation module 710 of FIG. 7, generates one or more random numbers (e.g., elements of the set of random numbers Z1 of FIG. 6), and semantics.
  • a map (eg, the first image 110 of FIG. 1) may be received.
  • the electronic device while executing the depth map generator 610 of FIG. 6, obtains one or more depth maps corresponding to one or more random numbers from the semantic map, based on the operation described above with reference to FIG. 7. can do.
  • the electronic device may obtain a plurality of depth maps based on the affine transformation of the image synthesis module 740.
  • the output image generator 620 of FIG. 6 may use the condition preparation module 710 for receiving at least one image 714 of FIG. 7 to generate a depth map selected by the user, and a semantic map. can be obtained. Using the depth map, the semantic map, and one or more random numbers (eg, elements of the set of random numbers Z2 in FIG. 6), the electronic device can synthesize one or more output images. The electronic device can synthesize the output images based on the image synthesis module 740 included in the output image generator 620 of FIG. 6.
  • the electronic device can obtain a high-quality output image (eg, an output image with a size of 1024 ⁇ 1024) using a neural network based on convolution operation.
  • a neural network based on a convolution operation such as blocks 722 and 726, according to one embodiment, is described.
  • FIG. 8 is a diagram for explaining a neural network 810 stored in an electronic device, according to an embodiment.
  • the electronic device of FIG. 8 may include the electronic device 101 of FIGS. 1 and 2 .
  • FIG. 8 is an example diagram illustrating a neural network 810 that an electronic device acquires from a set of parameters stored in a memory, according to an embodiment.
  • Neural network 810 of FIG. 8 may be included in model 700 of FIG. 7.
  • the model 700 of FIG. 7 may include a neural network represented based on a set of a plurality of parameters stored in a memory (eg, memory 120 of FIGS. 1 and 2).
  • neurons of a neural network for performing a convolution operation of the model 700 of FIG. 7 may be divided along a plurality of layers.
  • the neurons may be represented by a connection line connecting a specific node included in a specific layer and another node included in another layer different from the specific layer, and/or a weight assigned to the connection line.
  • the neural network 810 may include an input layer 820, hidden layers 830, and an output layer 840.
  • the number of hidden layers 830 may vary depending on the embodiment.
  • the input layer 820 may receive a vector representing input data (eg, a vector with elements corresponding to the number of nodes included in the input layer 820). Based on the input data, signals generated at each node in the input layer 820 may be transmitted from the input layer 820 to the hidden layers 830.
  • the output layer 840 generates a neural network 810 based on one or more signals received from one of the hidden layers 830 (e.g., the last hidden layer in the sequence of hidden layers 830). Output data can be generated.
  • the output data may include a vector having elements mapped to each of the nodes included in the output layer 840.
  • hidden layers 830 may be located between the input layer 820 and the output layer 840. Numerical values received through the nodes of the input layer 820 may be changed based on weights assigned between the hidden layers 830 while propagating along the serial connection of the hidden layers 830. For example, as input data received through the input layer 820 sequentially propagates from the input layer 820 along the hidden layers 830, the input data moves through nodes of different layers. It can change gradually based on the connecting weights.
  • each of the layers (eg, input layer 820, hidden layers 830, and output layer 840) of the neural network 810 may include a plurality of nodes.
  • the connection between hidden layers 830 may be related to a convolutional filter in a convolutional neural network (CNN).
  • CNN convolutional neural network
  • one or more hidden layers 830 may be a layer based on a recurrent neural network (RNN) whose output value is re-input to the hidden layer at the current time.
  • RNN recurrent neural network
  • LSTM Long Short-Term Memory
  • at least one of the values of the nodes of the neural network 810 may be discarded, maintained for a relatively long period of time, or maintained for a relatively short period of time.
  • the neural network 810 of the electronic device may include a relatively increased number of hidden layers 830, forming a deep neural network. Training a deep neural network is called deep learning.
  • Nodes included in hidden layers 830 may be referred to as hidden nodes.
  • Nodes included in the input layer 820 and hidden layers 830 may be connected to each other through connection lines with weights (e.g., convolutional filters represented as a two-dimensional matrix including the weights), and the hidden layer and output layer Nodes included in can also be connected to each other through connection lines with weights.
  • Tuning and/or training the neural network 810 involves nodes included in each of the layers (e.g., input layer 820, hidden layers 830, and output layer 840) of the neural network 810. This may mean changing the weights between the values. Tuning of the neural network 810 may be performed based on, for example, supervised learning and/or unsupervised learning.
  • FIG. 9 is a diagram for explaining an operation of generating a data set stored in an electronic device, used to generate an image, and used to train a model, according to an embodiment.
  • the electronic device in FIG. 9 may be an example of the electronic device 101 in FIGS. 1 and 2 .
  • the model in FIG. 9 may include the model 700 in FIG. 7 .
  • the electronic device may, from an image 915, create a depth map 935 indicating the distribution of depth values of the image 915, and the location of one or more subjects within the image 915.
  • a semantic map 925 to indicate size, and/or shape may be obtained.
  • the image 915 may include a photograph such as a landscape photograph.
  • the image 915 may be stored in the background database 910.
  • the depth map 935 may be stored in the depth map database 930.
  • the semantic map 925 may be stored in the semantic map database 920.
  • the electronic device may include a plurality of images (e.g., image 915) stored in the background database 910, a plurality of semantic maps (e.g., semantic map 925) stored in the semantic map database 920, and Train a model (e.g., model 700 in FIG. 7) for synthesizing an output image from a semantic map based on a combination of a plurality of depth maps (e.g., depth map 935) stored in the depth map database 930. can do.
  • a model e.g., model 700 in FIG. 7
  • the depth map generator 610 of FIG. 6, which has the structure of the model 700 of FIG. 7, includes a plurality of semantic maps stored in the semantic map database 920 and a plurality of semantic maps stored in the depth map database 930. It can be trained based on pairs of depth maps.
  • the output image generator 620 of FIG. 6, which has the structure of the model 700 of FIG. 7, has images stored in each of the background database 910, the semantic map database 920, and the depth map database 930. It may be trained based on a combination of a semantic map (e.g., image 915), a semantic map (e.g., semantic map 925), and a depth map (e.g., depth map 935).
  • the electronic device may train the model based on adversarial learning. For example, the electronic device may measure the degree of similarity between an image synthesized by the model and an image stored in the background database 910 based on a model different from the model. Based on the measured similarity, the electronic device can train the model.
  • the electronic device is based on at least one of adversarial loss, perceptual loss, domain-guided loss, reconstruction loss, or regularization, the model, and Adversarial learning based on the different models can be performed.
  • the electronic device generates the semantic map (
  • the output image may be synthesized from another semantic map that is different from 925 (e.g., a semantic map not stored in the semantic map database 920).
  • the synthesized output image may have a resolution similar to that of the image 915 stored in the background database 910.
  • the synthesized output image may have similar image quality, and/or depth accuracy, to image 915.
  • FIG. 10 is a diagram for explaining the operation of an electronic device, according to an embodiment.
  • the electronic device of FIG. 10 may include the electronic device 101 of FIGS. 1 and 2 . At least one of the operations of FIG. 10 may be performed by the electronic device 101 of FIGS. 1 and 2 and/or the processor 220 of FIG. 2 .
  • the electronic device displays a first image (e.g., the first image 110 of FIG. 1) including one or more areas distinguished by one or more colors. )) can be identified.
  • the first image may be a semantic map for representing the one or more subjects based on at least one of the shape of the one or more areas or the one or more colors filled in the one or more areas.
  • a semantic map may include multiple regions filled with different colors.
  • the different colors may indicate the type of one or more subjects.
  • the shape of the plurality of areas may indicate the shape and location of the one or more subjects.
  • the electronic device may acquire at least one depth map based on one or more areas included in the first image.
  • the electronic device may obtain the at least one depth map based on the depth map generator 610 of FIG. 6.
  • the depth map generator 610 of FIG. 6 may have the structure of the model 700 of FIG. 7 .
  • the electronic device may obtain a plurality of candidate depth maps.
  • the plurality of candidate depth maps may have different distributions of depth values based on a plurality of random numbers.
  • At least one depth map obtained by the electronic device may have different depth values within a region of the first image of operation 1010. For example, a depth value assigned to a first pixel of a specific area filled with a single color in the first image may be different from a depth value assigned to a second pixel of the specific area.
  • the electronic device may receive an input for selecting one of the plurality of candidate depth maps or editing at least one.
  • the electronic device can determine a depth map. Based on the determined depth map, the electronic device may perform operation 1030.
  • the electronic device acquires a second image including one or more subjects based on the identified first image and the at least one depth map. can do.
  • the at least one depth map may include the determined depth map.
  • the second image may include an output image (eg, the second image 120 of FIG. 1) synthesized from the first image of the operation 1010.
  • the electronic device may display a second image including a plurality of subjects having different types matching each of the plurality of colors. can be obtained.
  • the electronic device may acquire one or more second images based on one or more random numbers, the first image, and the at least one depth map.
  • the electronic device may acquire the one or more second images based on the output image generator 620 of FIG. 6.
  • the output image generator 620 of FIG. 6 may have the structure of the model 700 of FIG. 7 .
  • the electronic device may display the one or more second images on a display (eg, display 240 of FIG. 2).
  • the electronic device may store the one or more second images in the memory 230 .
  • the electronic device may store the one or more second images together with the identified depth map in operation 1130.
  • FIG. 11 is a diagram for explaining the operation of an electronic device, according to an embodiment.
  • the electronic device of FIG. 11 may include the electronic device 101 of FIGS. 1 and 2 . At least one of the operations of FIG. 11 may be performed by the electronic device 101 of FIGS. 1 and 2 and/or the processor 220 of FIG. 2 .
  • the electronic device may identify a semantic map indicating the shape and location of one or more subjects.
  • the semantic map may include the first image 110 of FIG. 1. Similar to operation 1010 of FIG. 10, the electronic device may perform operation 1110 of FIG. 11.
  • the colors of pixels in the semantic map may indicate the type of the one or more subjects, and the shape and location of the area distinguished by the color may indicate the shape and location of the one or more subjects.
  • the electronic device may obtain a plurality of candidate depth maps including depth values of a plurality of pixels included in the semantic map.
  • the electronic device may obtain the plurality of candidate depth maps from the semantic map of operation 1110 using a first neural network.
  • the first neural network may have the structure of the neural network 810 of FIG. 8.
  • the first neural network may be included in the model 700 of FIG. 7.
  • the first neural network may be included as at least part of the depth map generator 610 of FIG. 6.
  • the electronic device may identify a depth map that matches the semantic map based on a plurality of candidate depth maps. For example, the electronic device may provide the user with options corresponding to each of the plurality of candidate depth maps. The electronic device may receive an input for selecting one of the options from the user. In response to the input, the electronic device may identify a depth map that matches the semantic map of operation 1110. For example, the electronic device may provide the user with a screen for editing at least one of the plurality of candidate depth maps. The electronic device may determine a depth map edited by the user as a depth map matching the semantic map of operation 1110.
  • the electronic device may acquire one or more images in which the one or more subjects are located based on the identified depth map and the semantic map. there is.
  • the electronic device may acquire the one or more images of operation 1140 using a second neural network.
  • the second neural network may have the structure of the neural network 810 of FIG. 8.
  • the second neural network may be included in the model 700 of FIG. 7.
  • the second neural network may be included as at least part of the output image generator 620 of FIG. 6.
  • FIG. 12 is a diagram for explaining an operation of training a neural network of an electronic device, according to an embodiment.
  • the electronic device of FIG. 12 may include the electronic device 101 of FIGS. 1 and 2 . At least one of the operations of FIG. 12 may be performed by the electronic device 101 of FIGS. 1 and 2 and/or the processor 220 of FIG. 2 .
  • the electronic device may identify an image from a database.
  • the database of operation 1210 may include background database 910 of FIG. 9 .
  • the image of operation 1210 may include image 915 of FIG. 9 .
  • the electronic device can identify a plurality of photos, such as landscape photos, from the database.
  • the electronic device may obtain a semantic map indicating the location and shape of one or more subjects in the identified image. For example, the electronic device may identify the type of subject captured in each pixel of the image of the motion 1210 based on a neural network. The electronic device may obtain the semantic map by replacing the pixels of the image of operation 1210 with a color corresponding to the identified type. For example, within a semantic map, the type of subject captured in each pixel of the image may be indicated by color.
  • the semantic map of operation 1220 is stored as a pair of images of operation 1210 in another database that is different from the database of operation 1210 (e.g., semantic map database 920 of FIG. 9). It can be.
  • the electronic device may obtain a depth map indicating the depth of each pixel in the acquired image. For example, the electronic device identifies the distance between the subject captured in each of the pixels of the image of action 1210 and the camera that captured the image, based on another neural network that is different from the neural network of action 1220. can do.
  • the electronic device may obtain the depth map by replacing the pixels of the image in operation 1220 with a color to represent a numerical value of a single axis, such as gray scale.
  • the depth map of action 1230 contains the image of action 1210 and the image of action 1220 in another database different from the databases of actions 1210 and 1220 (e.g., depth map database 930 of FIG. 9 ). ) can be stored as a pair of semantic maps.
  • operations 1220 and 1230 in FIG. 12 is not limited to the order in FIG. 12 .
  • operations 1220 and 1230 may be performed simultaneously by the electronic device, or may be performed in an order that is different from the order of operations 1220 and 1230 of FIG. 12 .
  • the electronic device uses a pair of a depth map and a semantic map to obtain a depth map from the semantic map. can be trained.
  • the electronic device performs a process for synthesizing an image from a depth map and a semantic map based on the relationship between the depth map, the semantic map, and the image. 2 You can train a neural network.
  • the first neural network to the second neural network may have the structure of the neural network 810 of FIG. 8 and may be included as part of the model 700 of FIG. 7.
  • the first neural network may be included in the depth map generator 610 of FIG. 6.
  • the second neural network may be included in the output image generator 620 of FIG. 6.
  • operations 1240 and 1250 in FIG. 12 is not limited to the order in FIG. 12 .
  • operations 1240 and 1250 may be performed simultaneously by the electronic device, or may be performed in an order that is different from the order of operations 1240 and 1250 of FIG. 12 .
  • the electronic device may obtain one or more depth maps from the semantic map in order to synthesize a realistic image from the semantic map.
  • the one or more depth maps may be used to add perspective to the image to be composited by an electronic device.
  • the electronic device may receive input related to the one or more depth maps based on a structure in which trained neural networks are connected in series.
  • the electronic device may synthesize an image based on the intention of the user who made the input.
  • an electronic device may include a memory for storing instructions, and at least one processor operably coupled to the memory.
  • the at least one processor may identify a first image including one or more areas distinguished by one or more colors.
  • the at least one processor may obtain, based on the identified first image, at least one depth map based on the one or more areas included in the first image.
  • the at least one processor generates, based on the identified first image and the at least one depth map, a second image including one or more subjects indicated by colors of the one or more regions. It can be obtained.
  • the at least one depth map may include a first depth value assigned to a first pixel in a first region among the one or more regions.
  • the at least one depth map may be assigned to a second pixel in the first area that is different from the first pixel, and may include a second depth value that is different from the first depth value.
  • the at least one processor may acquire the first image including a plurality of areas distinguished by a plurality of colors.
  • the at least one processor may acquire the second image including a plurality of subjects having different types matching each of the plurality of colors, based on the at least one depth map.
  • the at least one processor may obtain a plurality of depth maps based on the identified first image.
  • the at least one processor may acquire the second image based on the selected depth map and the first image in response to an input for selecting one of the plurality of depth maps.
  • the electronic device may further include a display.
  • the at least one processor when the instructions are executed, in response to obtaining the at least one depth map, creates a screen in the display for adjusting at least one depth value included in the at least one depth map. It can be displayed.
  • the at least one processor inputs the first image and at least one random number to a neural network indicated by a plurality of parameters stored in the memory.
  • the at least one depth map can be obtained.
  • the at least one processor configures the at least one depth map, the first image, and at least one neural network indicated by a plurality of parameters stored in the memory. By inputting a random number, the second image can be obtained.
  • the first image may be a semantic map for representing the one or more subjects based on at least one of the shape of the one or more areas or the one or more colors filled in the one or more areas. It may be a (semantic map).
  • the second image may include terrain indicated by the at least one depth map.
  • the at least one processor may obtain the at least one depth map representing a depth distribution within the one or more areas based on the first image. .
  • the at least one processor may acquire the second image including the one or more subjects arranged based on the depth distribution.
  • a method of an electronic device may include an operation of identifying a semantic map indicating the shape and location of one or more subjects.
  • the method of the electronic device may include, based on the semantic map, obtaining a plurality of candidate depth maps including depth values of a plurality of pixels included in the semantic map.
  • the method of the electronic device may include identifying a depth map matching the semantic map based on the plurality of candidate depth maps.
  • the method of the electronic device may include an operation of acquiring one or more images in which the one or more subjects are located based on the identified depth map and the semantic map.
  • the semantic map may include a plurality of regions filled with different colors.
  • the different colors may represent the type of the one or more subjects, and the shape of the plurality of areas may represent the shape and the location of the one or more subjects.
  • the operation of obtaining the plurality of candidate depth maps may include selecting a depth within a first region among the plurality of regions using a neural network that receives the semantic map and at least one numeric value.
  • Obtaining the plurality of candidate depth maps, including a distribution, may be included.
  • identifying the depth map may include displaying the plurality of candidate depth maps on a display of the electronic device. Identifying the depth map may include receiving an input for selecting one of the plurality of candidate depth maps. The operation of identifying the depth map may include identifying the depth map selected by the input as a depth map matching the semantic map.
  • acquiring the one or more images may include acquiring the one or more images using a neural network that receives the identified depth map and one or more random numbers.
  • the number of the one or more images may be matched to the number of the one or more random numbers.
  • the method of the electronic device may include identifying a first image including one or more areas distinguished by one or more colors.
  • the method of the electronic device may include, based on the identified first image, obtaining at least one depth map based on the one or more areas included in the first image.
  • the method of the electronic device includes an operation of acquiring a second image including one or more subjects indicated by colors of the one or more areas based on the identified first image and the at least one depth map. It can be included.
  • the at least one depth map may include a first depth value assigned to a first pixel in a first region of the one or more regions, and a second pixel in the first region that is different from the first pixel. is assigned, and may include a second depth value that is different from the first depth value.
  • the operation of acquiring the second image may be performed based on the first image including a plurality of areas distinguished by a plurality of colors, and the at least one depth map, each of the plurality of colors. It may include an operation of acquiring the second image including a plurality of subjects having different types that match.
  • the operation of obtaining the at least one depth map may include obtaining a plurality of depth maps based on the identified first image.
  • the operation of acquiring the second image includes, in response to an input for selecting one of the plurality of depth maps, obtaining the second image based on the selected depth map and the first image. may include.
  • the operation of acquiring the at least one depth map may include, in response to obtaining the at least one depth map, displaying, within a display of the electronic device, at least one depth value included in the at least one depth map. It may include the action of displaying a screen for adjustment.
  • the electronic device may include a memory for storing instructions, and at least one processor operably coupled to the memory.
  • the at least one processor may identify a semantic map indicating the shape and location of one or more subjects.
  • the at least one processor may obtain a plurality of candidate depth maps including depth values of a plurality of pixels included in the semantic map, based on the semantic map.
  • the at least one processor may acquire one or more images in which the one or more subjects are located based on the identified depth map and the semantic map.
  • the device described above may be implemented with hardware components, software components, and/or a combination of hardware components and software components.
  • the devices and components described in the embodiments include a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), and a programmable logic unit (PLU).
  • ALU arithmetic logic unit
  • FPGA field programmable gate array
  • PLU programmable logic unit
  • It may be implemented using one or more general-purpose or special-purpose computers, such as a logic unit, microprocessor, or any other device capable of executing and responding to instructions.
  • the processing device may execute an operating system (OS) and one or more software applications running on the operating system. Additionally, a processing device may access, store, manipulate, process, and generate data in response to the execution of software.
  • OS operating system
  • a processing device may access, store, manipulate, process, and generate data in response to the execution of software.
  • a single processing device may be described as being used; however, those skilled in the art will understand that a processing device includes multiple processing elements and/or multiple types of processing elements. It can be seen that it may include.
  • a processing device may include a plurality of processors or one processor and one controller. Additionally, other processing configurations, such as parallel processors, are possible.
  • Software may include a computer program, code, instructions, or a combination of one or more of these, which may configure a processing unit to operate as desired, or may be processed independently or collectively. You can command the device.
  • the software and/or data may be embodied in any type of machine, component, physical device, computer storage medium or device for the purpose of being interpreted by or providing instructions or data to the processing device. there is.
  • Software may be distributed over networked computer systems and stored or executed in a distributed manner.
  • Software and data may be stored on one or more computer-readable recording media.
  • the method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium.
  • the medium may continuously store a computer-executable program, or temporarily store it for execution or download.
  • the medium may be a variety of recording or storage means in the form of a single or several pieces of hardware combined. It is not limited to a medium directly connected to a computer system and may be distributed over a network. Examples of media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, And there may be something configured to store program instructions, including ROM, RAM, flash memory, etc. Additionally, examples of other media include recording or storage media managed by app stores that distribute applications, sites or servers that supply or distribute various other software, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)

Abstract

일 실시예에 따른, 전자 장치(electronic device)는, 인스트럭션들을 저장하기 위한 메모리, 및 상기 메모리와 작동적으로 결합된(operably coupled to) 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 때에, 하나 이상의 색상들에 의하여 구분되는 하나 이상의 영역들을 포함하는 제1 이미지를 식별할 수 있다. 상기 적어도 하나의 프로세서는, 상기 식별된 제1 이미지에 기반하여, 상기 제1 이미지에 포함된 상기 하나 이상의 영역들에 기반하는 적어도 하나의 깊이 맵을 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 식별된 제1 이미지, 및 상기 적어도 하나의 깊이 맵에 기반하여, 상기 하나 이상의 영역들의 색상들에 의해 지시되는(indicated by) 하나 이상의 피사체들을 포함하는 제2 이미지를 획득할 수 있다.

Description

깊이 맵에 기반하여 이미지를 합성하기 위한 전자 장치 및 그 방법
아래의 설명들은 깊이 맵에 기반하여 이미지를 합성하기 위한 전자 장치 및 그 방법에 관한 것이다.
이미지를 합성하기 위한 전자 장치, 및 그 방법이 개발되고 있다. 전자 장치는, 사용자로부터 이미지의 합성을 위해 요구되는 정보(예, 텍스트, 및/또는 사진)를 수신할 수 있다. 수신된 정보를 이용하여, 전자 장치는 가상의 이미지를 합성할 수 있다.
전자 장치가 합성하는 이미지의 품질을, 사진과 유사한 정도로 증가시키기 위한 방안이 요구될 수 있다.
사용자에 의해 특정된 영역들을 포함하는 일 이미지(an image)로부터, 상기 영역들을 따라 배치된 적어도 하나의 피사체를 포함하는, 사진과 유사한 다른 이미지를 생성하기 위한 방안이 요구될 수 있다.
본 문서에서 이루고자 하는 기술적 과제는 상술한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
일 실시예(an embodiment)에 따른, 전자 장치는, 인스트럭션들을 저장하기 위한 메모리, 및 상기 메모리와 작동적으로 결합된(operably coupled to) 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 때에, 하나 이상의 색상들에 의하여 구분되는 하나 이상의 영역들을 포함하는 제1 이미지를 식별할 수 있다. 상기 적어도 하나의 프로세서는, 상기 식별된 제1 이미지에 기반하여, 상기 제1 이미지에 포함된 상기 하나 이상의 영역들에 기반하는 적어도 하나의 깊이 맵을 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 식별된 제1 이미지, 및 상기 적어도 하나의 깊이 맵에 기반하여, 상기 하나 이상의 영역들의 색상들에 의해 지시되는(indicated by) 하나 이상의 피사체들을 포함하는 제2 이미지를 획득할 수 있다.
일 실시예에 따른, 전자 장치의 방법은, 하나 이상의 색상들에 의하여 구분되는 하나 이상의 영역들을 포함하는 제1 이미지를 식별하는 동작을 포함할 수 있다. 상기 전자 장치의 방법은, 상기 식별된 제1 이미지에 기반하여, 상기 제1 이미지에 포함된 상기 하나 이상의 영역들에 기반하는 적어도 하나의 깊이 맵을 획득하는 동작을 포함할 수 있다. 상기 전자 장치의 방법은, 상기 식별된 제1 이미지, 및 상기 적어도 하나의 깊이 맵에 기반하여, 상기 하나 이상의 영역들의 색상들에 의해 지시되는 하나 이상의 피사체들을 포함하는 제2 이미지를 획득하는 동작을 포함할 수 있다.
일 실시예에 따른, 전자 장치는, 인스트럭션들을 저장하기 위한 메모리, 및 상기 메모리와 작동적으로 결합된(operably coupled to) 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 때에, 하나 이상의 피사체들의 형태, 및 위치를 지시하는 시맨틱 맵을 식별할 수 있다. 상기 적어도 하나의 프로세서는, 상기 시맨틱 맵에 기반하여, 상기 시맨틱 맵에 포함된 복수의 픽셀들의 깊이 값들을 포함하는 복수의 후보 깊이 맵들을 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 식별된 깊이 맵, 및 상기 시맨틱 맵에 기반하여, 상기 하나 이상의 피사체들이 배치된, 하나 이상의 이미지들을 획득할 수 있다.
일 실시예에 따른, 전자 장치의 방법은, 하나 이상의 피사체들의 형태, 및 위치를 지시하는 시맨틱 맵을 식별하는 동작을 포함할 수 있다. 상기 전자 장치의 방법은, 상기 시맨틱 맵에 기반하여, 상기 시맨틱 맵에 포함된 복수의 픽셀들의 깊이 값들을 포함하는 복수의 후보 깊이 맵들을 획득하는 동작을 포함할 수 있다. 상기 전자 장치의 방법은, 상기 복수의 후보 깊이 맵들에 기반하여, 상기 시맨틱 맵에 매칭되는 깊이 맵을 식별하는 동작을 포함할 수 있다. 상기 전자 장치의 방법은, 상기 식별된 깊이 맵, 및 상기 시맨틱 맵에 기반하여, 상기 하나 이상의 피사체들이 배치된, 하나 이상의 이미지들을 획득하는 동작을 포함할 수 있다.
일 실시예에 따른, 전자 장치는, 사진과 유사한 품질을 가지는 이미지를 합성할 수 있다.
일 실시예에 따른, 전자 장치는, 사용자에 의해 특정된 영역들을 포함하는 일 이미지로부터, 상기 영역들을 따라 배치된 적어도 하나의 피사체를 포함하는, 사진과 유사한 다른 이미지를 생성할 수 있다.
본 개시에서 얻을 수 있는 효과는 상술한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은, 일 실시예에 따른, 전자 장치가 이미지를 생성하는 동작을 설명하기 위한 예시적인 도면이다.
도 2는, 일 실시예에 따른, 전자 장치의 블록도이다.
도 3은, 일 실시예에 따른, 전자 장치가 이미지로부터 생성하는 깊이 맵을 설명하기 위한 예시적인 도면이다.
도 4는, 일 실시예에 따른, 전자 장치가 생성한 깊이 맵 내에서 깊이 값의 분포를 설명하기 위한 예시적인 도면이다.
도 5는, 일 실시예에 따른, 전자 장치가 사용자로부터 수신된 이미지, 및 상기 이미지로부터 생성된 깊이 맵에 기반하여, 하나 이상의 이미지들을 생성하는 동작을 설명하기 위한 예시적인 도면이다.
도 6은, 일 실시예에 따른, 전자 장치 내에 저장되고, 이미지를 생성하기 위한 복수의 뉴럴 네트워크들을 설명하기 위한 도면이다.
도 7은, 일 실시예에 따른, 전자 장치 내에 저장되고, 이미지를 생성하기 위한, 모델의 구조를 설명하기 위한 블록도이다.
도 8은, 일 실시예에 따른, 전자 장치 내에 저장된 뉴럴 네트워크를 설명하기 위한 도면이다.
도 9는, 일 실시예에 따른, 전자 장치 내에 저장되고, 이미지를 생성하기 위한, 모델을 트레이닝하기 위한 데이터 세트를 생성하는 동작을 설명하기 위한 도면이다.
도 10은, 일 실시예에 따른, 전자 장치의 동작을 설명하기 위한 도면이다.
도 11은, 일 실시예에 따른, 전자 장치의 동작을 설명하기 위한 도면이다.
도 12는, 일 실시예에 따른, 전자 장치의 뉴럴 네트워크를 트레이닝하는 동작을 설명하기 위한 도면이다.
이하, 본 문서의 다양한 실시예들이 첨부된 도면을 참조하여 설명된다.
본 문서의 다양한 실시 예들 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및/또는 B 중 적어도 하나", "A, B 또는 C" 또는 "A, B 및/또는 C 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", "첫째" 또는 "둘째" 등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제1) 구성요소가 다른(예: 제2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 모듈은 ASIC(application-specific integrated circuit)으로 구성될 수 있다.
도 1은, 일 실시예에 따른, 전자 장치(101)가 이미지를 생성하는 동작을 설명하기 위한 예시적인 도면이다. 일 실시예에 따른, 전자 장치(101)는 데스크톱(101-1), 및/또는 랩톱(101-2)과 같은 개인용 컴퓨터(Personal Computer, PC)를 포함할 수 있다. 일 실시예에 따른, 전자 장치(101)는 단말(101-3)과 같이, 스마트폰(smartphone), 스마트패드(smartpad), 및/또는 태블릿 PC(Personal Computer)를 포함할 수 있다. 일 실시예에 따른, 전자 장치(101)의 폼 팩터는, 도 1의 예시들에 제한되지 않으며, 예를 들어, 스마트워치(smartwatch) 및 HMD(Head-Mounted Device)와 같은 스마트액세서리를 포함할 수 있다. 일 실시예에 다른, 전자 장치(101) 내에 포함된 하나 이상의 하드웨어들이, 도 2를 참고하여 설명된다.
일 실시예에 따른, 전자 장치(101)는, 제1 이미지(110)에 기반하여 제2 이미지(120)를 생성할 수 있다. 전자 장치(101)는 사용자로부터 제1 이미지(110)를 획득할 수 있다. 예를 들어, 전자 장치(101)는 사용자에게 제1 이미지(110)를 수신하기 위한 UI(User Interface)를 표시할 수 있다. 상기 UI를 통하여, 전자 장치(101)는 상기 제1 이미지(110)를 획득할 수 있다. 전자 장치(101)에 의하여 수신되는 제1 이미지(110)는, 입력 이미지, 세그먼테이션 맵(segmentation map), 및/또는 시맨틱 맵(semantic map)으로 참조될 수 있다. 전자 장치(101)에 의하여 생성된 제2 이미지(120)는, 출력 이미지, 가상 이미지, 및/또는 가상 사진으로 참조될 수 있다.
도 1은, 일 실시예에 따른, 전자 장치(101)에 의하여 사용자로부터 수신된, 제1 이미지(110)의 일 예를 도시한다. 제1 이미지(110)는, 하나 이상의 색상들에 의하여 구분되는 하나 이상의 영역들(예, 영역들(112, 114, 116, 118))을 포함할 수 있다. 예를 들어, 영역들(112, 114, 116, 118)은 상이한 색상들로 채워질(filled) 수 있다. 예를 들어, 제1 이미지(110)는 색상으로 채워진 하나 이상의 영역들(예, 영역들(112, 114, 116, 118))에 기반하여 제1 이미지(110)로부터 합성될 다른 이미지(예, 제2 이미지(120)) 내 하나 이상의 피사체들을 지시하는 시맨틱 맵을 포함할 수 있다.
일 실시예에서, 시맨틱 맵은, 상기 시맨틱 맵에 대응하는 이미지의 의미론적 정보(semantic information)를 포함할 수 있다. 상기 의미론적 정보는, 상기 이미지 내에 캡쳐된 피사체의 타입, 카테고리, 위치, 및/또는 크기를 나타내는 정보를 포함할 수 있다. 예를 들어, 시맨틱 맵은, 이미지 내 픽셀들 각각에 대응하고, 위치, 및/또는 색상에 기반하여 상기 의미론적 정보를 나타내는, 복수의 픽셀들을 포함할 수 있다. 시맨틱 맵 내에서, 특정 색상을 가지는 픽셀들의 그룹이, 상기 특정 색상에 대응하는 타입의 피사체가, 상기 이미지 내에서 캡쳐된 위치, 및/또는 크기를 나타낼 수 있다. 예를 들어, 영역들(112, 114, 116, 118)은, 상기 특정 색상을 가지는 픽셀들의 상기 그룹의 일 예일 수 있다.
도 1을 참고하면, 시맨틱 맵의 일 예인 제1 이미지(110)는, 영역들(112, 114, 116, 118)의 크기, 및/또는 색상에 기반하여, 상기 제1 이미지(110)로부터 합성될 다른 이미지 내에 포함될 하나 이상의 피사체들의 크기, 및/또는 카테고리를 나타낼 수 있다. 예를 들어, 영역(112)은, 저지대(lowland)를 나타내는 제1 색상(예, 녹색)으로 채워질 수 있다. 예를 들어, 영역(114)은, 산을 나타내는 제2 색상(예, 갈색)으로 채워질 수 있다. 예를 들어, 영역(116)은, 하늘을 나타내는 제3 색상(예, 청색)으로 채워질 수 있다. 예를 들어, 영역(118)은, 구름을 나타내는 제4 색상(예, 흰색)으로 채워질 수 있다. 상기 제1 색상 내지 상기 제4 색상은, RGB, CMYK, 및/또는 YCbCr과 같은 색 공간에 기반하는 일 차원 벡터에 의하여 지시될(indicated by) 수 있다. 영역들(112, 114, 116, 118)이 상이한 색상들(예, 상기 제1 색상 내지 상기 제4 색상)로 구분되기 때문에, 영역들(112, 114, 116, 118)을 포함하는 제1 이미지(110)는, 상기 제1 색상 내지 상기 제4 색상을 제외한 다른 색상을 포함하지 않을 수 있다.
일 실시예에 따른, 전자 장치(101)는 제1 이미지(110)로부터, 제2 이미지(120)의 생성을 위한 정보를 획득할 수 있다. 상기 정보는, 제1 이미지(110)의 영역들(112, 114, 116, 118)에 기반하여 배치될 하나 이상의 피사체들로 원근감(perpective)을 제공하기 위한 정보일 수 있다. 상기 정보는, 깊이 맵으로 참조될 수 있다. 깊이 맵은, 시맨틱 맵(예, 제1 이미지(110)) 내 픽셀들 각각에 대응하고, 시맨틱 맵 내 픽셀들 각각의 원근감을 나타내는 수치 값들(numeric values)을 가지는, 복수의 픽셀들을 포함할 수 있다. 상기 수치 값들은, 깊이 값들(depth values)로 참조될 수 있다. 일 실시예에 따른, 전자 장치(101)가 제1 이미지(110)로부터 획득하는 깊이 맵은, 도 3 내지 도 4를 참고하여 설명된다.
일 실시예에 따른, 전자 장치(101)가 제1 이미지(110)에 기반하여 획득하는 제2 이미지(120)는, 상기 제1 이미지(110)의 영역들(112, 114, 116, 118)에 기반하여 배치되는 하나 이상의 피사체들을 포함할 수 있다. 도 1을 참고하면, 전자 장치(101)는 제1 이미지(110)의 영역(112)에 대응하는 제2 이미지(120)의 일부분 내에 저지대를, 제1 이미지(110)의 영역(114)에 대응하는 제2 이미지(120)의 일부분 내에 하나 이상의 산들을, 제1 이미지(110)의 영역(116)에 대응하는 제2 이미지(120)의 일부분 내에 하늘을, 제1 이미지(110)의 영역(118)에 대응하는 제2 이미지(120)의 일부분 내에 구름을 표시할 수 있다. 일 실시예에 따른, 전자 장치(101)는 제1 이미지(110)로부터 획득된 깊이 맵에 기반하여, 제2 이미지(120) 내에 포함된 하나 이상의 피사체들의 원근감을 조절할 수 있다. 예를 들어, 전자 장치(101)는, 제1 이미지(110)의 영역(114)에 대응하는 제2 이미지(120)의 일부분 내에 배치된 하나 이상의 산들이 상기 깊이 맵에 기반하는 원근감을 갖도록, 제2 이미지(120)를 생성할 수 있다. 예를 들어, 전자 장치(101)는 제1 이미지(110)의 영역(112)에 대응하는 제2 이미지(120)의 일부분 내에 배치된 저지대가 상기 깊이 맵에 기반하는 원근감을 갖도록, 제2 이미지(120)를 생성할 수 있다. 일 실시예에 따른, 전자 장치(101)가 제1 이미지(110), 및 상기 깊이 맵에 기반하여, 제2 이미지(120)를 생성하는 동작이, 도 5 내지 도 6을 참고하여 설명된다.
상술한 바와 같이, 일 실시예에 따른, 전자 장치(101)는 제1 이미지(110)에 의하여 표현되지 않은 정보(예, 제2 색상으로 채워진 영역(114) 내에 배치될 산의 지형(terrain)(예, 능선(ridge)), 또는 제1 색상으로 채워진 영역(112) 내에 배치될 저지대의 원근감)를 추론할 수 있다. 추론된 정보에 기반하여, 전자 장치(101)는 상기 제1 이미지(110)로부터 현실적인(realistic) 제2 이미지(120)를 생성할 수 있다. 이하에서는, 도 2를 참고하여, 제1 이미지(110)로부터 제2 이미지(120)를 생성하기 위하여 도 1의 전자 장치(101) 내에 포함된, 하나 이상의 하드웨어들이 설명된다.
도 2는, 일 실시예에 따른, 전자 장치(101)의 블록도이다. 도 2의 전자 장치(101)는, 도 1의 전자 장치(101)의 일 예일 수 있다. 도 2를 참고하면, 일 실시예에 따른, 전자 장치(101)는, 프로세서(220), 메모리(230), 디스플레이(240), 또는 통신 회로(250) 중 적어도 하나를 포함할 수 있다. 프로세서(220), 메모리(230), 디스플레이(240), 및 통신 회로(250)는 통신 버스(a communication bus)(210)와 같은 전자 소자(electronical component)에 의해 서로 전기적으로 및/또는 작동적으로 연결될 수 있다(electronically and/or operably coupled with each other). 상이한 블록들에 기반하여 도시되었으나, 실시예가 이에 제한되는 것은 아니며, 도 2에 도시된 하드웨어 컴포넌트 중 일부분(예, 프로세서(220), 메모리(230) 및 통신 회로(250)의 적어도 일부분)이 SoC(System on a Chip)와 같이 단일 집적 회로(Single Integrated Circuit)에 포함될 수 있다. 전자 장치(101)에 포함된 하드웨어 컴포넌트의 타입 및/또는 개수는 도 2에 도시된 바에 제한되지 않는다. 예를 들어, 전자 장치(101)는 도 2에 도시된 하드웨어 컴포넌트 중 일부만 포함할 수 있다.
일 실시예에 따른, 전자 장치(101)의 프로세서(220)는 하나 이상의 인스트럭션들에 기반하여 데이터를 처리하기 위한 하드웨어 컴포넌트를 포함할 수 있다. 데이터를 처리하기 위한 하드웨어 컴포넌트는, 예를 들어, ALU(Arithmetic and Logic Unit), FPU(Floating Point Unit), FPGA(Field Programmable Gate Array), CPU(Central Processing Unit), 및/또는 AP(Application Processor)를 포함할 수 있다. 프로세서(220)의 개수는 하나 이상일 수 있다. 예를 들어, 프로세서(220)는 듀얼 코어(dual core), 쿼드 코어(quad core) 또는 헥사 코어(hexa core)와 같은 멀티-코어 프로세서의 구조를 가질 수 있다.
일 실시예에 따른, 전자 장치(101)의 메모리(230)는 프로세서(220)에 입력 및/또는 출력되는 데이터 및/또는 인스트럭션을 저장하기 위한 하드웨어 컴포넌트를 포함할 수 있다. 메모리(230)는, 예를 들어, RAM(Random-Access Memory)와 같은 휘발성 메모리(Volatile Memory) 및/또는 ROM(Read-Only Memory)와 같은 비휘발성 메모리(Non-Volatile Memory)를 포함할 수 있다. 휘발성 메모리는, 예를 들어, DRAM(Dynamic RAM), SRAM(Static RAM), Cache RAM, PSRAM (Pseudo SRAM) 중 적어도 하나를 포함할 수 있다. 비휘발성 메모리는, 예를 들어, PROM(Programmable ROM), EPROM (Erasable PROM), EEPROM (Electrically Erasable PROM), 플래시 메모리, 하드디스크, 컴팩트 디스크, eMMC(Embedded Multi Media Card) 중 적어도 하나를 포함할 수 있다.
예를 들어, 메모리(230) 내에서, 프로세서(220)가 데이터에 수행할 연산, 및/또는 동작을 나타내는 하나 이상의 인스트럭션들이 저장될 수 있다. 하나 이상의 인스트럭션들의 집합은, 펌웨어, 운영 체제, 프로세스, 루틴, 서브-루틴 및/또는 어플리케이션으로 참조될 수 있다. 예를 들어, 전자 장치(101), 및/또는 프로세서(220)는, 운영체제, 펌웨어, 드라이버, 및/또는 어플리케이션 형태로 배포된 복수의 인스트럭션의 집합(set of a plurality of instructions)이 실행될 시에, 도 10 내지 도 12의 동작들 중 적어도 하나를 수행할 수 있다. 이하에서, 어플리케이션이 전자 장치(101)에 설치되었다는 것은, 어플리케이션의 형태로 제공된 하나 이상의 인스트럭션들이 전자 장치(101)의 메모리(230) 내에 저장된 것을 의미할 수 있다. 어플리케이션이 전자 장치(101)에 설치되었다는 것은, 상기 하나 이상의 어플리케이션들이 전자 장치(101)의 프로세서(220)에 의해 실행 가능한(executable) 포맷(예, 전자 장치(101)의 운영 체제에 의해 지정된 확장자를 가지는 파일)으로 저장된 것을 의미할 수 있다.
일 실시예에 따른, 전자 장치(101)의 디스플레이(240)는 사용자에게 시각화된 정보(예를 들어, 도 1의 제1 이미지(110), 및/또는 제2 이미지(120))를 출력할 수 있다. 예를 들어, 디스플레이(240)는, GPU(Graphic Processing Unit)와 같은 컨트롤러에 의해 제어되어, 사용자에게 시각화된 정보(visualized information)를 출력할 수 있다. 디스플레이(240)는 FPD(Flat Panel Display) 및/또는 전자 종이(electronic paper)를 포함할 수 있다. 상기 FPD는 LCD(Liquid Crystal Display), PDP(Plasma Display Panel) 및/또는 하나 이상의 LED(Light Emitting Diode)를 포함할 수 있다. 상기 LED는 OLED(Organic LED)를 포함할 수 있다.
일 실시예에 따른, 전자 장치(101)의 통신 회로(250)는, 전자 장치(101) 및 외부 전자 장치 사이의 전기 신호의 송신 및/또는 수신을 지원하기 위한 하드웨어 컴포넌트를 포함할 수 있다. 통신 회로(250)는, 예를 들어, 모뎀(MODEM), 안테나, O/E(Optic/Electronic) 변환기 중 적어도 하나를 포함할 수 있다. 통신 회로(280)는, 이더넷(ethernet), LAN(Local Area Network), WAN(Wide Area Network), WiFi(Wireless Fidelity), Bluetooth, BLE(Bluetooth Low Energy), ZigBee, LTE(Long Term Evolution), 5G NR(New Radio)와 같은 다양한 타입의 프로토콜에 기반하여 전기 신호의 송신 및/또는 수신을 지원할 수 있다. 통신 회로(250)를 이용하여, 전자 장치(101)는 외부 전자 장치로부터 도 1의 제1 이미지(110)를 수신하거나, 또는 외부 전자 장치로 도 1의 제2 이미지(120)를 송신할 수 있다.
상술한 바와 같이, 일 실시예에 따른, 전자 장치(101)는 이미지의 수신, 합성, 및/또는 표시를 위한 하나 이상의 하드웨어들을 포함할 수 있다. 전자 장치(101)는 상기 하나 이상의 하드웨어들에 기반하여 실행되는 소프트웨어를 이용하여, 상기 이미지의 합성을 수행할 수 있다. 상기 이미지의 합성을 위하여, 전자 장치(101)는 뉴럴 네트워크(neural network)와 같은 인공 지능에 기반하는 소프트웨어를 실행할 수 있다. 전자 장치(101)가 실행하는 상기 인공 지능에 기반하는 상기 소프트웨어의 개념적인 구조(conceptual structure)가, 도 6 내지 도 8을 참고하여 설명된다.
이하에서는, 도 3을 참고하여, 도 2의 전자 장치(101)가 도 1의 제1 이미지(110)와 같은 시맨틱 맵으로부터 깊이 맵을 획득하는 동작이 설명된다.
도 3은, 일 실시예에 따른, 전자 장치가 이미지(예, 제1 이미지(110))로부터 생성하는 깊이 맵(예, 깊이 맵들(310, 320, 330))을 설명하기 위한 예시적인 도면이다. 도 3의 전자 장치는 도 1 내지 도 2의 전자 장치(101)의 일 예일 수 있다. 예를 들어, 도 3의 제1 이미지(110)는 도 1의 제1 이미지(110)를 포함할 수 있다.
도 3을 참고하면, 일 실시예에 따른, 전자 장치에 의하여 사용자로부터 수신된, 제1 이미지(110)의 일 예가 도시된다. 도 1을 참고하여 상술된 바와 같이, 제1 이미지(110) 내 상이한 색상들로 구분된 하나 이상의 영역들(예, 영역들(112, 114, 116, 118))을 이용하여, 전자 장치는 제1 이미지(110)에 기반하여 합성될 다른 이미지(예, 도 1의 제2 이미지(120)) 내에 포함될 하나 이상의 피사체들을 식별할 수 있다. 전자 장치는 제1 이미지(110)의 일 영역 내에서, 상이한 깊이 값들의 분포를 가지는, 하나 이상의 깊이 맵들(예, 깊이 맵들(310, 320, 330))을 획득할 수 있다. 상기 하나 이상의 깊이 맵들은, 전자 장치가 제1 이미지(110)로부터 상기 다른 이미지를 합성하는 동안, 상기 다른 이미지로 원근감을 제공하기 위해 이용될 수 있다.
도 3을 참고하면, 일 실시예에 따른, 전자 장치는 제1 이미지(110)로부터, 사용자에 의해 선택 가능한 복수의 깊이 맵들(310, 320, 330)을 획득할 수 있다. 전자 장치는 시맨틱 맵인 제1 이미지(110)의 픽셀들 각각으로 깊이 값들을 할당하여(by assigning), 깊이 맵들(310, 320, 330)을 획득할 수 있다. 전자 장치가 제1 이미지(110)로부터 3 개의 깊이 맵들(310, 320, 330)을 획득하는 일 실시예가 도시되지만, 실시예가 이에 제한되는 것은 아니다. 일 실시예에 따른, 전자 장치가 제1 이미지(110)로부터 획득하는 깊이 맵의 개수는 1 이상일 수 있다. 일 실시예에 따른, 전자 장치가 제1 이미지(110)로부터 깊이 맵을 획득하기 위하여 실행하는 뉴럴 네트워크의 예시적인 구조가, 도 7 내지 도 8을 참고하여 설명된다. 일 실시예에 따른, 전자 장치는, 제1 이미지(110)와 관련된 사용자의 의도를 식별하기 위하여, 복수의 깊이 맵들(310, 320, 330)에 기반하는 선택 가능한 옵션들을, 상기 사용자에게 제공할 수 있다.
예를 들어, 전자 장치는 디스플레이(예, 도 2의 디스플레이(240)) 내에, 깊이 맵들(310, 320, 330) 중 적어도 하나를 표시할 수 있다. 전자 장치는, 깊이 맵들(310, 320, 330) 중 하나의 깊이 맵을 선택하기 위한 하나 이상의 시각적 객체들(예, 라디오 버튼)을 표시할 수 있다. 전자 장치는 상기 하나 이상의 시각적 객체들에 대한 입력에 기반하여, 깊이 맵들(310, 320, 330) 중 하나의 깊이 맵을 선택할 수 있다. 선택된 깊이 맵, 및 제1 이미지(110)를 이용하여, 전자 장치는 가상 현실에 기반하는 제2 이미지(예, 도 1의 제2 이미지(120))를 합성할 수 있다. 상기 예시 내에서, 전자 장치는 사용자에 의해 선택된 상기 깊이 맵에 기반하여, 사용자의 의도를 반영하는 상기 제2 이미지를 합성할 수 있다.
예를 들어, 전자 장치로부터 사용자로 제공되고, 복수의 깊이 맵들(310, 320, 330)에 기반하는 선택 가능한 옵션들은, 복수의 깊이 맵들(310, 320, 330) 중 적어도 하나를 편집 가능한 옵션을 포함할 수 있다. 전자 장치는, 깊이 맵들(310, 320, 330) 중 적어도 하나를 편집 가능한 UI, 및/또는 화면을 표시할 수 있다. 전자 장치는 상기 UI 내에서, 적어도 하나의 깊이 맵의 픽셀들에 할당된 깊이 값들을, 상이한 색상들에 기반하여 표시할 수 있다. 일 실시예에 따른, 전자 장치는 상기 UI 내에서 상기 색상들을 조절하는 입력에 기반하여, 적어도 하나의 깊이 맵을 변경할 수 있다.
상술한 바와 같이, 일 실시예에 따른, 전자 장치는 제1 이미지(110)에 기반하여, 제1 이미지(110)에 포함된 하나 이상의 영역들(예, 영역들(112, 114, 116, 118))에 기반하는 적어도 하나의 깊이 맵(예, 깊이 맵들(310, 320, 330))을 획득할 수 있다. 상기 적어도 하나의 깊이 맵은, 상기 제1 이미지(110)로부터 합성될 제2 이미지의 원근감을 나타낼 수 있다. 전자 장치가 복수의 깊이 맵들을 획득하는 일 실시예 내에서, 상기 전자 장치는 상기 복수의 깊이 맵들을 선택, 및/또는 변경 가능한 옵션을, 사용자에게 제공할 수 있다.
이하에서는, 도 4를 참고하여, 전자 장치가 제1 이미지(110)로부터 획득한 깊이 맵에 포함된 깊이 값들의 분포가 설명된다.
도 4는, 일 실시예에 따른, 전자 장치가 생성한 깊이 맵 내에서 깊이 값의 분포를 설명하기 위한 예시적인 도면이다. 도 4의 전자 장치는 도 1 내지 도 2의 전자 장치(101)의 일 예일 수 있다. 도 4의 깊이 맵들(310, 320)은 도 3의 깊이 맵들(310, 320)에 대응할 수 있다.
도 4를 참고하면, 일 실시예에 따른, 전자 장치가 도 1의 제1 이미지(110)로부터 획득한 깊이 맵들(310, 320) 내 깊이 값들의 분포를 설명하기 위한 그래프들(410, 420)이 도시된다. 깊이 맵들(310, 320)은, 도 3을 참고하여 상술된 전자 장치의 동작에 기반하여 획득될 수 있다. 도 4를 참고하면, 도트들의 밀도에 기반하여 깊이 맵들(310, 320)의 깊이 값들의 분포가 도시된다. 도트들의 밀도는, 깊이 값에 반비례할 수 있다. 예를 들어, 도트들의 밀도가 증가될 수록, 길이 값은 감소될 수 있다.
도 4를 참고하면, 깊이 맵들(310, 320)에서 일치된 좌표를 가지는, A 지점, 및 B 지점이 도시된다. 그래프들(410, 420) 각각은, 깊이 맵들(310, 320)의 A 지점, 및 B 지점을 연결하는 라인 상에 포함된 픽셀들에 할당된 깊이 값들의 분포를 나타낼 수 있다. 그래프들(410, 420)의 X 축은, A 지점으로부터의 거리를 나타낼 수 있다. 그래프들(410, 420)의 Y 축은, 깊이 값의 크기를 상대적으로 나타낼 수 있다. 예를 들어, 깊이 값의 크기는, 상기 제1 이미지(110)로부터 합성될 제2 이미지(예, 도 1의 제2 이미지(120)) 내 피사체, 및 상기 제2 이미지가 캡쳐된 가상의 위치 사이의 거리를 나타낼 수 있다.
도 4를 참고하면, A 지점, 및 B 지점을 연결하는 라인(이하, A-B 라인)은, 제1 이미지(110)의 영역(114) 내에 포함될 수 있다. 예를 들어, 상기 라인에 대응하는 제1 이미지(110) 내 픽셀들은, 제2 색상(예, 갈색)일 수 있다. 일 실시예에 따른, 전자 장치는 제1 이미지(110)의 영역들(112, 114, 116, 118) 각각에 할당된 색상들에 의해 지시되는, 영역들(112, 114, 116, 118) 각각의 피사체들의 타입에 기반하여, 깊이 맵들(310, 320) 각각에 포함된 깊이 값들을 조절할 수 있다. 예를 들어, 산을 나타내는 상기 제2 색상으로 채워진 제1 이미지(110)의 영역(114)에 대응하는 깊이 맵들(310, 320)의 부분 내에서, 상기 산의 지형(terrain), 및/또는 능선을 표현하기 위하여, 전자 장치는 깊이 값들의 분포를 조절할 수 있다.
도 4의 일 예를 참고하면, 일 실시예에 따른, 전자 장치는 제1 이미지(110)의 영역(114) 내에 포함된, 깊이 맵(310)의 A-B 라인 사이의 깊이 값들을 조절하여, 산의 능선을 표현할 수 있다. 예를 들어, 깊이 맵(310)의 A-B 라인 내 C 지점, 및 D 지점 각각에서, 전자 장치는 깊이 값들의 불연속에 기반하여, 산의 능선을 나타낼 수 있다. 전자 장치는 깊이 맵(310)의 A 지점 내지 C 지점 사이의 깊이 값들을, 연속적인 값들로 할당하여, 단일 산을 나타낼 수 있다. 전자 장치는 깊이 맵(310)의 D 지점 내지 B 지점 사이의 깊이 값들을, A 지점 내지 D 지점 사이의 깊이 값들 보다 작게 할당할 수 있다.
도 4를 참고하면, 일 실시예에 따른, 전자 장치는 깊이 맵(310)과 상이한 깊이 맵(320)을 이용하여, 제1 이미지(110)의 원근감을, 깊이 맵(310)에 기반하는 원근감과 다르게 제공할 수 있다. 예를 들어, 그래프(420)를 참고하면, 깊이 맵(320)의 A-B 라인 사이의 깊이 값들의 분포는, 그래프(410)에 의하여 나타나는 깊이 맵(310)의 A-B 라인 사이의 깊이 값들의 분포와 다를 수 있다. 상기 예시 내에서, 깊이 맵(320)의 A 지점 내지 E 지점 사이의 깊이 값들이, E 지점 내지 B 지점 사이의 깊이 값들 보다 작게 할당될 수 있다. 전자 장치가 깊이 맵(320), 및 제1 이미지(110)에 기반하여 제2 이미지를 합성하는 경우, A 지점 내지 E 지점을 포함하는 산이, 상기 제2 이미지 내에서, F 지점 내지 B 지점을 포함하는 다른 산 보다 가깝게 표시될 수 있다.
상술한 바와 같이, 일 실시예에 따른, 전자 장치는 하나의 시맨틱 맵(예, 제1 이미지(110))로부터 하나 이상의 깊이 맵들(예, 도 3의 깊이 맵들(310, 320, 330))을 획득할 수 있다. 상기 하나 이상의 깊이 맵들은, 상이한 깊이 값들의 분포를 가질 수 있다. 전자 장치가 복수의 깊이 맵들을, 하나의 시맨틱 맵으로부터 획득하는 일 실시예에서, 상기 전자 장치는 상기 복수의 깊이 맵들을, 이미지를 합성하기 위한 후보 깊이 맵으로써(as a candidate depth map) 사용자에게 제공할 수 있다. 깊이 맵에 기반하여, 전자 장치는 시맨틱 맵, 및 깊이 맵 중 시맨틱 맵을 이용하여 합성된 이미지 보다 개선된 원근감을 가지는 이미지(an image)를 합성할 수 있다. 전자 장치는 시맨틱 맵, 및 깊이 맵을 동시에 이용하여, 시맨틱 맵, 및 깊이 맵 중 깊이 맵을 이용하여 합성된 이미지 보다 사용자에 의도에 부합하는 피사체를 가지는 이미지(an image)를 합성할 수 있다. 깊이 맵의 상이한 세그먼트들은, 전자 장치에 의해 합성되는 이미지(예, 출력 이미지)의 상이한 세그먼트들에 일대일로 매핑되기 때문에, 전자 장치는 사용자의 직관적인 깊이 맵의 편집, 및 편집된 깊이 맵에 기반하는 이미지의 합성을 지원할 수 있다.
이하에서는, 도 5를 참고하여, 일 실시예에 따른, 전자 장치가 제1 이미지(110)로부터, 도 1의 제2 이미지(120)와 같이 하나 이상의 이미지들을 합성하는 동작이 설명된다.
도 5는, 일 실시예에 따른, 전자 장치가 사용자로부터 수신된 이미지, 및 상기 이미지로부터 생성된 깊이 맵에 기반하여, 하나 이상의 이미지들을 생성하는 동작을 설명하기 위한 예시적인 도면이다. 도 5의 전자 장치는 도 1 내지 도 2의 전자 장치(101)의 일 예일 수 있다. 도 5의 깊이 맵(310)은, 도 3 내지 도 4의 깊이 맵(310)에 대응할 수 있다. 도 5의 제1 이미지(110)는, 도 1 및/또는 도 3 내지 도 4의 제1 이미지(110)에 대응할 수 있다.
일 실시예에 따른, 전자 장치는, 입력 이미지인 제1 이미지(110), 및 상기 제1 이미지(110)에 대응하는 하나의(single) 깊이 맵(예, 도 3 내지 도 6의 깊이 맵(310))으로부터, 하나 이상의 출력 이미지들을 획득할 수 있다. 이하에서는, 전자 장치가 사용자로부터 제1 이미지(110)에 대응하는 복수의 깊이 맵들(예, 도 3의 깊이 맵들(310, 320, 330)) 중 깊이 맵(310)을 선택하는 입력에 응답하여, 하나 이상의 출력 이미지들을 획득하는 동작이 설명된다. 그러나, 실시예가 이에 제한되지 않는다. 예를 들어, 전자 장치는 사용자로부터 수신된 복수의 깊이 맵들에 기반하여, 상기 복수의 깊이 맵들 각각에 대응하는 하나 이상의 출력 이미지들을 획득할 수 있다.
도 5는, 일 실시예에 따른, 전자 장치가 깊이 맵(310)으로부터 획득하는 상기 하나 이상의 출력 이미지들의 일 예로, 제1 출력 이미지(510), 및 제2 출력 이미지(520)를 도시한다. 일 실시예에 따른, 전자 장치는 상기 하나 이상의 출력 이미지들 내에서, 제1 이미지(110)에 의해 나타나는 하나 이상의 피사체들을, 깊이 맵(310)에 기반하는 원근감에 기반하여, 표시할 수 있다. 전자 장치가 제1 출력 이미지(510), 및 제2 출력 이미지(520)를 합성하는 일 실시예에서, 저지대가 제1 이미지(110)의 영역(112)에 대응하는 제1 출력 이미지(510), 및 제2 출력 이미지(520)의 각 부분들에 배치되고, 하나 이상의 산들이 제1 이미지(110)의 영역(114)에 대응하는 제1 출력 이미지(510), 및 제2 출력 이미지(520)의 각 부분들에 배치되고, 하늘이 제1 이미지(110)의 영역(116)에 대응하는 제1 출력 이미지(510), 및 제2 출력 이미지(520)의 각 부분들에 배치되고, 구름이 제1 이미지(110)의 영역(118)에 대응하는 제1 출력 이미지(510), 및 제2 출력 이미지(520)의 각 부분들에 배치될 수 있다.
도 5를 참고하면, 일 실시예에 따른, 전자 장치는 제1 출력 이미지(510), 및 제2 출력 이미지(520)를, 상이한 스타일들에 기반하여 생성할 수 있다. 스타일은, 제1 이미지(110)에 의하여 지시되는 타입 내에 포함된 피사체의 상이한 조합에 따라, 출력 이미지에 따라 다르게 조절될 수 있다. 예를 들어, 상기 스타일은, 출력 이미지의 분위기(mood), 및/또는 화풍에 기반하여 구분될 수 있다. 도 5를 참고하면, 제1 이미지(110)의 영역(116)에 대응하는 제1 출력 이미지(510)의 부분, 및 제2 출력 이미지(520)의 부분 각각은, 하늘과 같은 일 타입 내에서 상이한 피사체들(예, 낮 하늘, 및 밤 하늘)을 포함할 수 있다. 도 5를 참고하면, 제1 이미지(110)의 영역(112)에 대응하는 제1 출력 이미지(510)의 부분, 및 제2 출력 이미지(520)의 부분 각각은, 저지대와 같은 일 타입 내에서 상이한 피사체들을 포함할 수 있다. 예를 들어, 제1 이미지(110)의 영역(112)에 대응하는 제1 출력 이미지(510)의 부분은, 호수를 포함하지 않는 저지대를 나타낼 수 있다. 예를 들어, 제1 이미지(110)의 영역(112)에 대응하는 및 제2 출력 이미지(520)의 부분은, 호수, 및 나무를 포함하는 다른 저지대를 나타낼 수 있다. 예를 들어, 제1 이미지(110)의 영역(114)에 대응하는 제1 출력 이미지(510)의 부분은, 나무로 채워진 복수의 산들을 포함할 수 있다. 예를 들어, 제1 이미지(110)의 영역(114)에 대응하는 제2 출력 이미지(520)의 부분은, 눈이 덮인 바위 산들을 포함할 수 있다.
일 실시예에 따른, 전자 장치는 깊이 맵(310)에 기반하여, 제1 이미지(110)의 영역들(112, 114, 116, 118) 각각에 대응하는 제1 출력 이미지(510), 및 제2 출력 이미지(520)의 상이한 부분들 내에서, 및/또는 상기 부분들 사이의 경계에서, 원근감을 추가할 수 있다. 도 5를 참고하면, 제1 이미지(110)의 저지대를 나타내는 색상으로 채워진 영역(112)에 대응하는 제1 출력 이미지(510)의 부분 내에서, 저지대를 나타내는 피사체들(예, 풀들)이, 깊이 맵(310) 내에서 제1 이미지(110)의 영역(112)에 대응하는 부분의 깊이 값들을 따라 상이한 크기, 상이한 형태, 및/또는 상이한 색상을 따라 표시될 수 있다. 도 5를 참고하면, 제1 이미지(110)의 하나 이상의 산들을 나타내는 색상으로 채워진 영역(114)에 대응하는 제1 출력 이미지(510)의 부분 내에서, 복수의 산들이, 깊이 맵(310) 내에서 제1 이미지(110)의 영역(114)에 대응하는 부분의 깊이 값들에 기반하는 하나 이상의 능선들을 가질 수 있다. 제1 이미지(110)의 영역(114)에 대응하는 제1 출력 이미지(510)의 부분, 및 제2 출력 이미지(520)의 부분 내에서, 일 실시예에 따른, 전자 장치는 깊이 맵(310)의 깊이 값들에 의해 지시되는 능선들에 기반하여, 복수의 산들을 표시할 수 있다.
일 실시예에 따른, 전자 장치는 제1 출력 이미지(510), 및 제2 출력 이미지(520)를, 사용자에게 표시할 수 있다. 예를 들어, 전자 장치는 디스플레이(예, 도 2의 디스플레이(240)) 내에, 시맨틱 맵인 제1 이미지(110)로부터 출력 이미지를 합성한 결과인, 제1 출력 이미지(510), 또는 제2 출력 이미지(520) 중 적어도 하나를 표시할 수 있다. 예를 들어, 전자 장치는 통신 회로(예, 도 2의 통신 회로(250))를 이용하여 외부 전자 장치로, 제1 출력 이미지(510), 또는 제2 출력 이미지(520) 중 적어도 하나를 송신할 수 있다. 제1 출력 이미지(510), 또는 제2 출력 이미지(520) 중 적어도 하나는, JPEG(Joint Photographic Experts Group)와 같이 이미지를 나타내기 위한 포맷에 기반하여, 전자 장치의 메모리(예, 도 2의 메모리(230)) 내에 저장될 수 있다.
일 실시예에 따른, 전자 장치는 제1 출력 이미지(510), 또는 제2 출력 이미지(520) 중 적어도 하나를, 깊이 맵(310)에 기반하여, 입체적으로 표시할 수 있다. 전자 장치는 HMD(Head-Mounted Device)와 같이, 사용자의 눈들 각각으로, 양안 시차(binocular disparity)를 가지는 이미지(예, 제1 출력 이미지(510), 또는 제2 출력 이미지(520) 중 하나의 출력 이미지)를 표시할 수 있다. 상기 양안 시차는, 전자 장치가 제1 출력 이미지(510), 또는 제2 출력 이미지(520) 중 하나의 출력 이미지를 표시하는 일 실시예에서, 깊이 맵(310)에 기반하여 상기 사용자에게 제공될 수 있다. 예를 들어, 시맨틱 맵인 제1 이미지(110)로부터 획득된 깊이 맵(310)이, 제1 출력 이미지(510), 또는 제2 출력 이미지(520) 중 적어도 하나와 함께, 전자 장치 내에 저장될 수 있다.
상술한 바와 같이, 일 실시예에 따른, 전자 장치는 사용자로부터 수신되고, 단색(solid color)의 영역들(112, 114, 116, 118)을 가지는 제1 이미지(110)로부터, 상기 영역들(112, 114, 116, 118) 각각의 색상에 의해 지시되는 하나 이상의 피사체들을 포함하고, 제1 이미지(110)로부터 획득된 적어도 하나의 깊이 맵(예, 깊이 맵(310))에 의해 지시되는 원근감을 가지는 하나 이상의 출력 이미지들(예, 제1 출력 이미지(510), 및 제2 출력 이미지(520))을 획득할 수 있다. 전자 장치가 깊이 맵(310)과 독립적으로 제1 이미지(110)로부터 다른 이미지(예, 이미지(530))를 합성하는 경우, 제1 이미지(110)의 영역들(112, 114, 116, 118) 각각에 배치된 하나 이상의 피사체들에 원근감을 추가하는 것이 제한될 수 있다. 예를 들어, 제1 이미지(110)의 영역(112)에 대응하는 제1 출력 이미지(510)의 부분의 풀들이, 깊이 맵(310)에 기반하는 상이한 크기들을 가지는 반면에, 영역(112)에 대응하는 이미지(530)의 부분의 풀들은, 일치된 크기를 가질 수 있다. 일 실시예에 따른, 전자 장치는 사용자로부터 수신된 입력 이미지(예, 제1 이미지(110))에 대응하는 적어도 하나의 깊이 맵을 추가적으로 획득하여, 획득된 적어도 하나의 깊이 맵에 따른 원근감을 가지는 하나 이상의 출력 이미지들을 획득할 수 있다. 상기 원근감을 가지는 하나 이상의 출력 이미지들에 기반하여, 전자 장치는 보다 현실적인 이미지(예, 풍경 이미지(landscape image))의 합성을 지원할 수 있다.
이하에서는, 도 6을 참고하여, 일 실시예에 따른, 전자 장치가 제1 이미지(110)와 같은 입력 이미지로부터 출력 이미지(예, 제1 출력 이미지(510), 및/또는 제2 출력 이미지(520))를 합성하기 위해 이용하는 뉴럴 네트워크, 및 상기 뉴럴 네트워크에 기반하는 모델이 설명된다.
도 6은, 일 실시예에 따른, 전자 장치 내에 저장되고, 이미지를 생성하기 위한 복수의 뉴럴 네트워크들을 설명하기 위한 도면이다. 도 6의 전자 장치는 도 1 내지 도 2의 전자 장치(101)의 일 예일 수 있다. 도 6의 제1 이미지(110)는 도 1, 및/또는 도 3 내지 도 5의 제1 이미지(110)에 대응할 수 있다. 도 6의 깊이 맵들(310, 320, 330)은, 도 3의 깊이 맵들(310, 320, 330) 각각에 대응할 수 있다. 도 6의 제1 출력 이미지(510), 및 제2 출력 이미지(520)는, 도 5의 제1 출력 이미지(510), 및 제2 출력 이미지(520) 각각에 대응할 수 있다.
도 6은 일 실시예에 따른 전자 장치에서 실행되고, 입력 이미지(예, 제1 이미지(110))로부터 출력 이미지(예, 제1 출력 이미지(510), 및/또는 제2 출력 이미지(520))를 획득하기 위한 하나 이상의 프로세스들을 설명하기 위한 도면이다. 도 6을 참고하면, 일 실시예에 따른 전자 장치에서 실행되는 하나 이상의 프로세스들에 포함된 기능 및/또는 서브-루틴이, 기능 및/또는 서브-루틴 사이에서 전달되는 정보에 따라 구분되어 도시된다. 일 실시예에 따른 전자 장치는 메모리(예, 도 2의 메모리(230)) 내에 저장된 하나 이상의 인스트럭션들에 기반하여, 도 6에 블록으로 구분된 하나 이상의 프로세스들을 실행할 수 있다. 일 실시예에서, 상기 프로세스들은, 예를 들어, 백그라운드 프로세스(background process)및/또는 데몬(daemon)과 같이 사용자에게 보여지는 제1 상태와 구별되는 제2 상태에서 실행될 수 있다.
도 6을 참고하면, 일 실시예에 따른, 전자 장치는 깊이 맵 생성기(610)의 실행에 기반하여, 제1 이미지(110)로부터 하나 이상의 깊이 맵들(예, 깊이 맵들(310, 320, 330))을 획득할 수 있다. 깊이 맵 생성기(610)는, 하나 이상의 색상들에 의하여 구분되는 복수의 영역들을 포함하는 입력 이미지(예, 제1 이미지(110)), 및 하나 이상의 난수들(random numbers)의 집합(Z1)에 기반하여, 하나 이상의 깊이 맵들을 생성하기 위한 뉴럴 네트워크를 실행하기 위한, 전자 장치의 일 프로세스(a process)(또는 일 파이프라인(a pilpeline))일 수 있다. 하나 이상의 난수들은, 수열의 규칙과 독립적으로 선택될 수 있다. 상기 하나 이상의 난수들은, 밀리초로 나타낸 타임스탬프에 기반하여 무작위로 선택된 의사 난수를 포함할 수 있다. 집합(Z1)에 포함된 상기 난수들은, 전자 장치가 깊이 맵 생성기(610)를 실행하는 동안, 깊이 맵 생성기(610)에 의하여 획득되는 깊이 맵들의 다양성(diversity)을 증가시키기 위하여, 제1 이미지(110)와 함께 깊이 맵 생성기(610)로 입력될 수 있다. 예를 들어, 집합(Z1)에 포함된 난수들의 개수는, 전자 장치가 깊이 맵 생성기(610)를 이용하여 획득한 깊이 맵들의 개수(예, 깊이 맵들(310, 320, 330)의 개수인 3 개)에 매칭될 수 있다. 깊이 맵 생성기(610)는, 시맨틱-깊이 변환 부(Semantic-to-Depth Translation unit)으로 참조될 수 있다.
도 6을 참고하면, 일 실시예에 따른, 전자 장치는 출력 이미지 생성기(620)의 실행에 기반하여, 제1 이미지(110), 및 적어도 하나의 깊이 맵으로부터, 하나 이상의 출력 이미지(예, 제1 출력 이미지(510), 및 제2 출력 이미지(520))를 획득할 수 있다. 출력 이미지 생성기(620)는, 깊이 맵 생성기(610)에 의하여 획득된 깊이 맵들 중 하나의 깊이 맵(a depth map), 상기 깊이 맵 생성기(610)에 입력된 제1 이미지(110), 및 하나 이상의 난수들의 집합(Z2)에 기반하여, 하나 이상의 출력 이미지들을 합성하기 위한 뉴럴 네트워크를 실행하기 위한, 전자 장치의 일 프로세스(또는 일 파이프라인)일 수 있다. 집합(Z2)에 포함된 상기 난수들은, 전자 장치가 출력 이미지 생성기(620)를 실행하는 동안, 출력 이미지 생성기(620)에 의해 합성되는 출력 이미지들의 다양성, 및/또는 스타일을 조절하기 위하여, 제1 이미지(110), 및 적어도 하나의 깊이 맵과 함께, 출력 이미지 생성기(620)로 입력될 수 있다. 예를 들어, 집합(Z2)에 포함된 난수들의 개수는, 전자 장치가 출력 이미지 생성기(620)를 이용하여 획득한 출력 이미지들의 개수(예, 제1 출력 이미지(510), 및 제2 출력 이미지(520)의 개수인 2 개)에 매칭될 수 있다. 출력 이미지 생성기(620)는, 시맨틱 및 깊이-이미지 변환 부(Sematic and Depth-to-Image Translation unit)으로 참조될 수 있다.
상술한 바와 같이, 일 실시예에 따른, 전자 장치는, 깊이 맵 생성기(610), 및 출력 이미지 생성기(620)의 직렬 연결에 기반하여, 제1 이미지(110)와 같은 입력 이미지로부터 하나 이상의 출력 이미지들(예, 제1 출력 이미지(510), 및 제2 출력 이미지(520))을 획득할 수 있다. 상기 직렬 연결은, 2-페이즈 추론 파이프라인(2-phase inference pipeline)으로 참조될 수 있다. 전자 장치는 깊이 맵 생성기(610)를 이용하여, 상기 직렬 연결에 기반하여 출력 이미지를 합성하는 동안, 깊이 맵들의 옵션을, 사용자에게 제공할 수 있다. 상기 사용자는 상기 깊이 맵들 중 어느 하나를 선택, 및/또는 편집하여, 입력 이미지로부터 획득하고자 하는 출력 이미지에 추가될 원근감을 조절할 수 있다. 전자 장치가 상기 사용자에 의해 선택, 및/또는 편집된 특정 깊이 맵에 기반하여 출력 이미지를 합성하기 때문에, 전자 장치는 사용자의 의도에 부합하는 출력 이미지를 합성할 수 있다.
이하에서는, 도 7을 참고하여, 도 6의 깊이 맵 생성기(610), 및 출력 이미지 생성기(620)에 공통된 구조가 설명된다.
도 7은, 일 실시예에 따른, 전자 장치 내에 저장되고, 이미지를 생성하기 위한, 모델(700)의 구조를 설명하기 위한 블록도이다. 도 7의 전자 장치는 도 1 내지 도 2의 전자 장치(101)의 일 예일 수 있다. 도 7의 모델(700)은, 도 6의 깊이 맵 생성기(610), 및 출력 이미지 생성기(620)에 공통적으로 포함되고, 소프트웨어로 구현된(software implemented) 알고리즘을 설명하기 위한 예시적인 블록도이다.
도 7을 참고하면, 일 실시예에 따른, 전자 장치가 입력 이미지(예, 도 1의 제1 이미지(110))로부터, 하나 이상의 출력 이미지들(예, 도 1의 제2 이미지(120))을 생성하기 위해 이용하는 모델(700)은 StyleGAN 모델에 적어도 기반하는 구조를 가질 수 있다. 일 실시예에서, 모델(700)은, 상기 styleGAN 모델에 기반하여, 하나 이상의 깊이 맵들을 생성하기 위하여 변경된 구조를 가질 수 있다. 일 실시예에서, 모델(700)은, 상기 styleGAN 모델에 기반하여, 시맨틱 맵(예, 상기 입력 이미지), 및/또는 깊이 맵으로부터 상기 출력 이미지를 생성하기 위하여 변경된 구조를 가질 수 있다.
도 7을 참고하면, 모델(700)은, 적어도 하나의 이미지(714), 및 하나 이상의 난수들(712)을 수신하는 조건 준비 모듈(Condition Preparation Module)(710), 상기 조건 준비 모듈(710)에 기반하여 생성된 정보(예, 특징 맵, 특징 정보, 특징 벡터, 및/또는 레이턴트(latent) 맵)를 수신하는 조건 합성 모듈(Condition Fusion Module)(730), 및 상기 조건 합성 모듈(730)로부터 획득된 정보, 및 노이즈와 같은 난수들(744)을 수신하는 이미지 합성 모듈(Image Synthesis Module)(740)을 포함할 수 있다. 모델(700)이 조건 준비 모듈(710)을 포함하기 때문에, 전자 장치는 난수들(712)에 기반하고, 이미지 합성 모듈(740)에 의하여 출력되는 적어도 하나의 이미지의 다양성을 변경할 수 있다. 예를 들어, 난수들(712)은, 도 6의 난수들의 집합들(Z1, Z2)의 원소들일 수 있다.
일 실시예에 따른, 전자 장치는, 모델(700)의 조건 준비 모듈(710)의 매핑 네트워크(716)에 기반하여, 난수들(712)에 기반하는 레이턴트 맵들(718)을 획득할 수 있다. 레이턴트 맵들(718)은, 랜덤 레이턴트 맵(random latent map)으로 참조될 수 있다. 레이턴트 맵들(718)은, 난수들(712)이 매핑 네트워크(716) 내 복수의 레이어들을 따라 전파되는 동안, 상기 매핑 네트워크(716)로부터 출력되는 복수의 수치 값들을 포함할 수 있다. 레이턴트 맵들(718)은, 매핑 네트워크(716)의 채널 수, 폭, 및 너비의 3차원 정보일 수 있다. 상기 폭, 및/또는 상기 너비는, 모델(700)에 기반하여 합성될 출력 이미지의 폭, 및/또는 너비일 수 있다. 상기 채널 수는, 모델(700)의 구현에 따라 상이한 수치 값을 가질 수 있다. 레이턴트 맵들(718)의 개수는, 조건 준비 모듈(710)에 의하여 수신되는 난수들(712)의 개수에 매칭될 수 있다.
일 실시예에 따른, 전자 장치는, 모델(700)의 조건 준비 모듈(710)에 기반하여, 적어도 하나의 이미지(714)의 리사이즈(예, 블록들(720, 724)로 나타내고, 블록들(720, 724) 마다 상이하게 정의된 크기), 및 콘볼루션(예, 블록들(722, 726)로 나타낸 콘볼루션 연산)을 수행할 수 있다. 도 7을 참고하면, 블록들(720, 722)의 연결에 기반하여, 적어도 하나의 이미지(714)가 제1 크기로 조절된 이후, 콘볼루션 연산될 수 있다. 도 7을 참고하면, 블록들(724, 726)의 연결에 기반하여, 적어도 하나의 이미지(714)가 상기 제1 크기와 상이한 제2 크기로 조절된 이후, 콘볼루션 연산될 수 있다. 일 실시예에 따른, 전자 장치는, 모델(700) 내에서 상이한 크기들에 대응하는 콘볼루션 연산(예, 블록들(722, 726)로 나타낸 콘볼루션 연산)에 기반하여, 복수의 조건 레이턴트 코드들(728)을 획득할 수 있다.
일 실시예에 따른, 전자 장치가 조건 준비 모듈(710)로부터 획득하는 복수의 조건 레이턴트 코드들(728)은, 콘볼루션 연산의 결과(예, 조건 맵)가 채널 단위(channel-wise) 내에서 결합된 정보를 포함할 수 있다. 조건 레이턴트 코드들(728)은, 레이턴트 맵들(718)과 유사하게, 채널 수, 폭, 및 너비에 기반하는 3차원 정보일 수 있다. 조건 레이턴트 코드들(728)의 상기 채널 수, 상기 폭, 및 상기 너비는 조건 레이턴트 코드들(728) 마다 독립적으로 설정될 수 있다. 일 실시예에서, 조건 레이턴트 코드들(728)의 상기 폭, 및 상기 너비는, 모델(700)에 의하여 합성될 출력 이미지의 폭, 및 너비에 매칭될 수 있다.
일 실시예에 따른, 전자 장치는 모델(700) 내 조건 합성 모듈(730)을 이용하여, 난수들(712)에 기반하여 획득된 레이턴트 맵들(718), 및 조건 레이턴트 코드들(728)에 대한 합성을 수행할 수 있다. 상기 합성은, 콘볼루션 연산, 및 업샘플링 연산에 기반하여, 이미지 합성 모듈(740) 내 특징에 매칭되도록 수행될 수 있다. 도 7을 참고하면, w1 +, 및 w2 +는, 중간 합성 맵(intermediate fusion map)으로 참조될 수 있다. 상기 중간 합성 맵은, 전자 장치가 조건 합성 모듈(730)에 기반하여 상기 합성을 수행한 결과를 포함할 수 있다. 일 실시예에 따른, 전자 장치는, 콘볼루션 연산으로 구분되는, 조건 합성 모듈(730)의 특정 레이어(예, i + 1 번째 레이어)로, i 번째 중간 합성 맵(wi +)을 입력할 수 있다. 이미지 합성 모듈(740)의 각 레이어로, 노이즈와 같은 난수들(744)이 입력될 수 있다. 이미지 합성 모듈(740) 내에서의 연쇄적인(serial) 콘볼루션 연산은, 모델(700)에 입력되는 적어도 하나의 이미지(714)의 크기에 도달할 때까지 연쇄적으로 수행될 수 있다.
일 실시예에 따른, 전자 장치는 모델(700) 내 이미지 합성 모듈(740)을 이용하여, 조건 합성 모듈(730)의 각 레이어의 중간 합성 맵(예, i 번째 레이어의 중간 합성 맵 wi +)의 아핀 변형(affine transform)을 획득할 수 있다. 전자 장치는 이미지 합성 모듈(740)로, 지정된 수치 값(742)(예, 상수(constant number))을 입력할 수 있다. 지정된 수치 값(742)은, styleGAN 모델에서 이미지의 합성을 위해 설정될 수 있다. 전자 장치는 난수들(744)을 이용하여 픽셀 당 노이즈를, 추가할 수 있다. 난수들(744)은, 모델(700)에 의해 합성되는 이미지의 다양성을 증가시키기 위하여, 모델(700)로 입력될 수 있다. 일 실시예에 따른, 전자 장치는 적대적 학습에 기반하여 모델(700)을 트레이닝할 수 있다. 일 실시예에 따른, 전자 장치가 모델(700)을 트레이닝 하는 동작은, 도 9를 참고하여 설명된다.
도 6의 깊이 맵 생성기(610), 및 출력 이미지 생성기(620) 각각은, 도 7의 모델(700)을 포함할 수 있다. 예를 들어, 도 6의 깊이 맵 생성기(610)는, 도 7의 조건 준비 모듈(710)을 통해, 하나 이상의 난수들(예, 도 6의 난수들의 집합(Z1)의 원소들), 및 시맨틱 맵(예, 도 1의 제1 이미지(110))을 수신할 수 있다. 예를 들어, 전자 장치는, 도 6의 깊이 맵 생성기(610)를 실행하는 동안, 도 7을 참고하여 상술된 동작에 기반하여, 시맨틱 맵으로부터 하나 이상의 난수들에 대응하는 하나 이상의 깊이 맵들을 획득할 수 있다. 예를 들어, 전자 장치는 이미지 합성 모듈(740)의 상기 아핀 변형에 기반하여, 복수의 깊이 맵들을 획득할 수 있다.
예를 들어, 도 6의 출력 이미지 생성기(620)는, 도 7의 적어도 하나의 이미지(714)를 수신하기 위한 조건 준비 모듈(710)을 이용하여, 사용자에 의해 선택된 일 깊이 맵, 및 시맨틱 맵을 획득할 수 있다. 상기 깊이 맵, 시맨틱 맵, 및 하나 이상의 난수들(예, 도 6의 난수들의 집합(Z2)의 원소들)을 이용하여, 전자 장치는 하나 이상의 출력 이미지들을 합성할 수 있다. 전자 장치가 상기 출력 이미지들을 합성하는 것은, 도 6의 출력 이미지 생성기(620) 내에 포함된 이미지 합성 모듈(740)에 기반하여 수행될 수 있다.
상술한 바와 같이, 일 실시예에 따른, 전자 장치는, 콘볼루션 연산에 기반하는 뉴럴 네트워크를 이용하여, 고화질의 출력 이미지(예, 1024 Х 1024의 크기를 가지는 출력 이미지)를 획득할 수 있다. 이하에서는, 도 8을 참고하여, 일 실시예에 따른, 블록들(722, 726)과 같이, 콘볼루션 연산에 기반하는 뉴럴 네트워크가 설명된다.
도 8은, 일 실시예에 따른, 전자 장치 내에 저장된 뉴럴 네트워크(810)를 설명하기 위한 도면이다. 도 8의 전자 장치는, 도 1 내지 도 2의 전자 장치(101)를 포함할 수 있다. 도 8은 일 실시예에 따른 전자 장치가 메모리 내에 저장된 파라미터들의 집합으로부터 획득하는 뉴럴 네트워크(810)를 설명하기 위한 예시적인 도면이다. 도 8의 뉴럴 네트워크(810)는 도 7의 모델(700) 내에 포함될 수 있다. 예를 들어, 도 7의 모델(700)은, 메모리(예, 도 1 내지 도 2의 메모리(120)) 내에 저장된 복수의 파라미터들의 집합에 기반하여 나타내어지는 뉴럴 네트워크를 포함할 수 있다. 도 8을 참고하면, 도 7의 모델(700)의 콘볼루션 연산을 수행하기 위한 뉴럴 네트워크의 뉴런들이, 복수의 레이어들을 따라 구분될 수 있다. 상기 뉴런들은, 특정 레이어에 포함된 특정 노드 및 상기 특정 레이어와 상이한 다른 레이어에 포함된 다른 노드 사이를 연결하는 연결선, 및/또는 상기 연결선에 할당된 가중치로 나타내어질 수 있다. 예를 들어, 뉴럴 네트워크(810)는 입력 레이어(820), 히든 레이어들(830) 및 출력 레이어(840)를 포함할 수 있다. 히든 레이어들(830)의 개수는 실시예에 따라 다를 수 있다.
도 8을 참고하면, 입력 레이어(820)는 입력 데이터를 나타내는 벡터(예, 입력 레이어(820)에 포함된 노드들의 개수에 대응하는 원소들(elements)을 가지는 벡터)를 수신할 수 있다. 입력 데이터에 기반하여, 입력 레이어(820) 내 노드들 각각에서 발생된 신호들은, 입력 레이어(820)로부터 히든 레이어들(830)로 송신될 수 있다. 출력 레이어(840)는, 히든 레이어들(830) 중 일 히든 레이어(예, 히든 레이어들(830)의 시퀀스 내에서 마지막 히든 레이어)로부터 수신된 하나 이상의 신호들에 기반하여, 뉴럴 네트워크(810)의 출력 데이터를 생성할 수 있다. 상기 출력 데이터는, 예를 들어, 출력 레이어(840)에 포함된 노드들 각각에 매핑된 원소들을 가지는 벡터를 포함할 수 있다.
도 8을 참고하면, 히든 레이어들(830)이 입력 레이어(820) 및 출력 레이어(840) 사이에 위치할 수 있다. 입력 레이어(820)의 노드들을 통해 수신된 수치 값들은, 히든 레이어들(830)의 연쇄적인 연결을 따라 전파되는 동안, 히든 레이어들(830) 사이에 할당된 가중치에 기반하여 변경될 수 있다. 예를 들어, 입력 레이어(820)를 통해 수신된 입력 데이터가, 입력 레이어(820)로부터 히든 레이어들(830)을 따라 순차적으로 전파됨에 따라(propagating), 상기 입력 데이터가 서로 다른 레이어들의 노드들을 연결하는 가중치에 기반하여 점진적으로 변경될 수 있다.
상술한 바와 같이, 뉴럴 네트워크(810)의 레이어들(예, 입력 레이어(820), 히든 레이어들(830) 및 출력 레이어(840)) 각각은 복수의 노드들을 포함할 수 있다. 히든 레이어들(830) 사이의 연결은 CNN(convolutional neural network)에서의 콘볼루션 필터(convolution filter)와 관련될 수 있다.
상이한 레이어들 사이에서 노드들이 연결되는 구조는, 도 8의 일 예에 제한되지 않는다. 일 실시예에서, 하나 이상의 히든 레이어들(830)은 출력 값이 현재 시간의 히든 레이어에 다시 입력되는 리커런트 뉴럴 네트워크(recurrent neural network; RNN)에 기반하는 레이어일 수 있다. 일 실시예에서, LSTM(Long Short-Term Memory)에 기반하여, 뉴럴 네트워크(810)의 노드들의 값들 중 적어도 하나가 버려지거나, 상대적으로 긴 기간 동안 유지되거나, 또는 상대적으로 짧은 시간 동안 유지될 수 있다. 일 실시예에 따른, 전자 장치의 뉴럴 네트워크(810)는 상대적으로 증가된 개수의 히든 레이어들(830)을 포함하여, 딥 뉴럴 네트워크(deep neural network)를 형성할 수 있다. 딥 뉴럴 네트워크를 트레이닝하는 것을 딥 러닝(deep learning)이라 한다. 히든 레이어들(830)에 포함된 노드는 히든 노드로 참조될 수 있다.
입력 레이어(820) 및 히든 레이어들(830)에 포함된 노드들은 가중치를 가지는 연결선(예, 상기 가중치를 포함하는 2차원 매트릭스로 나타나는 콘볼루션 필터)을 통해 서로 연결될 수 있고, 히든 레이어 및 출력 레이어에 포함된 노드들도 가중치를 가지는 연결선을 통해 서로 연결될 수 있다. 뉴럴 네트워크(810)를 튜닝 및/또는 트레이닝하는 것은, 뉴럴 네트워크(810)의 레이어들(예, 입력 레이어(820), 히든 레이어들(830), 및 출력 레이어(840)) 각각에 포함된 노드들 사이의 가중치들을 변경하는 것을 의미할 수 있다. 뉴럴 네트워크(810)의 튜닝은, 예를 들어, 지도 학습(supervised learning) 및/또는 비지도 학습(unsupervised learning)에 기반하여 수행될 수 있다.
이하에서는, 도 9를 참고하여, 일 실시예에 따른 전자 장치가 뉴럴 네트워크(810)를 포함하는 모델(예, 도 7의 모델(700))을 튜닝하는 동작이 설명된다.
도 9는, 일 실시예에 따른, 전자 장치 내에 저장되고, 이미지를 생성하기 위한, 모델을 트레이닝하기 위한 데이터 세트를 생성하는 동작을 설명하기 위한 도면이다. 도 9의 전자 장치는 도 1 내지 도 2의 전자 장치(101)의 일 예일 수 있다. 도 9의 모델은, 도 7의 모델(700)을 포함할 수 있다.
도 9를 참고하면, 일 실시예에 따른, 전자 장치는, 이미지(915)로부터, 이미지(915)의 깊이 값들의 분포를 나타내는 깊이 맵(935), 및 이미지(915) 내 하나 이상의 피사체들의 위치, 크기, 및/또는 형태를 나타내기 위한 시맨틱 맵(925)을 획득할 수 있다. 상기 이미지(915)는, 풍경 사진과 같은 사진을 포함할 수 있다. 상기 이미지(915)는, 배경 데이터베이스(910) 내에 저장될 수 있다. 상기 깊이 맵(935)은, 깊이 맵 데이터베이스(930) 내에 저장될 수 있다. 상기 시맨틱 맵(925)은, 시맨틱 맵 데이터베이스(920) 내에 저장될 수 있다. 예를 들어, 전자 장치는 배경 데이터베이스(910) 내에 저장된 복수의 이미지들(예, 이미지(915)), 시맨틱 맵 데이터베이스(920) 내에 저장된 복수의 시맨틱 맵들(예, 시맨틱 맵(925)), 및 깊이 맵 데이터베이스(930) 내에 저장된 복수의 깊이 맵들(예, 깊이 맵(935))의 조합에 기반하여, 시맨틱 맵으로부터 출력 이미지를 합성하기 위한 모델(예, 도 7의 모델(700))을 트레이닝할 수 있다.
예를 들어, 도 7의 모델(700)의 구조를 가지는 도 6의 깊이 맵 생성기(610)는, 시맨틱 맵 데이터베이스(920) 내에 저장된 복수의 시맨틱 맵들, 및 깊이 맵 데이터베이스(930) 내에 저장된 복수의 깊이 맵들의 쌍에 기반하여 트레이닝될 수 있다. 예를 들어, 도 7의 모델(700)의 구조를 가지는 도 6의 출력 이미지 생성기(620)는, 배경 데이터베이스(910), 시맨틱 맵 데이터베이스(920), 및 깊이 맵 데이터베이스(930) 각각에 저장된 이미지(예, 이미지(915)), 시맨틱 맵(예, 시맨틱 맵(925)), 및 깊이 맵(예, 깊이 맵(935))의 조합에 기반하여 트레이닝될 수 있다.
일 실시예에 따른, 전자 장치는 상기 모델을, 적대적 학습에 기반하여 트레이닝할 수 있다. 예를 들어, 전자 장치는 상기 모델과 상이한 모델에 기반하여, 상기 모델에 의하여 합성된 이미지, 및 배경 데이터베이스(910) 내에 저장된 이미지 사이의 유사도를 측정할 수 있다. 상기 측정된 유사도에 기반하여, 전자 장치는 상기 모델을 트레이닝할 수 있다. 전자 장치는 적대적 손실(adversarial loss), 지각 손실(perceptual loss), 도메인 가이드 손실(domain-guided loss), 재구성 손실(reconstruction loss), 또는 정규화(Regularization) 중 적어도 하나에 기반하여, 상기 모델, 및 상기 상이한 모델에 기반하는 적대적 학습을 수행할 수 있다.
상술한 바와 같이, 일 실시예에 따른, 전자 장치는 사진과 같은 이미지(915)로부터 추론된 깊이 맵(935), 및 시맨틱 맵(925)에 의하여 트레이닝된 뉴럴 네트워크에 기반하여, 상기 시맨틱 맵(925)과 상이한 다른 시맨틱 맵(예, 시맨틱 맵 데이터베이스(920) 내에 저장되지 않은 일 시맨틱 맵)으로부터 출력 이미지를 합성할 수 있다. 상기 합성된 출력 이미지는, 배경 데이터베이스(910) 내에 저장된 이미지(915)와 유사한 해상도를 가질 수 있다. 상기 합성된 출력 이미지는, 이미지(915)와 유사한 이미지 품질, 및/또는 깊이 정확성을 가질 수 있다.
도 10은, 일 실시예에 따른, 전자 장치의 동작을 설명하기 위한 도면이다. 도 10의 전자 장치는 도 1 내지 도 2의 전자 장치(101)를 포함할 수 있다. 도 10의 동작들 중 적어도 하나는 도 1 내지 도 2의 전자 장치(101), 및/또는 도 2의 프로세서(220)에 의해 수행될 수 있다.
도 10을 참고하면, 동작(1010)에서, 일 실시예에 따른, 전자 장치는, 하나 이상의 색상들에 의하여 구분되는 하나 이상의 영역들을 포함하는 제1 이미지(예, 도 1의 제1 이미지(110))를 식별할 수 있다. 상기 제1 이미지는, 상기 하나 이상의 영역들의 형태, 또는 상기 하나 이상의 영역들에 채워진 상기 하나 이상의 색상들 중 적어도 하나에 기반하여, 상기 하나 이상의 피사체들을 나타내기 위한 시맨틱 맵일 수 있다. 예를 들어, 시맨틱 맵은, 상이한 색상들이 채워진 복수의 영역들을 포함할 수 있다. 상기 예시 내에서, 상기 상이한 색상들은, 상기 하나 이상의 피사체들의 타입을 나타낼 수 있다. 상기 예시 내에서, 상기 복수의 영역들의 형태는, 상기 하나 이상의 피사체들의 상기 형태, 및 상기 위치를 나타낼 수 있다.
도 10을 참고하면, 동작(1020)에서, 일 실시예에 따른, 전자 장치는, 제1 이미지에 포함된 하나 이상의 영역들에 기반하는 적어도 하나의 깊이 맵을 획득할 수 있다. 예를 들어, 전자 장치는 도 6의 깊이 맵 생성기(610)에 기반하여, 상기 적어도 하나의 깊이 맵을 획득할 수 있다. 도 6의 깊이 맵 생성기(610)는, 도 7의 모델(700)의 구조를 가질 수 있다. 일 실시예에서, 전자 장치는 복수의 후보 깊이 맵들을 획득할 수 있다. 상기 복수의 후보 깊이 맵들은, 복수의 난수들에 기반하여 깊이 값들의 상이한 분포를 가질 수 있다. 전자 장치에 의해 획득된 적어도 하나의 깊이 맵은, 동작(1010)의 제1 이미지의 영역 내에서 상이한 깊이 값들을 가질 수 있다. 예를 들어, 제1 이미지의 단색으로 채워진 특정 영역의 제1 픽셀에 할당된 깊이 값, 및 상기 특정 영역의 제2 픽셀에 할당된 깊이 값이 서로 다를 수 있다.
일 실시예에 따른, 전자 장치는, 상기 복수의 후보 깊이 맵들 중 어느 하나를 선택하거나, 또는 적어도 하나를 편집하는 입력을 수신할 수 있다. 상기 입력에 응답하여, 전자 장치는 하나의 깊이 맵을 결정할 수 있다. 상기 결정된 깊이 맵에 기반하여, 전자 장치는 동작(1030)을 수행할 수 있다.
도 10을 참고하면, 동작(1030)에서, 일 실시예에 따른, 전자 장치는, 식별된 제1 이미지, 및 상기 적어도 하나의 깊이 맵에 기반하여, 하나 이상의 피사체들을 포함하는 제2 이미지를 획득할 수 있다. 상기 적어도 하나의 깊이 맵은, 상기 결정된 깊이 맵을 포함할 수 있다. 상기 제2 이미지는, 동작(1010)의 제1 이미지로부터 합성된 출력 이미지(예, 도 1의 제2 이미지(120))를 포함할 수 있다. 예를 들어, 제1 이미지가 복수의 색상들에 의하여 구분되는 복수의 영역들을 포함하는 경우, 전자 장치는 상기 복수의 색상들 각각에 매칭되는 상이한 타입들을 가지는, 복수의 피사체들을 포함하는 제2 이미지를 획득할 수 있다.
일 실시예에 따른, 전자 장치는 하나 이상의 난수들, 상기 제1 이미지, 상기 적어도 하나의 깊이 맵에 기반하여, 하나 이상의 제2 이미지들을 획득할 수 있다. 예를 들어, 전자 장치는 도 6의 출력 이미지 생성기(620)에 기반하여, 상기 하나 이상의 제2 이미지들을 획득할 수 있다. 도 6의 출력 이미지 생성기(620)는 도 7의 모델(700)의 구조를 가질 수 있다. 전자 장치는 상기 하나 이상의 제2 이미지들을, 디스플레이(예, 도 2의 디스플레이(240)) 내에 표시할 수 있다. 전자 장치는 상기 하나 이상의 제2 이미지들을, 메모리(230) 내에 저장할 수 있다. 전자 장치는 상기 하나 이상의 제2 이미지들을, 동작(1130)의 상기 식별된 깊이 맵과 함께 저장할 수 있다.
도 11은, 일 실시예에 따른, 전자 장치의 동작을 설명하기 위한 도면이다. 도 11의 전자 장치는 도 1 내지 도 2의 전자 장치(101)를 포함할 수 있다. 도 11의 동작들 중 적어도 하나는 도 1 내지 도 2의 전자 장치(101), 및/또는 도 2의 프로세서(220)에 의해 수행될 수 있다.
도 11을 참고하면, 동작(1110)에서, 일 실시예에 따른, 전자 장치는, 하나 이상의 피사체들의 형태, 및 위치를 지시하는 시맨틱 맵을 식별할 수 있다. 상기 시맨틱 맵은, 도 1의 제1 이미지(110)를 포함할 수 있다. 도 10의 동작(1010)과 유사하게, 전자 장치는 도 11의 동작(1110)을 수행할 수 있다. 상기 시맨틱 맵 내 픽셀들의 색상이 상기 하나 이상의 피사체들의 타입을 나타내고, 상기 색상에 의해 구분되는 영역의 형태, 및 위치가 상기 하나 이상의 피사체들의 형태, 및 위치를 나타낼 수 있다.
도 11을 참고하면, 동작(1120)에서, 일 실시예에 따른, 전자 장치는, 시맨틱 맵에 포함된 복수의 픽셀들의 깊이 값들을 포함하는 복수의 후보 깊이 맵들을 획득할 수 있다. 전자 장치는 제1 뉴럴 네트워크를 이용하여, 동작(1110)의 시맨틱 맵으로부터 상기 복수의 후보 깊이 맵들을 획득할 수 있다. 상기 제1 뉴럴 네트워크는, 도 8의 뉴럴 네트워크(810)의 구조를 가질 수 있다. 상기 제1 뉴럴 네트워크는, 도 7의 모델(700) 내에 포함될 수 있다. 상기 제1 뉴럴 네트워크는 도 6의 깊이 맵 생성기(610)의 적어도 일부로 포함될 수 있다.
도 11을 참고하면, 동작(1130)에서, 일 실시예에 따른, 전자 장치는, 복수의 후보 깊이 맵들에 기반하여, 시맨틱 맵에 매칭되는 깊이 맵을 식별할 수 있다. 예를 들어, 전자 장치는 상기 복수의 후보 깊이 맵들 각각에 대응하는 위한 옵션들을, 사용자에게 제공할 수 있다. 전자 장치는 상기 옵션들 중 어느 하나를 선택하기 위한 입력을, 상기 사용자로부터 수신할 수 있다. 상기 입력에 응답하여, 전자 장치는, 동작(1110)의 시맨틱 맵에 매칭되는 깊이 맵을 식별할 수 있다. 예를 들어, 전자 장치는 상기 복수의 후보 깊이 맵들 중 적어도 하나를 편집하기 위한 화면을, 사용자에게 제공할 수 있다. 상기 사용자에 의해 편집된 일 깊이 맵을, 전자 장치는 동작(1110)의 시맨틱 맵에 매칭되는 깊이 맵으로 결정할 수 있다.
도 11을 참고하면, 동작(1140)에서, 일 실시예에 따른, 전자 장치는, 식별된 깊이 맵, 및 상기 시맨틱 맵에 기반하여, 상기 하나 이상의 피사체들이 배치된, 하나 이상의 이미지들을 획득할 수 있다. 전자 장치는 제2 뉴럴 네트워크를 이용하여, 동작(1140)의 상기 하나 이상의 이미지들을 획득할 수 있다. 상기 제2 뉴럴 네트워크는, 도 8의 뉴럴 네트워크(810)의 구조를 가질 수 있다. 상기 제2 뉴럴 네트워크는, 도 7의 모델(700) 내에 포함될 수 있다. 상기 제2 뉴럴 네트워크는, 도 6의 출력 이미지 생성기(620)의 적어도 일부로 포함될 수 있다.
도 12는, 일 실시예에 따른, 전자 장치의 뉴럴 네트워크를 트레이닝하는 동작을 설명하기 위한 도면이다. 도 12의 전자 장치는 도 1 내지 도 2의 전자 장치(101)를 포함할 수 있다. 도 12의 동작들 중 적어도 하나는 도 1 내지 도 2의 전자 장치(101), 및/또는 도 2의 프로세서(220)에 의해 수행될 수 있다.
도 12를 참고하면, 동작(1210)에서, 일 실시예에 따른, 전자 장치는, 데이터베이스로부터 이미지를 식별할 수 있다. 동작(1210)의 데이터베이스는 도 9의 배경 데이터베이스(910)를 포함할 수 있다. 동작(1210)의 이미지는, 도 9의 이미지(915)를 포함할 수 있다. 예를 들어, 전자 장치는 풍경 사진과 같은 복수의 사진들을, 상기 데이터베이스로부터 식별할 수 있다.
도 12를 참고하면, 동작(1220)에서, 일 실시예에 따른, 전자 장치는, 식별된 이미지 내 하나 이상의 피사체들의 위치, 및 형태를 나타내는 시맨틱 맵을 획득할 수 있다. 예를 들어, 전자 장치는, 뉴럴 네트워크에 기반하여 동작(1210)의 이미지의 픽셀들 각각에 캡쳐된 피사체의 타입을 식별할 수 있다. 전자 장치는, 동작(1210)의 이미지의 상기 픽셀들을, 상기 식별된 타입에 대응하는 색상으로 대체하여, 상기 시맨틱 맵을 획득할 수 있다. 예를 들어, 시맨틱 맵 내에서, 이미지의 픽셀들 각각에 캡쳐된 피사체의 타입이, 색상으로 지시될 수 있다. 동작(1220)의 시맨틱 맵은, 동작(1210)의 데이터베이스와 상이한 다른 데이터베이스(예, 도 9의 시맨틱 맵 데이터베이스(920)) 내에, 동작(1210)의 이미지의 쌍으로(as a pair of) 저장될 수 있다.
도 12를 참고하면, 동작(1230)에서, 일 실시예에 따른, 전자 장치는, 획득된 이미지 내 픽셀들 각각의 깊이를 나타내는 깊이 맵을 획득할 수 있다. 예를 들어, 전자 장치는 동작(1220)의 뉴럴 네트워크와 상이한 다른 뉴럴 네트워크에 기반하여, 동작(1210)의 이미지의 픽셀들 각각에 캡쳐된 피사체, 및 상기 이미지를 캡쳐한 카메라 사이의 거리를 식별할 수 있다. 전자 장치는 동작(1220)의 이미지의 상기 픽셀들을, 그레이 스케일(gray scale)과 같이, 단일 축의 수치 값을 나타내기 위한 색상으로 대체하여, 상기 깊이 맵을 획득할 수 있다. 동작(1230)의 깊이 맵은, 동작들(1210, 1220)의 데이터베이스들과 상이한 또 다른 데이터베이스(예, 도 9의 깊이 맵 데이터베이스(930)) 내에, 동작(1210)의 이미지, 및 동작(1220)의 시맨틱 맵의 쌍으로 저장될 수 있다.
도 12의 동작들(1220, 1230)의 순서는, 도 12 내 순서에 제한되지 않는다. 예를 들어, 동작들(1220, 1230)은, 전자 장치에 의해 동시에 수행되거나, 또는 도 12의 동작들(1220, 1230)의 순서와 상이한 순서를 따라 수행될 수 있다.
도 12를 참고하면, 동작(1240)에서, 일 실시예에 따른, 전자 장치는, 깊이 맵, 및 시맨틱 맵의 쌍(pair)을 이용하여, 시맨틱 맵으로부터 깊이 맵을 획득하기 위한 제1 뉴럴 네트워크를 트레이닝할 수 있다. 도 12를 참고하면, 동작(1250)에서, 일 실시예에 따른, 전자 장치는, 깊이 맵, 시맨틱 맵, 및 이미지 사이의 관계에 기반하여, 깊이 맵, 및 시맨틱 맵으로부터 이미지를 합성하기 위한 제2 뉴럴 네트워크를 트레이닝할 수 있다. 상기 제1 뉴럴 네트워크 내지 상기 제2 뉴럴 네트워크는, 도 8의 뉴럴 네트워크(810)의 구조를 가질 수 있고, 도 7의 모델(700)의 일부로 포함될 수 있다. 상기 제1 뉴럴 네트워크는, 도 6의 깊이 맵 생성기(610) 내에 포함될 수 있다. 상기 제2 뉴럴 네트워크는, 도 6의 출력 이미지 생성기(620) 내에 포함될 수 있다. 도 12의 동작들(1240, 1250)의 순서는, 도 12 내 순서에 제한되지 않는다. 예를 들어, 동작들(1240, 1250)은, 전자 장치에 의해 동시에 수행되거나, 또는 도 12의 동작들(1240, 1250)의 순서와 상이한 순서를 따라 수행될 수 있다.
상술한 바와 같이, 일 실시예에 따른, 전자 장치는 시맨틱 맵으로부터 현실적인 이미지를 합성하기 위하여, 상기 시맨틱 맵으로부터 하나 이상의 깊이 맵들을 획득할 수 있다. 상기 하나 이상의 깊이 맵들은, 전자 장치에 의해 합성될 상기 이미지로 원근감을 추가하기 위해 이용될 수 있다. 전자 장치는 트레이닝된 뉴럴 네트워크들이 연쇄적으로 연결된 구조에 기반하여, 상기 하나 이상의 깊이 맵들과 관련된 입력을 수신할 수 있다. 상기 입력에 응답하여, 전자 장치는 상기 입력을 수행한 사용자의 의도에 기반하는 이미지를 합성할 수 있다.
상술한 바와 같은, 일 실시예에 따른, 전자 장치(electronic device)는, 인스트럭션들을 저장하기 위한 메모리, 및 상기 메모리와 작동적으로 결합된(operably coupled to) 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 때에, 하나 이상의 색상들에 의하여 구분되는 하나 이상의 영역들을 포함하는 제1 이미지를 식별할 수 있다. 상기 적어도 하나의 프로세서는, 상기 식별된 제1 이미지에 기반하여, 상기 제1 이미지에 포함된 상기 하나 이상의 영역들에 기반하는 적어도 하나의 깊이 맵을 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 식별된 제1 이미지, 및 상기 적어도 하나의 깊이 맵에 기반하여, 상기 하나 이상의 영역들의 색상들에 의해 지시되는(indicated by) 하나 이상의 피사체들을 포함하는 제2 이미지를 획득할 수 있다.
예를 들어, 상기 적어도 하나의 깊이 맵은, 상기 하나 이상의 영역들 중 제1 영역 내 제1 픽셀에 할당된(assigned) 제1 깊이 값을 포함할 수 있다. 상기 적어도 하나의 깊이 맵은, 상기 제1 픽셀과 상이한, 상기 제1 영역 내 제2 픽셀에 할당되고, 상기 제1 깊이 값과 상이한 제2 깊이 값을 포함할 수 있다.
예를 들어, 상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 시에, 복수의 색상들에 의하여 구분되는 복수의 영역들을 포함하는 상기 제1 이미지를 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 적어도 하나의 깊이 맵에 기반하여, 상기 복수의 색상들 각각에 매칭되는 상이한 타입들을 가지는, 복수의 피사체들을 포함하는 상기 제2 이미지를 획득할 수 있다.
예를 들어, 상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 시에, 상기 식별된 제1 이미지에 기반하여, 복수의 깊이 맵들을 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 복수의 깊이 맵들 중 하나의 깊이 맵을 선택하는 입력에 응답하여, 상기 선택된 깊이 맵, 및 상기 제1 이미지에 기반하여, 상기 제2 이미지를 획득할 수 있다.
예를 들어, 상기 전자 장치는, 디스플레이를 더 포함할 수 있다. 상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 시에, 상기 적어도 하나의 깊이 맵의 획득에 응답하여, 상기 디스플레이 내에, 상기 적어도 하나의 깊이 맵에 포함된 적어도 하나의 깊이 값을 조절하기 위한 화면을 표시할 수 있다.
예를 들어, 상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 시에, 상기 메모리 내에 저장된 복수의 파라미터들에 의해 지시되는 뉴럴 네트워크로, 상기 제1 이미지, 및 적어도 하나의 난수(random number)를 입력하여, 상기 적어도 하나의 깊이 맵을 획득할 수 있다.
예를 들어, 상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 시에, 상기 메모리 내에 저장된 복수의 파라미터들에 의해 지시되는 뉴럴 네트워크로, 상기 적어도 하나의 깊이 맵, 상기 제1 이미지, 및 적어도 하나의 난수를 입력하여, 상기 제2 이미지를 획득할 수 있다.
예를 들어, 상기 제1 이미지는, 상기 하나 이상의 영역들의 형태, 또는 상기 하나 이상의 영역들에 채워진(filled) 상기 하나 이상의 색상들 중 적어도 하나에 기반하여, 상기 하나 이상의 피사체들을 나타내기 위한 시맨틱 맵(semantic map)일 수 있다.
예를 들어, 상기 제2 이미지는, 상기 적어도 하나의 깊이 맵에 의해 지시되는 지형을 포함할 수 있다.
예를 들어, 상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 시에, 상기 제1 이미지에 기반하여, 상기 하나 이상의 영역들 내에서의 깊이 분포를 나타내는, 상기 적어도 하나의 깊이 맵을 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 깊이 분포에 기반하여 배치된 상기 하나 이상의 피사체들을 포함하는 상기 제2 이미지를 획득할 수 있다.
상술한 바와 같은, 일 실시예에 따른, 전자 장치의 방법은, 하나 이상의 피사체들의 형태, 및 위치를 지시하는 시맨틱 맵을 식별하는 동작을 포함할 수 있다. 상기 전자 장치의 방법은, 상기 시맨틱 맵에 기반하여, 상기 시맨틱 맵에 포함된 복수의 픽셀들의 깊이 값들을 포함하는 복수의 후보 깊이 맵들을 획득하는 동작을 포함할 수 있다. 상기 전자 장치의 방법은, 상기 복수의 후보 깊이 맵들에 기반하여, 상기 시맨틱 맵에 매칭되는 깊이 맵을 식별하는 동작을 포함할 수 있다. 상기 전자 장치의 방법은, 상기 식별된 깊이 맵, 및 상기 시맨틱 맵에 기반하여, 상기 하나 이상의 피사체들이 배치된, 하나 이상의 이미지들을 획득하는 동작을 포함할 수 있다.
예를 들어, 상기 시맨틱 맵은, 상이한 색상들이 채워진 복수의 영역들을 포함할 수 있다. 상기 상이한 색상들은, 상기 하나 이상의 피사체들의 타입을 나타내고, 상기 복수의 영역들의 형태는, 상기 하나 이상의 피사체들의 상기 형태, 및 상기 위치를 나타낼 수 있다.
예를 들어, 상기 복수의 후보 깊이 맵들을 획득하는 동작은, 상기 시맨틱 맵, 및 적어도 하나의 수치 값(numeric value)을 수신하는 뉴럴 네트워크를 이용하여, 상기 복수의 영역들 중 제1 영역 내 깊이 분포를 포함하는, 상기 복수의 후보 깊이 맵들을 획득하는 동작을 포함할 수 있다.
예를 들어, 상기 깊이 맵을 식별하는 동작은, 상기 복수의 후보 깊이 맵들을 상기 전자 장치의 디스플레이 내에 표시하는 동작을 포함할 수 있다. 상기 깊이 맵을 식별하는 동작은, 상기 복수의 후보 깊이 맵들 중 어느 하나를 선택하는 입력을 수신하는 동작을 포함할 수 있다. 상기 깊이 맵을 식별하는 동작은, 상기 입력에 의해 선택된 깊이 맵을, 상기 시맨틱 맵에 매칭되는 깊이 맵으로 식별하는 동작을 포함할 수 있다.
예를 들어, 상기 하나 이상의 이미지들을 획득하는 동작은, 상기 식별된 깊이 맵, 및 하나 이상의 난수들을 수신하는 뉴럴 네트워크를 이용하여, 상기 하나 이상의 이미지들을 획득하는 동작을 포함할 수 있다. 상기 하나 이상의 이미지들의 개수는, 상기 하나 이상의 난수들의 개수에 매칭될 수 있다.
상술한 바와 같은, 전자 장치의 방법은, 하나 이상의 색상들에 의하여 구분되는 하나 이상의 영역들을 포함하는 제1 이미지를 식별하는 동작을 포함할 수 있다. 상기 전자 장치의 방법은, 상기 식별된 제1 이미지에 기반하여, 상기 제1 이미지에 포함된 상기 하나 이상의 영역들에 기반하는 적어도 하나의 깊이 맵을 획득하는 동작을 포함할 수 있다. 상기 전자 장치의 방법은, 상기 식별된 제1 이미지, 및 상기 적어도 하나의 깊이 맵에 기반하여, 상기 하나 이상의 영역들의 색상들에 의해 지시되는 하나 이상의 피사체들을 포함하는 제2 이미지를 획득하는 동작을 포함할 수 있다.
예를 들어, 상기 적어도 하나의 깊이 맵은, 상기 하나 이상의 영역들 중 제1 영역 내 제1 픽셀에 할당된 제1 깊이 값, 및 상기 제1 픽셀과 상이한, 상기 제1 영역 내 제2 픽셀에 할당되고, 상기 제1 깊이 값과 상이한 제2 깊이 값을 포함할 수 있다.
예를 들어, 상기 제2 이미지를 획득하는 동작은, 복수의 색상들에 의하여 구분되는 복수의 영역들을 포함하는 상기 제1 이미지, 및 상기 적어도 하나의 깊이 맵에 기반하여, 상기 복수의 색상들 각각에 매칭되는 상이한 타입들을 가지는, 복수의 피사체들을 포함하는 상기 제2 이미지를 획득하는 동작을 포함할 수 있다.
예를 들어, 상기 적어도 하나의 깊이 맵을 획득하는 동작은, 상기 식별된 제1 이미지에 기반하여, 복수의 깊이 맵들을 획득하는 동작을 포함할 수 있다. 상기 제2 이미지를 획득하는 동작은, 상기 복수의 깊이 맵들 중 하나의 깊이 맵을 선택하는 입력에 응답하여, 상기 선택된 깊이 맵, 및 상기 제1 이미지에 기반하여, 상기 제2 이미지를 획득하는 동작을 포함할 수 있다.
예를 들어, 상기 적어도 하나의 깊이 맵을 획득하는 동작은, 상기 적어도 하나의 깊이 맵의 획득에 응답하여, 상기 전자 장치의 디스플레이 내에, 상기 적어도 하나의 깊이 맵에 포함된 적어도 하나의 깊이 값을 조절하기 위한 화면을 표시하는 동작을 포함할 수 있다.
상술한 바와 같은, 일 실시예에 따른, 전자 장치는, 인스트럭션들을 저장하기 위한 메모리, 및 상기 메모리와 작동적으로 결합된(operably coupled to) 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 때에, 하나 이상의 피사체들의 형태, 및 위치를 지시하는 시맨틱 맵을 식별할 수 있다. 상기 적어도 하나의 프로세서는, 상기 시맨틱 맵에 기반하여, 상기 시맨틱 맵에 포함된 복수의 픽셀들의 깊이 값들을 포함하는 복수의 후보 깊이 맵들을 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 식별된 깊이 맵, 및 상기 시맨틱 맵에 기반하여, 상기 하나 이상의 피사체들이 배치된, 하나 이상의 이미지들을 획득할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수 개의 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 어플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 전자 장치(electronic device)에 있어서,
    인스트럭션들을 저장하기 위한 메모리; 및
    상기 메모리와 작동적으로 결합된(operably coupled to) 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 때에,
    하나 이상의 색상들에 의하여 구분되는 하나 이상의 영역들을 포함하는 제1 이미지를 식별하고;
    상기 식별된 제1 이미지에 기반하여, 상기 제1 이미지에 포함된 상기 하나 이상의 영역들에 기반하는 적어도 하나의 깊이 맵을 획득하고; 및
    상기 식별된 제1 이미지, 및 상기 적어도 하나의 깊이 맵에 기반하여, 상기 하나 이상의 영역들의 색상들에 의해 지시되는(indicated by) 하나 이상의 피사체들을 포함하는 제2 이미지를 획득하는, 전자 장치.
  2. 제1항에 있어서,
    상기 적어도 하나의 깊이 맵은,
    상기 하나 이상의 영역들 중 제1 영역 내 제1 픽셀에 할당된(assigned) 제1 깊이 값, 및 상기 제1 픽셀과 상이한, 상기 제1 영역 내 제2 픽셀에 할당되고, 상기 제1 깊이 값과 상이한 제2 깊이 값을 포함하는, 전자 장치.
  3. 제1항에 있어서,
    상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 시에,
    복수의 색상들에 의하여 구분되는 복수의 영역들을 포함하는 상기 제1 이미지, 및 상기 적어도 하나의 깊이 맵에 기반하여, 상기 복수의 색상들 각각에 매칭되는 상이한 타입들을 가지는, 복수의 피사체들을 포함하는 상기 제2 이미지를 획득하는, 전자 장치.
  4. 제1항에 있어서,
    상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 시에,
    상기 식별된 제1 이미지에 기반하여, 복수의 깊이 맵들을 획득하고;
    상기 복수의 깊이 맵들 중 하나의 깊이 맵을 선택하는 입력에 응답하여, 상기 선택된 깊이 맵, 및 상기 제1 이미지에 기반하여, 상기 제2 이미지를 획득하는, 전자 장치.
  5. 제1항에 있어서,
    디스플레이를 더 포함하고,
    상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 시에,
    상기 적어도 하나의 깊이 맵의 획득에 응답하여, 상기 디스플레이 내에, 상기 적어도 하나의 깊이 맵에 포함된 적어도 하나의 깊이 값을 조절하기 위한 화면을 표시하는, 전자 장치.
  6. 제1항에 있어서,
    상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 시에,
    상기 메모리 내에 저장된 복수의 파라미터들에 의해 지시되는 뉴럴 네트워크로, 상기 제1 이미지, 및 적어도 하나의 난수(random number)를 입력하여, 상기 적어도 하나의 깊이 맵을 획득하는, 전자 장치.
  7. 제1항에 있어서,
    상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 시에,
    상기 메모리 내에 저장된 복수의 파라미터들에 의해 지시되는 뉴럴 네트워크로, 상기 적어도 하나의 깊이 맵, 상기 제1 이미지, 및 적어도 하나의 난수를 입력하여, 상기 제2 이미지를 획득하는, 전자 장치.
  8. 제1항에 있어서,
    상기 제1 이미지는,
    상기 하나 이상의 영역들의 형태, 또는 상기 하나 이상의 영역들에 채워진(filled) 상기 하나 이상의 색상들 중 적어도 하나에 기반하여, 상기 하나 이상의 피사체들을 나타내기 위한 시맨틱 맵(semantic map)인, 전자 장치.
  9. 제1항에 있어서,
    상기 제2 이미지는,
    상기 적어도 하나의 깊이 맵에 의해 지시되는 지형을 포함하는, 전자 장치.
  10. 제1항에 있어서,
    상기 적어도 하나의 프로세서는, 상기 인스트럭션들이 실행될 시에,
    상기 제1 이미지에 기반하여, 상기 하나 이상의 영역들 내에서의 깊이 분포를 나타내는, 상기 적어도 하나의 깊이 맵을 획득하고,
    상기 깊이 분포에 기반하여 배치된 상기 하나 이상의 피사체들을 포함하는 상기 제2 이미지를 획득하는, 전자 장치.
  11. 전자 장치의 방법에 있어서,
    하나 이상의 피사체들의 형태, 및 위치를 지시하는 시맨틱 맵을 식별하는 동작;
    상기 시맨틱 맵에 기반하여, 상기 시맨틱 맵에 포함된 복수의 픽셀들의 깊이 값들을 포함하는 복수의 후보 깊이 맵들을 획득하는 동작;
    상기 복수의 후보 깊이 맵들에 기반하여, 상기 시맨틱 맵에 매칭되는 깊이 맵을 식별하는 동작; 및
    상기 식별된 깊이 맵, 및 상기 시맨틱 맵에 기반하여, 상기 하나 이상의 피사체들이 배치된, 하나 이상의 이미지들을 획득하는 동작을 포함하는, 방법.
  12. 제11항에 있어서,
    상기 시맨틱 맵은,
    상이한 색상들이 채워진 복수의 영역들을 포함하고,
    상기 상이한 색상들은, 상기 하나 이상의 피사체들의 타입을 나타내고, 상기 복수의 영역들의 형태는, 상기 하나 이상의 피사체들의 상기 형태, 및 상기 위치를 나타내는, 방법.
  13. 제12항에 있어서,
    상기 복수의 후보 깊이 맵들을 획득하는 동작은,
    상기 시맨틱 맵, 및 적어도 하나의 수치 값(numeric value)을 수신하는 뉴럴 네트워크를 이용하여, 상기 복수의 영역들 중 제1 영역 내 깊이 분포를 포함하는, 상기 복수의 후보 깊이 맵들을 획득하는 동작을 포함하는, 방법.
  14. 제11항에 있어서,
    상기 깊이 맵을 식별하는 동작은,
    상기 복수의 후보 깊이 맵들을 상기 전자 장치의 디스플레이 내에 표시하는 동작;
    상기 복수의 후보 깊이 맵들 중 어느 하나를 선택하는 입력을 수신하는 동작; 및
    상기 입력에 의해 선택된 깊이 맵을, 상기 시맨틱 맵에 매칭되는 깊이 맵으로 식별하는 동작을 포함하는, 방법.
  15. 제11항에 있어서,
    상기 하나 이상의 이미지들을 획득하는 동작은,
    상기 식별된 깊이 맵, 및 하나 이상의 난수들을 수신하는 뉴럴 네트워크를 이용하여, 상기 하나 이상의 이미지들을 획득하는 동작을 포함하고,
    상기 하나 이상의 이미지들의 개수는, 상기 하나 이상의 난수들의 개수에 매칭되는, 방법.
  16. 전자 장치의 방법에 있어서,
    하나 이상의 색상들에 의하여 구분되는 하나 이상의 영역들을 포함하는 제1 이미지를 식별하는 동작;
    상기 식별된 제1 이미지에 기반하여, 상기 제1 이미지에 포함된 상기 하나 이상의 영역들에 기반하는 적어도 하나의 깊이 맵을 획득하는 동작; 및
    상기 식별된 제1 이미지, 및 상기 적어도 하나의 깊이 맵에 기반하여, 상기 하나 이상의 영역들의 색상들에 의해 지시되는 하나 이상의 피사체들을 포함하는 제2 이미지를 획득하는 동작을 포함하는, 방법.
  17. 제16항에 있어서,
    상기 적어도 하나의 깊이 맵은,
    상기 하나 이상의 영역들 중 제1 영역 내 제1 픽셀에 할당된 제1 깊이 값, 및 상기 제1 픽셀과 상이한, 상기 제1 영역 내 제2 픽셀에 할당되고, 상기 제1 깊이 값과 상이한 제2 깊이 값을 포함하는, 방법.
  18. 제16항에 있어서,
    상기 제2 이미지를 획득하는 동작은,
    복수의 색상들에 의하여 구분되는 복수의 영역들을 포함하는 상기 제1 이미지, 및 상기 적어도 하나의 깊이 맵에 기반하여, 상기 복수의 색상들 각각에 매칭되는 상이한 타입들을 가지는, 복수의 피사체들을 포함하는 상기 제2 이미지를 획득하는 동작을 포함하는, 방법.
  19. 제16항에 있어서,
    상기 적어도 하나의 깊이 맵을 획득하는 동작은,
    상기 식별된 제1 이미지에 기반하여, 복수의 깊이 맵들을 획득하는 동작을 포함하고,
    상기 제2 이미지를 획득하는 동작은,
    상기 복수의 깊이 맵들 중 하나의 깊이 맵을 선택하는 입력에 응답하여, 상기 선택된 깊이 맵, 및 상기 제1 이미지에 기반하여, 상기 제2 이미지를 획득하는 동작을 포함하는, 방법.
  20. 제16항에 있어서,
    상기 적어도 하나의 깊이 맵을 획득하는 동작은,
    상기 적어도 하나의 깊이 맵의 획득에 응답하여, 상기 전자 장치의 디스플레이 내에, 상기 적어도 하나의 깊이 맵에 포함된 적어도 하나의 깊이 값을 조절하기 위한 화면을 표시하는 동작을 포함하는, 방법.
PCT/KR2022/006846 2022-05-12 2022-05-12 깊이 맵에 기반하여 이미지를 합성하기 위한 전자 장치 및 그 방법 WO2023219189A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2022/006846 WO2023219189A1 (ko) 2022-05-12 2022-05-12 깊이 맵에 기반하여 이미지를 합성하기 위한 전자 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2022/006846 WO2023219189A1 (ko) 2022-05-12 2022-05-12 깊이 맵에 기반하여 이미지를 합성하기 위한 전자 장치 및 그 방법

Publications (1)

Publication Number Publication Date
WO2023219189A1 true WO2023219189A1 (ko) 2023-11-16

Family

ID=88730487

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/006846 WO2023219189A1 (ko) 2022-05-12 2022-05-12 깊이 맵에 기반하여 이미지를 합성하기 위한 전자 장치 및 그 방법

Country Status (1)

Country Link
WO (1) WO2023219189A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101592087B1 (ko) * 2014-02-10 2016-02-04 강원대학교산학협력단 배경 영상의 위치를 이용한 관심맵 생성 방법 및 이를 기록한 기록 매체
KR20190030474A (ko) * 2017-09-14 2019-03-22 삼성전자주식회사 신뢰도에 기초하여 깊이 맵을 산출하는 방법 및 장치
KR20190066292A (ko) * 2017-12-05 2019-06-13 엘지전자 주식회사 이미지 처리 장치, 및 이를 구비하는 이동 로봇
KR20200111446A (ko) * 2019-03-19 2020-09-29 삼성전자주식회사 합성 이미지를 생성하는 전자 장치 및 방법
KR102220443B1 (ko) * 2014-06-09 2021-02-25 삼성전자주식회사 깊이 정보를 활용하는 전자 장치 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101592087B1 (ko) * 2014-02-10 2016-02-04 강원대학교산학협력단 배경 영상의 위치를 이용한 관심맵 생성 방법 및 이를 기록한 기록 매체
KR102220443B1 (ko) * 2014-06-09 2021-02-25 삼성전자주식회사 깊이 정보를 활용하는 전자 장치 및 방법
KR20190030474A (ko) * 2017-09-14 2019-03-22 삼성전자주식회사 신뢰도에 기초하여 깊이 맵을 산출하는 방법 및 장치
KR20190066292A (ko) * 2017-12-05 2019-06-13 엘지전자 주식회사 이미지 처리 장치, 및 이를 구비하는 이동 로봇
KR20200111446A (ko) * 2019-03-19 2020-09-29 삼성전자주식회사 합성 이미지를 생성하는 전자 장치 및 방법

Similar Documents

Publication Publication Date Title
WO2020162673A1 (en) Electronic device for providing avatar animation and method thereof
WO2021251689A1 (en) Electronic device and controlling method of electronic device
WO2021002596A1 (en) Higher-order function networks for learning composable three-dimensional (3d) object and operating method thereof
WO2020180134A1 (ko) 이미지 수정 시스템 및 이의 이미지 수정 방법
WO2020197018A1 (en) Image processing apparatus and image processing method thereof
WO2022014790A1 (en) Guided backpropagation-gradient updating for image processing task using redundant information from image
WO2020171429A1 (ko) 애니메이티드 이미지를 제공하기 위한 전자 장치 및 그에 관한 방법
US10621769B2 (en) Simplified lighting compositing
WO2023219189A1 (ko) 깊이 맵에 기반하여 이미지를 합성하기 위한 전자 장치 및 그 방법
CN113613067B (zh) 视频处理方法、装置、设备及存储介质
WO2021075758A1 (en) Electronic apparatus and controlling method thereof
EP4049235A1 (en) Electronic device and controlling method of electronic device
US20230237625A1 (en) Video processing method, electronic device, and storage medium
WO2022085914A1 (ko) 전자 장치 및 전자 장치의 제어 방법
WO2021230646A1 (en) System and method for depth map recovery
WO2022019389A1 (ko) 데이터 증강 기반 공간 분석 모델 학습 장치 및 방법
WO2020085718A1 (ko) 보정 이미지 기반 아바타 생성 방법 및 장치
WO2024043435A1 (ko) 뷰어가 인식하는 깊이가 강화된 이미지를 생성하기 위한 전자 장치 및 방법
WO2023068655A1 (en) System and method for learning tone curves for local image enhancement
CN114512094A (zh) 屏幕色彩调节方法、装置、终端及计算机可读存储介质
WO2024039025A1 (ko) 3d 캐릭터 기반 표준 모델을 이용한 이미지 합성을 통해 얼굴 표정을 생성하는 방법, 컴퓨터 장치, 및 컴퓨터 프로그램
WO2024096683A1 (ko) 가상 객체의 폐색을 구현하기 위한 방법
WO2024014662A1 (ko) 전자 장치 및 전자 장치의 제어 방법
WO2019066537A1 (ko) 컨텐츠를 표시하기 위한 장치 및 그의 동작 방법
WO2022145755A1 (ko) 적층형 디스플레이 장치 및 이의 제어 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22941776

Country of ref document: EP

Kind code of ref document: A1