WO2024071813A1 - 객체 영역과 배경 영역을 분류하기 위한 전자 장치 및 전자 장치의 동작 방법 - Google Patents
객체 영역과 배경 영역을 분류하기 위한 전자 장치 및 전자 장치의 동작 방법 Download PDFInfo
- Publication number
- WO2024071813A1 WO2024071813A1 PCT/KR2023/014266 KR2023014266W WO2024071813A1 WO 2024071813 A1 WO2024071813 A1 WO 2024071813A1 KR 2023014266 W KR2023014266 W KR 2023014266W WO 2024071813 A1 WO2024071813 A1 WO 2024071813A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- classification map
- area
- correction coefficient
- image
- electronic device
- Prior art date
Links
- 238000011017 operating method Methods 0.000 title claims abstract description 8
- 238000007781 pre-processing Methods 0.000 claims abstract description 9
- 238000012937 correction Methods 0.000 claims description 159
- 238000000034 method Methods 0.000 claims description 43
- 230000007423 decrease Effects 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 description 38
- 238000010586 diagram Methods 0.000 description 26
- 230000006870 function Effects 0.000 description 25
- 238000013473 artificial intelligence Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 14
- 238000001514 detection method Methods 0.000 description 11
- 238000013528 artificial neural network Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000003628 erosive effect Effects 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 5
- 239000002131 composite material Substances 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000010339 dilation Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/194—Segmentation; Edge detection involving foreground-background segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/30—Noise filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/155—Segmentation; Edge detection involving morphological operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/7715—Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
Definitions
- This disclosure relates to an electronic device and a method of operating the electronic device for classifying object areas and background areas included in an image.
- background filter technology is being developed to classify object areas and background areas in an image and then replace the background area in the image with a virtual graphic or an opaque screen.
- This background filter technology can be used in virtual environments such as video calls, camera shooting modes, or metaverse environments.
- the background area that is the call location can be replaced with another background image during a call to prevent infringement on personal privacy, or a desired location can be set as the background area.
- An electronic device may include a memory that stores at least one instruction and at least one processor that executes the at least one instruction stored in the memory.
- at least one processor may acquire an input image of an object and a background of the object through a camera by executing at least one command.
- At least one processor may obtain a first classification map by classifying the input image obtained by executing at least one command into an object area corresponding to the object and a background area corresponding to the background of the object.
- At least one processor may preprocess the first classification map by executing at least one instruction to obtain a second classification map from which noise areas included in the first classification map are removed.
- At least one processor executes at least one command to obtain an object image corresponding to the object based on the first classification map and the second classification map using the distance information and noise area from the camera 300 to the object. You can.
- a method of operating an electronic device may include acquiring an input image of an object and a background of the object through a camera.
- a method of operating an electronic device may include obtaining a first classification map by classifying the acquired input image into an object area corresponding to the object and a background area corresponding to the background of the object.
- a method of operating an electronic device may include preprocessing a first classification map to obtain a second classification map from which noise areas included in the first classification map are removed.
- a method of operating an electronic device may include obtaining an object image corresponding to an object based on a first classification map and a second classification map using distance information from a camera to the object and a noise area.
- a computer-readable recording medium on which a program for performing at least one method among the disclosed operating method embodiments is recorded on a computer may be provided.
- FIG. 1 is a diagram for explaining an electronic device according to an embodiment of the present disclosure.
- Figure 2 is a block diagram for explaining an electronic device according to an embodiment of the present disclosure.
- FIG. 3 is a flowchart for explaining the operation of an electronic device according to an embodiment of the present disclosure.
- FIG. 4 is a diagram for explaining the operation of an electronic device according to an embodiment of the present disclosure.
- FIG. 5A is a diagram for explaining an operation of acquiring a first classification map according to an embodiment of the present disclosure.
- FIG. 5B is a diagram for explaining a first classification map obtained according to an embodiment of the present disclosure.
- FIG. 6A is a diagram for explaining an operation of acquiring a second classification map according to an embodiment of the present disclosure.
- FIG. 6B is a diagram for explaining a second classification map according to an embodiment of the present disclosure.
- FIG. 7A is a diagram for explaining an operation of obtaining a first correction coefficient according to an embodiment of the present disclosure.
- FIG. 7B is a diagram for explaining a first correction coefficient according to an embodiment of the present disclosure.
- FIG. 8A is a diagram for explaining an operation of obtaining a second correction coefficient and a third correction coefficient according to an embodiment of the present disclosure.
- FIG. 8B is a diagram for explaining a second correction coefficient and a third correction coefficient according to an embodiment of the present disclosure.
- Figure 9 is a diagram for explaining the operation of obtaining a final classification map according to an embodiment of the present disclosure.
- FIG. 10 is a diagram for explaining the effects of an electronic device and a method of operating the electronic device according to an embodiment of the present disclosure.
- the expression “at least one of a, b, or c” refers to “a”, “b”, “c”, “a and b”, “a and c”, “b and c”, “a, b and c”, or variations thereof.
- the expression “configured to” used in the present disclosure may mean, for example, “suitable for,” “having the capacity to,” depending on the situation. It can be used interchangeably with “, “designed to,” “adapted to,” “made to,” or “capable of.”
- the term “configured (or set to)” may not necessarily mean “specifically designed to” in hardware.
- the expression “system configured to” may mean that the system is “capable of” in conjunction with other devices or components.
- the phrase “processor configured (or set) to perform A, B, and C” refers to a processor dedicated to performing the operations (e.g., an embedded processor), or by executing one or more software programs stored in memory. It may refer to a general-purpose processor (e.g., CPU or application processor) that can perform the corresponding operations.
- a component when referred to as “connected” or “connected” to another component, the component may be directly connected or directly connected to the other component, but in particular, the contrary It should be understood that unless a base material exists, it may be connected or connected through another component in the middle.
- FIG. 1 is a diagram for explaining an electronic device according to an embodiment of the present disclosure.
- the electronic device 100 may include a display panel 200 and a camera 300.
- the camera 300 may photograph or capture the user 110 located in front of the electronic device 100 and the background of the user 110.
- the user 110 captured by the camera 300 is defined as an object
- the background of the user 110 is defined as the object background.
- the electronic device 100 may acquire an input image 1000 including the object 110 and the background of the object 110 captured through the camera 300.
- object 110 is shown in Figure 1 as a person throwing a ball, but the present disclosure is not limited thereto.
- the object 110 may be a user using the electronic device 100.
- the camera 300 may acquire the input image 1000 by photographing or capturing at least one user and at least one user's background. Additionally, the camera 300 may photograph an object located in front of the electronic device 100 and the background of the object. In this case, the object may be an object placed in front of the electronic device 100. Camera 300 can capture still images of objects or capture sequences of images that make up a video.
- the present disclosure is not limited thereto, and the camera 300 may not be included in the electronic device 100.
- the electronic device 100 may receive an input image 1000 including an object and a background of the object captured through a camera included in a separate electronic device. In this case, the electronic device 100 may acquire the object image 5000 based on the input image 1000 provided.
- the user 110 using the electronic device 100 and the object included in the input image 1000 obtained through the camera 300 may be different.
- the input image 1000 will be described as an image acquired by shooting through the camera 300 included in the electronic device 100.
- the camera 300 may be separated from the electronic device 100.
- the electronic device 100 based on the acquired input image 1000, divides the input image 1000 into an object area 2100 corresponding to the object and a background area 2200 corresponding to the background of the object.
- the classified first classification map 2000 can be obtained.
- the electronic device 100 preprocesses the first classification map 2000 to create a second classification map 3000 by removing the noise area 2300 included in the first classification map 2000. It can be obtained.
- the second classification map 3000 removes the noise area 2300 included in the object area 2100 and defines the boundary between the object area 2100 and the background area 2200. It can be obtained through smoothing.
- the electronic device 100 uses the distance information from the camera 300 to the object 110 and the noise area 2300 included in the first classification map 2000 to create a first classification map 2000.
- an object image 5000 corresponding to the object 110 may be obtained.
- the electronic device 100 uses the distance information from the camera 300 to the object 110 and the noise area 2300 included in the first classification map 2000 to create the first classification map 2000 and the second classification.
- a final classification map 4000 may be obtained based on the map 3000, and an object image 5000 may be obtained by applying the obtained final classification map 4000 to the input image 1000.
- the final classification map 4000 compares the first classification map 2000 and the second classification map 3000 to the accuracy of the operation of classifying the object area corresponding to the object 110 and the background area corresponding to the background of the object. can be high.
- Distance information between the camera 300 and the object 110 may be estimated by the camera 300 or the electronic device 100. The distance may be estimated based on the zoom strength of the camera's lens when capturing the image of the object 110 and the size of the object 110 within the image.
- the electronic device 100 acquires the final classification map 4000 based on the input image 1000 including the object and the background of the object previously obtained through the camera 300, and the obtained final classification
- the object image 5000 obtained by applying the map 4000 to the input image 1000 may be displayed on the display panel 200 and provided to the user of the electronic device 100.
- the electronic device 100 produces a composite image 7000 obtained by combining the acquired object image 5000 with another background image 6000 (see FIG. 10) rather than the background image of the object. It can also be provided to 100) users.
- the electronic device 100 may provide at least one image of the obtained final classification map 4000, object image 5000, or composite image 7000 to a separate electronic device.
- the electronic device 100 uses a first classification map 2000, a second classification map 3000, and a final classification map ( 4000).
- Figure 2 is a block diagram for explaining an electronic device according to an embodiment of the present disclosure.
- the electronic device 100 may include a display panel 200, a camera 300, a memory 400, a processor 500, and a communication interface 600. .
- the electronic device 100 may be implemented with more components than those shown in FIG. 2, or may be implemented with fewer components.
- the display panel 200, camera 300, memory 400, processor 500, and communication interface 600 may each be electrically and/or physically connected to each other.
- the same reference numerals will be given to the same components as those described in FIG. 1, and the description will be omitted.
- the display panel 200 is one of a liquid crystal display, a plasma display, an organic light emitting diode display, and an inorganic light emitting diode display. May include a display.
- the present disclosure is not limited thereto, and the display panel 200 may include another type of display capable of providing an object image 5000 (see FIG. 1) to the user 110.
- the camera 300 may include an RGB camera, an infrared ray (IR) camera, and an RGB-Depth camera.
- the camera 300 may include other types of cameras, sensors, etc. that can photograph the user 110 and the background of the user 110.
- the camera 300 may be separated from the electronic device 100, and the camera 300 is separated from the electronic device 100 when not operating, and is connected to the electronic device 100 when operating. can be connected
- the camera 300 may be electrically and/or physically connected to the electronic device 100 when photographing the object 110 and the background of the object to obtain the input image 1000.
- the electronic device 100 may not include the camera 300.
- the electronic device 100 may not include the camera 300 and may acquire the input image 1000 captured from a camera included in a separate electronic device.
- the electronic device 100 may receive an input image 1000 captured by a camera located remotely from the electronic device 100.
- the memory 400 is a flash memory type, hard disk type, multimedia card micro type, or card type memory (e.g., SD or XD). Memory, etc.), RAM (Random Access Memory), SRAM (Static Random Access Memory), ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), Mask ROM, Flash ROM, etc.), a hard disk drive (HDD), or a solid state drive (SSD).
- the memory 400 may store instructions or program codes for performing functions or operations of the electronic device 100. Instructions, algorithms, data structures, program codes, and application programs stored in the memory 400 may be implemented in, for example, programming or scripting languages such as C, C++, Java, assembler, etc.
- the memory 400 contains various types of information that can be used to obtain the final classification map (4000, see FIG. 1) based on the input image (1000, see FIG. 1) acquired through the electronic device 100.
- modules can be stored.
- the memory 400 stores an image acquisition module 410, a probability calculation module 420, a first classification map acquisition module 430, a second classification map acquisition module 440, and a final classification map acquisition module 450. You can. However, not all modules shown in FIG. 2 are essential modules.
- the memory 400 may store more or fewer modules than the modules shown in FIG. 2 .
- the memory 400 may further store a module for obtaining an object image 5000 (see FIG. 1) by applying the final classification map 4000 to the input image 1000.
- the memory 400 includes a border detection module 435, a region division module 445, a first correction coefficient calculation module 470, a second correction coefficient calculation module 491, and a second correction coefficient calculation module 491, which will be described later in FIG. 4.
- 3 Correction coefficient calculation module 492 may be further stored.
- a 'module' included in the memory 400 may refer to a unit that processes functions or operations performed by at least one processor 500.
- a 'module' included in the memory 400 may be implemented as software such as instructions, algorithms, data structures, or program code.
- the image acquisition module 410 may be composed of commands or program code related to an operation or function of acquiring an input image 1000 by photographing an object and its background through the camera 300.
- the present disclosure is not limited thereto, and the image acquisition module 410 may be composed of instructions or program code related to an operation or function of acquiring an input image of an object and its background from a separate electronic device. .
- the acquired input image 1000 may include a plurality of pixel images. Each of the plurality of pixel images may correspond to a pixel constituting the input image 1000. A pixel may be a unit image constituting the input image 1000.
- the probability calculation module 420 includes instructions or functions related to an operation or function for calculating the probability that each of a plurality of pixel images corresponds to an object or a background of the object, based on the acquired input image 1000. It may consist of program code. In one embodiment, the probability calculation module 420 calculates the probability that each of the plurality of pixel images included in the input image 1000 is a pixel image corresponding to the object and the probability that each is a pixel image corresponding to the background of the object. It may consist of instructions or program code related to operations or functions.
- the probability calculation module 420 may include an artificial intelligence (AI) model.
- AI artificial intelligence
- the artificial intelligence model included in the probability calculation module 340 is based on the input image 1000, and each of the plurality of pixel images included in the input image 1000 corresponds to the object or the background of the object. It may be an artificial intelligence model trained to calculate the probability of being a pixel image.
- the artificial intelligence model included in the probability calculation module 420 may include a machine learning or deep learning model. In one embodiment, the artificial intelligence model included in the probability calculation module 420 may include a plurality of neural network layers. Each neural network layer has a plurality of weight values, and the calculation of the current neural network layer can be performed through the calculation result of the previous neural network layer and the calculation of the plurality of weights. Examples of artificial intelligence models include Convolutional Neural Network (CNN), Deep Neural Network (DNN), Recurrent Neural Network (RNN), Restricted Boltzmann Machine (RBM), Deep Belief Network (DBN), and Bidirectional Recurrent Deep Neural Network (BRDNN).
- CNN Convolutional Neural Network
- DNN Deep Neural Network
- RNN Recurrent Neural Network
- RBM Restricted Boltzmann Machine
- DBN Deep Belief Network
- BBN Bidirectional Recurrent Deep Neural Network
- Deep Q-Networks Deep Q-Networks
- GAN Geneative Adversarial Networks
- VAE Vehicle Auto Encoder
- the artificial intelligence model included in the probability calculation module 420 in the present disclosure is in the above example. It is not limited.
- the artificial intelligence model included in the probability calculation module 420 is based on a training dataset labeled with an object and an object background, and a plurality of images included in the input image 1000. It may be an artificial intelligence model trained to calculate the probability that each of the pixel images is a pixel image corresponding to an object or a background of the object. In one embodiment, the weights of probability calculation module 420 may be updated based on the training dataset.
- the electronic device 100 may train an artificial intelligence model included in the probability calculation module 420.
- the electronic device 100 may perform transfer learning using a pre-learning model to train an artificial intelligence model included in the probability calculation module 420.
- the present disclosure is not limited to this, and the probability calculation module 420 may receive a pre-trained artificial intelligence model from an external server or surrounding electronic devices through the communication interface 600.
- the probability calculation module 420 includes instructions or programs related to an operation or function of calculating the probability that each of a plurality of pixel images included in the input image 1000 is a pixel image corresponding to an object. It is explained as consisting of code. Additionally, the probability that each of the calculated plurality of pixel images is a pixel image corresponding to an object is referred to as an object pixel probability value.
- the probability calculation module 420 divides the plurality of pixel images into the object image 5000 corresponding to the object and the background of the object, based on the arrangement of the plurality of pixel images and the object pixel probability value of the plurality of pixel images. It may include commands or program code related to the operation or function of classifying the object as the corresponding background image.
- the first classification map acquisition module 430 selects an area in which at least one pixel image having an object pixel probability value equal to or greater than a preset first reference probability value is arranged adjacent to an object area corresponding to the object. It may include instructions or program codes related to operations or functions classified as (2100).
- the first classification map acquisition module 430 classifies an area in which at least one pixel image having an object pixel probability value smaller than a preset first reference probability value is arranged adjacent to the background area 2200 corresponding to the object background image. It may contain instructions or program code related to an operation or function.
- the first reference probability value may be a standard value for classifying the input image 1000 into an object image 5000 and an object background image.
- an area classified as the object area 2100 through the first classification map acquisition module 430 includes at least one pixel image having an object pixel probability value smaller than a preset second reference probability value.
- a noise area 2300 (see FIG. 1) may be included.
- the second reference probability value may be a probability value different from the first reference probability value.
- the second reference probability value may be greater than the first reference probability value.
- the noise area 2300 will be described later with reference to FIGS. 5B and 7B.
- the first classification map acquisition module 430 converts the object pixel probability value calculated through the first classification map acquisition module 430 into gray scale to produce the first classification map 2000. It may consist of instructions or program code related to the operation or function to be acquired.
- the first classification map 2000 is an image having a gray level between 0 and 255, obtained by multiplying the object pixel probability value of each of the plurality of pixel images included in the input image 1000 by 255. You can. At this time, a pixel image with a larger object pixel probability value may have a higher gray level, and a pixel image with a smaller object pixel probability value may have a lower gray level. Accordingly, the object area 2100 included in the first classification map 2000 may be an area with a high gray level, and the background area 2200 may be an area with a low gray level. However, the present disclosure is not limited thereto.
- the first classification map 2000 may be an image having a gray level between 0 and a reference gray level according to a reference gray level multiplied by the object pixel probability value of each of the plurality of pixel images included in the input image 1000.
- the second classification map acquisition module 440 preprocesses the first classification map 2000 and removes the noise area 2300 included in the first classification map 2000 to obtain a second classification. It may be composed of instructions or program code related to the operation or function of acquiring the map 3000. In one embodiment, the second classification map acquisition module 440 acquires a second classification map 3000 by removing the noise area 2300 included in the first classification map 2000 through morphology calculation. It may be composed of instructions or program code related to functions. In one embodiment, the second classification map acquisition module 440 performs erosion, dilation, and opening through erosion and dilation to remove the noise area 2300 included in the first classification map 2000. It may consist of instructions or program code related to operations or functions that perform opening, closing, and gradient operations. Hereinafter, the noise area 2300 will be described later with reference to FIGS. 5A to 7B.
- the final classification map acquisition module 450 includes instructions or programs related to an operation or function of acquiring the final classification map 4000 based on the first classification map 2000 and the second classification map 3000. It can be composed of code. In one embodiment, the final classification map acquisition module 450 includes a first correction coefficient calculated based on distance information from the camera to the object, a second correction coefficient calculated based on the noise area 2300, and a first classification map. It may be composed of commands or program codes related to an operation or function of obtaining the final classification map 4000 based on (2000) and the second classification map 3000.
- the final classification map acquisition module 450 calculates a first correction coefficient, a second correction coefficient, and a probability value that at least one pixel image included in the noise area 2300 corresponds to an object. 3 It may be composed of instructions or program code related to an operation or function of obtaining the final classification map 4000 based on the correction coefficient, the first classification map 2000, and the second classification map 3000.
- the first to third correction coefficients will be described later in the description of FIGS. 7A to 8B.
- the processor 500 includes a Central Processing Unit, a microprocessor, a Graphics Processing Unit, an Application Processor (AP), Application Specific Integrated Circuits (ASICs), and Digital Signal Processors (DSPs). ), DSPDs (Digital Signal Processing Devices), PLDs (Programmable Logic Devices), FPGAs (Field Programmable Gate Arrays), and neural processors (Neural Processing Units) or hardware structures specialized for learning and processing artificial intelligence (AI) models. It may consist of at least one of the artificial intelligence-specific processors designed, but is not limited to this.
- the processor 500 may execute various types of modules stored in the memory 400.
- the processor 500 includes an image acquisition module 410 stored in the memory 400, a probability calculation module 420, a first classification map acquisition module 430, a second classification map acquisition module 440, and The final classification map acquisition module 450 may be executed.
- the processor 500 may execute at least one instruction constituting various types of modules stored in the memory 400.
- the communication interface 600 may perform data communication with an external server (not shown) under the control of the processor 500. Additionally, the communication interface 600 can perform data communication not only with an external server but also with other surrounding electronic devices (not shown).
- the communication interface 600 includes, for example, wired LAN, wireless LAN, Wi-Fi, Bluetooth, zigbee, WFD (Wi-Fi Direct), and infrared communication (IrDA, infrared Data Association), BLE (Bluetooth Low Energy), NFC (Near Field Communication), Wibro (Wireless Broadband Internet, Wibro), WiMAX (World Interoperability for Microwave Access, WiMAX), SWAP (Shared Wireless Access Protocol), WiGig Data communication may be performed with a server or other surrounding electronic devices using at least one of data communication methods including (Wireless Gigabit Allicance, WiGig) and RF communication.
- the communication interface 600 uses a previously learned probability calculation module 420 to calculate the probability that each of the plurality of pixel images included in the input image 1000 is a pixel image corresponding to an object. It can also be received from a server or nearby electronic devices.
- FIG. 3 is a flowchart for explaining the operation of an electronic device according to an embodiment of the present disclosure.
- FIG. 4 is a diagram for explaining the operation of an electronic device according to an embodiment of the present disclosure.
- the method of operating the electronic device 100 includes an input image 1000 (FIG. It includes a step (S100) of obtaining (see 1).
- the reference distance refers to the distance between the camera 300 and the object.
- At least one processor 500 may execute the image acquisition module 410 to acquire the input image 1000 through the camera 300.
- a method of operating the electronic device 100 may include calculating an object pixel probability value for each of a plurality of pixel images included in the acquired input image 1000. At least one processor 500 may calculate an object pixel probability value for each of the plurality of pixel images included in the input image 1000 obtained by executing the probability calculation module 420.
- the method of operating the electronic device 100 classifies the first part of the input image 1000 into an object area 2100 corresponding to an object, and classifies the second part of the input image 1000 into an object area 2100. It may include a step (S200) of obtaining a first classification map 2000 by classifying it into a background area 2200 corresponding to the background.
- the step of acquiring the first classification map 2000 includes arranging a plurality of pixel images and comparing the object pixel probability value of each of the plurality of pixel images with a preset first reference probability value. It may include classifying pixel images into an object area 2100 and a background area 2200. At least one processor 500 executes the first classification map acquisition module 430 to select an area in which at least one pixel image having an object pixel probability value equal to or greater than a preset first reference probability value is arranged adjacently. It can be classified into object area 2100. At least one processor 500 executes the probability calculation module 420 to define an area in which at least one pixel image having an object pixel probability value smaller than a preset first reference probability value is arranged adjacent to the background area 2200. It can be classified as corresponding to .
- the step of acquiring the first classification map 2000 may include obtaining the first classification map 2000 by converting the object pixel probability values of the plurality of pixel images into a gray scale. there is. At least one processor 500 executes the first classification map acquisition module 430 to multiply the object pixel probability values of the plurality of pixel images by 255 to produce a first classification map 2000 having a gray level between 0 and 255. can be obtained.
- the operation of acquiring the first classification map 2000 based on the input image 1000 will be described later with reference to FIGS. 5A and 5B.
- the method of operating the electronic device 100 may include detecting a boundary between the object area 2100 and the background area 2200 included in the obtained first classification map 2000.
- At least one processor 500 executes the boundary detection module 435 to binarize the grayscale included in the first classification map 2000 to define the boundary between the object area 2100 and the background area 2200. It can be detected.
- the method of operating the electronic device 100 includes preprocessing the first classification map 2000 to remove the noise area 2300 included in the first classification map 2000 to create a second classification map 3000. It may include a step of acquiring (S300). In one embodiment, the at least one processor 500 executes the second classification map acquisition module 440 to remove the noise area 2300 included in the first classification map 2000 through a morphology operation. A second classification map 3000 can be obtained. In one embodiment, the at least one processor 500 executes the second classification map acquisition module 440 to perform erosion, dilatation, opening through erosion and dilatation, closing, and The noise area 2300 included in the first classification map 2000 can be removed through gradient calculation, etc.
- At least one processor 500 may execute the second classification map acquisition module 440 to smooth the boundary between the object area 2100 and the background area 2200 included in the first classification map 2000. .
- the operation of preprocessing the first classification map 2000 to obtain the second classification map 3000 will be described later with reference to FIGS. 6A and 6B.
- a method of operating the electronic device 100 may include obtaining a first correction coefficient calculated based on distance information between the camera 300 and the object.
- a reference distance between the camera 300 and the object is detected based on the second classification map 3000, and a first correction coefficient is calculated based on the detected reference distance. can be calculated.
- At least one processor 500 executes the correction coefficient calculation module 470 to detect a reference distance between the camera 300 and the object based on the second classification map 3000, and information on the detected reference distance. The first correction coefficient calculated based on can be obtained.
- obtaining the first correction coefficient includes detecting the distance between the camera 300 and the object based on the second classification map 3000 and obtaining the first correction coefficient based on the detected reference distance. It may include the step of calculating . At least one processor 500 may execute the distance detection module 460 to detect a reference distance between the camera 300 and the object based on the second classification map 3000. At least one processor 500 may execute the first correction coefficient calculation module 470 to obtain a first correction coefficient calculated based on the detected reference distance information.
- the operation of obtaining the first correction coefficient will be described later with reference to FIGS. 7A and 7B.
- the method of operating the electronic device 100 divides the classified object area 2100 and the background area 2200 based on the detected boundary, and divides the divided object area 2100 and the background area ( 2200) may include calculating the position and size.
- At least one processor 500 executes the region segmentation module 445 to divide the object region 2100 and the background region 2200 included in the input image 1000 based on the detected boundary, and divides the divided object The location and size of the area 2100 and the background area 2200 can be calculated.
- a method of operating the electronic device 100 may include detecting a noise area 2300 included in the first classification map 2000.
- At least one processor 500 may execute the noise area detection module 480 to detect the noise area 2300 included in the first classification map 2000.
- the at least one processor 500 noises an area containing a pixel image having an object pixel probability value smaller than the second reference probability value among at least one pixel image included in the divided object area 2100. It can be detected by area 2300.
- the second reference probability value may be a probability value that is greater than the first reference probability value.
- the noise area 2300 is classified as being included in the object area 2100, which is determined to be an area corresponding to the object based on the first reference probability value, but is it a pixel image corresponding to the object or a background of the object? It may be an area containing at least one pixel image that is unclear whether it is a corresponding pixel image.
- the noise area 2300 may be included in the background area 2200 that is determined to be an area corresponding to the background of the object based on the first reference probability value.
- the noise area 2300 may be an area containing a pixel image having an object pixel probability value that is smaller than the first reference probability value but is equal to or greater than the third reference probability value.
- the third reference probability value may be a probability value that is smaller than the first reference probability value.
- the noise area 2300 is classified as being included in the background area 2200, which is determined to be an area corresponding to the background of the object based on the first reference probability value, but is it a pixel image corresponding to the object or It may be an area containing at least one pixel image that is unclear whether it is a pixel image corresponding to the background.
- the noise area 2300 will be described as an area included in the object area 2100.
- a method of operating the electronic device 100 may include obtaining a second correction coefficient calculated based on the noise area 2300 included in the first classification map 2000.
- the second correction coefficient calculated based on the detected noise area 2300 may be obtained.
- At least one processor 500 may execute the second correction coefficient calculation module 491 to calculate and obtain a second correction coefficient based on the detected noise area 2300.
- the operation of obtaining the second correction coefficient will be described later with reference to FIGS. 8A and 8B.
- a method of operating the electronic device 100 may include obtaining a third correction coefficient calculated based on the noise area 2300 included in the first classification map 2000.
- the third correction coefficient calculated based on the object pixel probability of at least one pixel image included in the detected noise area 2300 may be obtained.
- the at least one processor 500 executes the third correction coefficient calculation module 492 to calculate the third correction coefficient based on the object pixel probability of the at least one pixel image included in the detected noise area 2300. It can be obtained.
- the operation of obtaining the second correction coefficient will be described later with reference to FIGS. 8A and 8B.
- the method of operating the electronic device 100 generates a final classification map 4000 based on the first correction coefficient, the second correction coefficient, the first classification map 2000, and the second classification map 3000. It may include an acquisition step (S400). In one embodiment, in the step of acquiring the final classification map 4000 (S400), the final classification map 4000 includes a first correction coefficient, a second correction coefficient, a third correction coefficient, a first classification map 2000, and It may be obtained based on the second classification map 3000.
- the operation of acquiring the final classification map 4000 will be described later with reference to FIG. 9.
- the method of operating the electronic device 100 includes obtaining an object image 5000 corresponding to the object 110 by applying the final classification map 4000 to the input image 1000 (S500). may include.
- the first classification map 2000 and the second classification are generated using the distance information from the camera 300 to the object and the noise area 2300. Based on the map 3000, an object image 5000 corresponding to the object can be obtained.
- at least one processor 500 may obtain an object image 5000 corresponding to an object by applying the final classification map 4000 to the input image 1000.
- FIG. 5A is a diagram for explaining an operation of acquiring a first classification map according to an embodiment of the present disclosure.
- FIG. 5B is a diagram for explaining a first classification map obtained according to an embodiment of the present disclosure.
- the input image 1000 may be an image obtained by photographing a person throwing a ball and the background of the person throwing the ball.
- At least one processor 500 may execute the image acquisition module 410 to acquire an input image 1000 including a person throwing a ball as an object and a background of the person throwing the ball as the background of the object. .
- At least one processor 500 executes the probability calculation module 420 to calculate the object pixel probability value of each of the plurality of pixel images included in the image corresponding to the person throwing the ball, and The object pixel probability value of each of the plurality of pixel images included in the image corresponding to the background of the person can be calculated. Accordingly, each pixel image can be classified as either an object or a background according to the calculated object pixel probability value.
- the probability calculation module 420 may include a pre-trained artificial intelligence model based on a training dataset labeled with a person and a human background.
- the object pixel probability value of each of the plurality of pixel images included in the image corresponding to the person throwing the ball is the object pixel probability value of each of the plurality of pixel images included in the image corresponding to the background of the person throwing the ball. It may be greater than the probability value.
- the at least one processor 500 executes the first classification map acquisition module 430 to select the input image 1000 at least as having an object pixel probability value equal to or greater than a preset first reference probability value. It can be classified into one pixel image and at least one pixel image having an object pixel probability value smaller than the first reference probability value.
- the first reference probability value is a probability value that is determined to be a standard for classifying people and their backgrounds, according to the weight of the probability calculation module 420, which is previously trained to classify people and their backgrounds. It can be set to .
- At least one processor 500 executes the first classification map acquisition module 430 so that at least one pixel image having an object pixel probability value equal to or greater than the first reference probability value among the input images 1000 is adjacent to the input image 1000.
- the placed area can be classified as an object area 2100.
- at least one processor 500 because a plurality of pixel images corresponding to a person throwing a ball have an object pixel probability value equal to or greater than the first reference probability value and are arranged adjacent to each other, at least one processor 500 The area corresponding to the person throwing can be classified as the object area 2100.
- At least one processor 500 executes the first classification map acquisition module 430 so that at least one pixel image having an object pixel probability value smaller than the first reference probability value among the input images 1000 is disposed adjacently.
- the area can be classified into a background area (2200).
- at least one processor 500 because a plurality of pixel images corresponding to the background of the person throwing the ball have an object pixel probability value smaller than the first reference probability value and are arranged adjacent to each other, at least one processor 500 The area corresponding to the background of the person throwing the ball can be classified as the background area 2200.
- an area classified as the object area 2100 may include at least one pixel image having an object probability value smaller than a preset second reference probability value.
- at least one pixel image having an object probability value equal to or greater than the second reference probability value executes the first classification map acquisition module 430 to divide the input image 1000 into the object area 2100 and the background. It may be an image that can be confirmed to be a pixel image corresponding to the person throwing the ball, beyond the error range that may occur in at least one processor 500 that classifies it into the area 2200.
- At least one pixel image having an object probability value smaller than the second reference probability value is classified as the object area 2100, but may be an image that has the possibility of being a pixel image corresponding to the background of the person throwing the ball.
- the at least one processor 500 executes the first classification map acquisition module 430 to multiply the object pixel probability values of the plurality of pixel images included in the input image 1000 by 255 to obtain 0 to 255.
- a first classification map 2000 having a gray level between 1 and 2 may be obtained.
- the first classification map 2000 may include an object area 2100 multiplied by 255 and a background area 2200 multiplied by 255.
- the object pixel probability value of the plurality of pixel images included in the object area 2100 is greater than the object pixel probability value of the plurality of pixel images included in the background area 2200
- the object area 2100 included in the first classification map 2000 may have a higher grayscale than the background area 2200. Accordingly, the object area 2100 included in the first classification map 2000 may be displayed as a brighter area than the background area 2200.
- the first classification map 2000 may include a noise area 2300 included in the object area 2100. At least one pixel image included in the remaining area of the object area 2100 excluding the noise area 2300 is described as having an object pixel value greater than the second reference probability value.
- the noise area 2300 includes a first noise area 2310 located within the object area 2100 and a second noise area 2320 located at the boundary between the object area 2100 and the background area 2200. can do.
- the first noise area 2310 is located within the object area 2100, but includes at least one pixel image with an object probability value less than the second reference probability value, so that the first noise area 2310 is located within the object area 2100. It can have low gradation.
- the second noise area 2320 includes at least one pixel image with an object probability value smaller than the second reference probability value, has a lower grayscale than the adjacent object area 2100, and has an adjacent background area ( 2200) can have a higher gradation.
- FIG. 6A is a diagram for explaining an operation of acquiring a second classification map according to an embodiment of the present disclosure.
- FIG. 6B is a diagram for explaining a second classification map according to an embodiment of the present disclosure.
- the at least one processor 500 executes the edge detection module 435 to identify the person throwing the ball included in the first classification map 2000.
- the boundary between the corresponding object area 2100 and the background area 2200 corresponding to the background of the person throwing the ball can be detected.
- at least one processor 500 may binarize the grayscale of the first classification map 2000 and detect a boundary so that the object area 2100 and the background area 2200 can be clearly distinguished.
- the binarization process may include classifying pixels as either “1” or “0.”
- “1” may represent the object and “0” may represent the background.
- a boundary can be detected when a pixel with a value of "0" is adjacent to a pixel with a value of "1".
- the at least one processor 500 executes the second classification map acquisition module 440 to pre-process the first classification map 2000 to determine the noise area 2300 included in the first classification map 2000. ) can be obtained by removing the second classification map 3000. In one embodiment, the at least one processor 500 executes the second classification map acquisition module 440 to obtain the noise area 2300 (see FIG. 5B) included in the first classification map 2000 through a morphology operation. The removed second classification map 3000 can be obtained. In addition, the at least one processor 500 executes the second classification map acquisition module 440 to smooth the boundary between the object area 2100 and the background area 2200 included in the first classification map 2000, A second classification map 3000 can be obtained.
- the second classification map 3000 may include a preprocessed object area 3100 and a preprocessed background area 3200.
- the preprocessed object area 3100 is eroded, dilated, opened and closed through erosion and expansion of the object area 2100 of the first classification map 2000. ) can be obtained through operations such as.
- the noise area 2300 (see FIG. 5B) included in the object area 2100 of the first classification map 2000 can be removed.
- the gray level of the preprocessed object area 3100 corresponding to the noise area 2300 of the first classification map 2000 has a gray level of the adjacent preprocessed object area 3100. It may be the same as the gradation of .
- the preprocessed area 3310 corresponding to the first noise area 2310 may have the same gray level as the adjacent preprocessed object area 3100.
- the pre-processed area 3320 corresponding to the second noise area 2320 may have the same gray level as the adjacent pre-processed object area 3100 and may have a higher gray level than the adjacent pre-processed background area 3200.
- the noise area 2300 is not included inside the preprocessed object area 3100, so the noise area 2300 included in the second classification map 3000 At least one pixel image included in the preprocessed object area 3100 may be recognized as a pixel image corresponding to an object, which is a person throwing a ball.
- the second classification map 3000 may be obtained by removing noise included in the boundary included in the first classification map 2000.
- the second classification map 3000 may be obtained by removing the second noise area 2320 included in the first classification map 2000. Therefore, the boundary between the preprocessed object area 3100 corresponding to the person throwing the ball included in the second classification map 3000 and the preprocessed background area 3200 corresponding to the background of the person throwing the ball is the first classification map.
- the boundary between the object area 2100 corresponding to the person throwing the ball included in the map 2000 and the background area 2200 corresponding to the background of the person throwing the ball can be expressed more smoothly.
- FIG. 7A is a diagram for explaining an operation of obtaining a first correction coefficient according to an embodiment of the present disclosure.
- FIG. 7B is a diagram for explaining a first correction coefficient according to an embodiment of the present disclosure.
- the at least one processor 500 executes the distance detection module 460 to classify the input image 1000 based on the second classification map 3000.
- a reference distance which is the distance between the camera 300 (see FIG. 1) that captured the image (FIG. 5A) and the object, the person throwing the ball, can be detected.
- the memory 400 may further store a size-based module 461, a joint-based module 462, and a depth-based module 463. At least one processor 500 executes at least one of the size-based module 461, the joint-based module 462, and the depth-based module 463, so that the camera ( 300) and the reference distance between the object can be detected.
- the memory 400 includes a module composed of instructions or program code for another operation or function that can detect the reference distance between the camera 300 and the object based on the second classification map 3000. It may include more.
- the size of the object areas 3100_1 and 3100_2 included in the second classification maps 3000_1 and 3000_2 may vary.
- the size of the object area included in the input image 1000 (FIG. 5A) acquired through the camera 300 may be inversely proportional to the distance between the camera 300 and the object 110.
- the second classification map 3000_1 when the distance between the camera 300 and the object 110 is the first reference distance 501 is defined as the first sub-classification map 3000_1, and the camera 300 ) and the object 110 when the distance between them is the second reference distance 502, the second classification map 3000_2 may be defined as the second sub-classification map 3000_2.
- the first reference distance 501 may be shorter than the second reference distance 502.
- the object area 3100_1 included in the first sub-classification map 3000_1 is defined as the first sub-object area 3100_1
- the background area 3200_1 included in the first sub-classification map 3000_1 is defined as the first sub-object area 3100_1.
- the object area 3100_2 included in the second sub-classification map 3000_2 is defined as the second sub-object area 3100_2
- the background area 3200_2 included in the second sub-classification map 3000_2 can be defined as the second sub background area 3200_2.
- the size of the first sub-object area 3100_1 may be larger than the size of the second sub-object area 3100_2.
- the size of the specific area of the person throwing the ball (for example, the person's head or the person's hand) in the first sub-object area 3100_1 is determined by the size of the first sub-object area 3100_1 in the second sub-object area 3100_2. ) may be larger than the size of the area corresponding to the specific area of the person throwing the ball included in ).
- the size-based module 461 configures the first sub-object area 3100_1 included in the first sub-classification map 3000_1 according to the difference between the first reference distance 501 and the second reference distance 502. ) and the size of the second sub-object area 3100_2 included in the second sub-classification map 3000_2. It may consist of instructions or program code.
- the joint-based module 462 acquires points corresponding to human joints through kinetic chain analysis in an image of a human shape, and uses the camera 300 based on the obtained points. ) and may be composed of instructions or program code related to an operation or function that can detect the reference distance between the object and the object. In one embodiment, the joint-based module 462 determines the number or Commands or program codes related to an operation or function that can detect a reference distance between the camera 300 and an object based on the position and the number or position difference of at least one point included in the second sub-object area 3100_2 It can be composed of:
- a depth map refers to an image that includes information on the depth value from a reference point to the surface of an object.
- the depth map may include depth information of the object photographed by the camera 300 and the background of the object.
- the depth-based module 463 may be composed of instructions or program code related to an operation or function that can detect the reference distance between the camera 300 and an object based on the acquired depth map.
- the at least one processor 500 executes the first correction coefficient calculation module 470 to calculate a first correction coefficient based on the detected reference distance ( ) can be obtained. In one embodiment, as the length of the detected reference distance becomes longer, the first correction coefficient ( ) can increase in size.
- a first correction coefficient calculated based on the detected reference distance ( ) includes a first sub-correction coefficient and a second sub-correction coefficient.
- At least one processor 500 has a first correction coefficient ( ) Based on the first sub-correction coefficient ( ) and the second sub-correction coefficient ( ) can be calculated.
- the second sub-correction coefficient ( ) is the first correction coefficient ( ) may be the same as
- the longer the length of the reference distance the first sub-correction coefficient ( ) can become smaller.
- the second sub-correction coefficient ( ) can increase in size.
- the first sub-correction coefficient ( ) and the second sub-correction coefficient ( ) may be 1.
- FIG. 8A is a diagram for explaining an operation of obtaining a second correction coefficient and a third correction coefficient according to an embodiment of the present disclosure.
- FIG. 8B is a diagram for explaining a second correction coefficient and a third correction coefficient according to an embodiment of the present disclosure.
- the at least one processor 500 executes the noise area detection module 480 to detect the noise area 2300 included in the first classification map 2000. ) can be detected.
- the first classification map 2000 includes an object area 2100 corresponding to the person throwing the ball and a background area 2200 corresponding to the background of the person throwing the ball.
- the object area 2100 is an area classified as an area containing a plurality of pixel images having an object pixel probability value equal to or greater than a preset first reference probability value.
- At least one processor 500 executes the noise area detection module 480 to detect at least one pixel image having an object pixel probability value smaller than a preset second reference probability value among the object area 2100. An area containing at least one pixel image is detected as a noise area 2300.
- the noise area 2300 is classified as being included in the object area 2100 corresponding to the person throwing the ball, but the noise area detection module 480 is executed to detect the object area 2100 and the background area 2200. Due to limitations in the detection performance of at least one processor 500 that classifies, the area may contain a pixel image that is unclear as to whether it is a pixel image corresponding to the object or a pixel image corresponding to the background of the object.
- the noise area 2300 has been classified by at least one processor 500 as being included in the object area 2100 corresponding to the person throwing the ball, but the distance between the camera 300 and the object is 1 It is farther than the standard distance, and the resolution of the input image 1000 acquired through the camera 300 is low, so it contains a pixel image that is unclear whether it is a pixel image corresponding to the object or a pixel image corresponding to the background of the object. It could be an area.
- At least one processor 500 may execute the noise area detection module 480 to detect the noise area 2300 included in the object area 2100.
- the noise area 2300 may be an area corresponding to a portion of the object with large movement.
- the present disclosure is not limited thereto, and the number, location, and size of the noise areas 2300 may be changed depending on the type of object, movement of the object, etc.
- the at least one processor 500 executes the second correction coefficient calculation module 491 to calculate a second correction coefficient based on the detected noise area 2300 ( ) can be obtained.
- the second correction coefficient ( ) can increase in size.
- the at least one processor 500 determines the ratio of the noise area 2300 to the object area 2100 included in the first classification map 2000, the noise area included in the first classification map 2000 ( A second correction coefficient (2300) based on at least one of the number and the area of the noise area 2300 included in the first classification map 2000 ) can be calculated.
- the second correction coefficient ( ) can increase in size.
- the second correction coefficient ( ) can increase in size.
- the area of the noise area 2300 may be relatively small compared to the area of the object area 2100 included in the first correction map 2000. Even if the noise area 2300 detected by at least one processor 500 increases, the change in the ratio of the noise area 2300 to the object area 2100 included in the first correction map 2000 may not be large. . In this case, even if the detected noise area 2300 increases, the second correction coefficient ( ) The change in size may be small.
- the second correction coefficient ( ) When calculating the size of ), the second correction coefficient ( ) can be changed in size. Therefore, the second correction coefficient ( ) can be changed in size.
- the at least one processor 500 executes the third correction coefficient calculation module 492 to calculate a third correction coefficient based on the detected noise area 2300 ( ) can be obtained. In one embodiment, the at least one processor 500 provides a third correction coefficient based on the object pixel probability value of at least one pixel image included in the noise area 2300. ) can be calculated. In one embodiment, as the object pixel probability value of at least one pixel image included in the noise area 2300 increases, the third correction coefficient ( ) can become smaller. The larger the object pixel probability value of at least one pixel image included in the noise area 2300, the more likely the corresponding pixel image is to be an image corresponding to a person throwing a ball, which is the object image 5000 (see FIG. 1). there is.
- Figure 9 is a diagram for explaining the operation of obtaining a final classification map according to an embodiment of the present disclosure.
- the at least one processor 500 executes the final classification map acquisition module 450 to obtain a final classification map based on the first classification map 2000 and the second classification map 3000. You can obtain (4000). In one embodiment, the at least one processor 500 executes the final classification map acquisition module 450 to obtain a first correction coefficient ( ), second correction coefficient ( ), third correction coefficient ( ), the final classification map 4000 can be obtained based on the first classification map 2000 and the second classification map 3000.
- the final classification map acquisition module 450 may be composed of instructions or program code related to an operation or function of acquiring the final classification map 4000 using the equation below.
- ( ) means the first sub-correction coefficient
- the second sub-correction coefficient means the second correction coefficient
- the at least one processor 500 executes the final classification map acquisition module 450 to obtain a first classification map 2000 and a first classification map 2000 based on the input image 1000.
- the final classification map 4000 is obtained by adding the second classification map 3000 obtained by preprocessing, and the object image 5000 included in the input image 1000 based on the obtained final classification map 4000 (FIG. 1) Reference) and object background images can be classified.
- the at least one processor 500 obtains the final classification map 4000 based on the first classification map 2000 and the second classification map 3000, the object image 5000 included in the input image 1000 And the accuracy of classifying object background images can be improved.
- the first classification map 2000 and the second classification map included in the final classification map 4000 are used. Determining the ratio of (3000) will be explained.
- the at least one processor 500 executes the final classification map acquisition module 450 to determine the first sub-correction coefficient ( The first classification map (2000) multiplied by ) and the second sub-correction coefficient ( ) can be obtained based on the second classification map 3000 multiplied by the final classification map 4000.
- the first sub-correction coefficient ( ) the ratio of the first classification map 2000 can be increased when obtaining the final classification map 4000.
- the second sub-correction coefficient ( ) can be reduced in size, thereby lowering the ratio of the second classification map 3000 in obtaining the final classification map 4000.
- the first classification map 2000 is a map obtained by classifying the object area 2100 and the background area 2200 based on the input image 1000.
- the resolution of the input image 1000 acquired through the camera 300 increases, so as to obtain the first classification map 2000.
- the accuracy of classifying the object area 2100 and the background area 2200 based on the input image 1000 may be high.
- the noise area 2300 included in the first classification map 2000 may be reduced. Therefore, as the length of the reference distance between the camera 300 and the object 110 becomes shorter, the ratio of the first classification map 2000 included in the final classification map 4000 increases, and the ratio of the second classification map 3000 is increased. By lowering the ratio, the accuracy of classifying the object image 5000 and the object background image included in the input image 1000 can be increased.
- the second classification map 3000 is a map obtained by preprocessing the first classification map 2000 and removing the noise area 2300 included in the first classification map 2000.
- the resolution of the input image 1000 acquired through the camera 300 decreases, thereby obtaining the first classification map 2000. For this reason, the accuracy of classifying the object area 2100 and the background area 2200 based on the input image 1000 may be lowered.
- the noise area 2300 included in the first classification map 2000 may increase. Therefore, as the length of the reference distance between the camera 300 and the object 110 increases, the ratio of the first classification map 2000 included in the final classification map 4000 is lowered, and the ratio of the second classification map 3000 is lowered.
- the accuracy of classifying the object image 5000 and the object background image included in the input image 1000 can be increased.
- the at least one processor 500 executes the final classification map acquisition module 450 to obtain a second correction coefficient ( ) can be obtained based on the second classification map 3000 multiplied by the final classification map 4000.
- the ratio of the second classification map 3000 can be increased when obtaining the final classification map 4000.
- the second classification map 3000 preprocesses the first classification map 2000 to remove the noise area 2300 included in the first classification map 2000.
- This is the map obtained.
- the first classification map may be classified due to limitations in the detection performance of at least one processor 500 that classifies the object area 2100 and the background area 2200 included in the input image 1000 or the fast movement of the object. If the noise area 2300 included in (2000) increases, the accuracy of classifying the object area 2100 and the background area 2200 based on the input image 1000 may be low. In this case, by lowering the ratio of the first classification map 2000 included in the final classification map 4000 and increasing the ratio of the second classification map 3000, the object image 5000 and object included in the input image 1000 The accuracy of classifying background images can be improved.
- the accuracy of classifying the object area 2100 and the background area 2200 based on the input image 1000 can be high.
- the ratio of the first classification map 2000 included in the final classification map 4000 is increased, and the ratio of the second classification map 3000 is reduced, so that the object image 5000 and the object included in the input image 1000
- the accuracy of classifying background images can be improved.
- the at least one processor 500 executes the final classification map acquisition module 450 to obtain a third correction coefficient ( ) can be obtained based on the second classification map 3000 multiplied by the final classification map 4000. In one embodiment, at least one processor 500 provides a second correction coefficient ( ) and the third correction coefficient ( ) can be obtained based on the second classification map 3000 multiplied by the final classification map 4000. In one embodiment, as the object pixel probability value of at least one pixel image included in the noise area 2300 increases, the third correction coefficient ( ) can be reduced in size, thereby lowering the ratio of the second classification map 3000 in obtaining the final classification map 4000.
- the greater the object pixel probability value of at least one pixel image included in the noise area 2300 the greater the likelihood that the at least one pixel image included in the noise area 2300 is an image corresponding to the object image. . Therefore, even if the first classification map 2000 includes the noise area 2300, the object area 2100 and the background area 2200 are divided based on the input image 1000 to obtain the first classification map 2000. The accuracy of the classification operation can be high. In this case, even if the first classification map 2000 includes a noise area 2300, the object included in the input image 1000 is based on the final classification map 4000 obtained based on the first classification map 2000. The accuracy of classifying the image 5000 and the object background image may be high.
- the noise area 2300 generated by the movement of the object, etc. is overcompensated, so that the noise area 2300 included in the input image 1000 is increased.
- the accuracy of classifying the object image 5000 and the object background image may be lowered. Therefore, as the object pixel probability value of at least one pixel image included in the noise area 2300 increases, the ratio of the first classification map 2000 included in the final classification map 4000 increases, and the ratio of the second classification map 3000 is increased. ), the accuracy of classifying the object image 5000 and the object background image included in the input image 1000 can be increased.
- FIG. 10 is a diagram for explaining the effects of an electronic device and a method of operating the electronic device according to an embodiment of the present disclosure.
- the electronic device 100 and the operating method of the electronic device 100 include final classification based on an input image 1000 obtained by photographing an object and its background. You can obtain map (4000).
- the final classification map 4000 is divided into the noise area 2300 included in the first classification map 2000 according to the distance between the camera 300 and the object, the movement of the object, or the performance of the electronic device 100. It can be obtained by adjusting the ratio of the first classification map 2000 and the second classification map 3000 based on the ratio of the first classification map 2000 and the second classification map 3000.
- the electronic device 100 may classify the object image 5000 included in the input image 1000 based on the final classification map 4000.
- the classified object image 5000 may be an image corresponding to an object area included in the final classification map 4000.
- the present disclosure is not limited thereto, and the electronic device that classifies the object image 5000 included in the input image 1000 based on the final classification map 4000 and the electronic device that obtains the final classification map 4000 It may also be a separate electronic device.
- the electronic device 100 according to the present disclosure acquires a final classification map 4000 based on the input image 1000, and applies the obtained final classification map 4000 to the input image 1000 for final classification. It may also be provided as a separate electronic device that classifies the object image 5000 by applying the map 4000.
- the electronic device 100 may acquire the background image 6000.
- the background image 6000 may be an image containing a different background from the object background image included in the input image 1000.
- the electronic device 100 generates a composite image 7000 by combining an object image 5000 and a background image 6000 classified by applying the final classification map 4000 to the input image 1000. You can. Accordingly, the electronic device 100 can synthesize a desired background other than the object background image captured through the camera 300 with the object 110.
- a memory 400 that stores at least one instruction (instruction) and at least one processor (500) that executes the at least one instruction stored in the memory 400 ) provides an electronic device 100 including.
- at least one processor 500 may obtain an input image 1000 of an object and a background of the object through the camera 300.
- At least one processor 500 classifies the acquired input image 1000 into an object area 2100 corresponding to the object and a background area 2200 corresponding to the background of the object to obtain a first classification map 2000.
- At least one processor 500 may preprocess the first classification map 2000 to obtain a second classification map 3000 from which the noise area 2300 included in the first classification map 2000 is removed. there is.
- At least one processor 500 uses the distance information from the camera 300 to the object and the noise area 2300 to generate information corresponding to the object based on the first classification map 2000 and the second classification map 3000.
- An object image 5000 can be obtained.
- the at least one processor 500 uses the distance information from the camera 300 to the object and the noise area 2300 to create the first classification map 2000 and the second classification map 3000. Based on this, the final classification map 4000 can be obtained. At least one processor 500 may obtain an object image 5000 by applying the final classification map 4000 to the input image 1000.
- the second classification map 3000 may be a classification map obtained by performing a morphology operation on the first classification map 2000.
- At least one processor 500 may calculate a first correction coefficient based on distance information from the camera 300 to the object.
- the first correction coefficient may include a first sub-correction coefficient multiplied by the first classification map 2000 and a second sub-correction coefficient multiplied by the second classification map 3000 in obtaining the final classification map 4000. You can.
- the size of the first sub-correction coefficient may decrease, and as the length from the camera to the object increases, the second sub-correction coefficient may increase.
- At least one processor 500 acquires the object image 5000 based on the first classification map 2000 multiplied by the first sub-correction coefficient and the second classification map 3000 multiplied by the second sub-correction coefficient. You can.
- the sum of the first sub-correction coefficient and the second sub-correction coefficient may be 1.
- At least one processor 500 may calculate a second correction coefficient based on the noise area 2300. As the ratio of the noise area 2300 to the object area 2100 included in the first classification map 2000 increases, the size of the second correction coefficient may increase. At least one processor 500 may acquire the object image 5000 based on the second classification map 3000 multiplied by the second correction coefficient.
- the second correction coefficient may be calculated based on at least one of the ratio of the noise area 2300 to the object area 2100, the number of noise areas 2300, and the area of the noise area 2300.
- the input image 1000 may include multiple pixel images.
- At least one processor 500 may calculate a probability value that each of the plurality of pixel images corresponds to an object based on the input image 1000.
- At least one processor 500 divides the plurality of pixel images into the object area 2100 and the background area 2200 based on the arrangement of the plurality of pixel images and the result of comparing the preset first reference probability value and the calculated probability value.
- the first classification map (2000) can be obtained by classifying.
- the at least one processor 500 obtains the first classification map 2000 and then selects a preset second reference probability value and at least one of the plurality of pixel images included in the classified object area 2100.
- the noise area 2300 included in the object area 2100 can be classified based on the result of comparing the probability value that one pixel image corresponds to an object.
- the first and second reference probability values may be different probability values.
- the at least one processor 500 may calculate a third correction coefficient based on the first correction coefficient, the second correction coefficient, and the probability value that at least one pixel image included in the noise area 2300 corresponds to an object.
- An object image 5000 may be obtained based on the first classification map 2000 and the second classification map 3000 using the correction coefficient.
- the third correction coefficient may be inversely proportional to the probability that at least one pixel image included in the noise area 2300 corresponds to an object.
- At least one processor 500 may acquire the object image 5000 based on the second classification map 3000 multiplied by the third correction coefficient.
- an embodiment of the present disclosure provides a method of operating the electronic device 100.
- the method of operating the electronic device 100 may include acquiring an input image 1000 of an object and a background of the object through the camera 300 ( S100 ).
- the operating method of the electronic device 100 is to obtain a first classification map 2000 by classifying the acquired input image 1000 into an object area 2100 corresponding to the object and a background area 2200 corresponding to the background of the object. It may include a step (S200).
- the operating method of the electronic device 100 includes preprocessing the first classification map 2000 to obtain a second classification map 3000 from which the noise area 2300 included in the first classification map 2000 is removed. It may include step S300.
- the method of operating the electronic device 100 corresponds to an object based on the first classification map 2000 and the second classification map 3000 using distance information from the camera 300 to the object and the noise area 2300. It may include the step of acquiring an object image 5000.
- the method of operating the electronic device 100 uses the distance information from the camera 300 to the object and the noise area 2300 to create a first classification map 2000 and a second classification map 3000. It may further include obtaining a final classification map 4000 based on . In one embodiment, in the step of acquiring the object image 5000 (S500), the object image 5000 may be acquired by applying the final classification map 4000 to the input image 1000.
- the first correction coefficient calculated based on the distance information from the camera 300 to the object is a first sub-correction multiplied by the first classification map 2000 when acquiring the object image 5000. It may include a second sub-correction coefficient multiplied by the coefficient and the second classification map 3000. As the length from the camera to the object increases, the first sub-correction coefficient may decrease, and as the length from the camera to the object increases, the second sub-correction coefficient may increase.
- the step (S500) of acquiring the object image 5000 the object image is obtained based on the first classification map 2000 multiplied by the first sub-correction coefficient and the second classification map 3000 multiplied by the second sub-correction coefficient. You can obtain (5000).
- the size of the second correction coefficient calculated based on the noise area 2300 increases. You can.
- the object image 5000 may be acquired based on the second classification map 3000 multiplied by the second correction coefficient.
- the second correction coefficient may be calculated based on at least one of the ratio of the noise area 2300 to the object area 2100, the number of noise areas 2300, and the area of the noise area 2300.
- the input image 1000 may include multiple pixel images.
- the method of operating the electronic device 100 may further include calculating a probability value that each of the plurality of pixel images corresponds to an object based on the input image 1000.
- the step of acquiring the first classification map (S200) the plurality of pixel images are divided into the object area 2100 and the object area 2100 based on the arrangement of the plurality of pixel images and the result of comparing the preset first reference probability value and the calculated probability value.
- the first classification map 2000 can be obtained by classifying into the background area 2200.
- the method of operating the electronic device 100 includes, after obtaining the first classification map 2000, a preset second reference probability value and the classified object area 2100 among the plurality of pixel images.
- the method may further include classifying the noise area 2300 included in the object area 2100 based on a result of comparing probability values that at least one pixel image included in corresponds to an object.
- the first and second reference probability values may be different probability values.
- the first correction coefficient, the second correction coefficient, and the probability value that at least one pixel image included in the noise area 2300 correspond to the object may be acquired based on the third correction coefficient, the first classification map 2000, and the second classification map 3000 calculated based on .
- the third correction coefficient may be inversely proportional to the probability that at least one image included in the noise area 2300 corresponds to an object.
- the object image 5000 may be acquired based on the second classification map 3000 multiplied by the third correction coefficient.
- a computer-readable recording medium on which a program for performing at least one method of operating the disclosed electronic device 100 on a computer may be provided.
- the operating method performed by the electronic device 100 described in this disclosure may be implemented with hardware components, software components, and/or a combination of hardware components and software components.
- a program can be executed by any system that can execute computer-readable instructions.
- 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.
- Computer-readable recording media include, for example, magnetic storage media (e.g., read-only memory (ROM), random-access memory (RAM), floppy disk, hard disk, etc.) and optical read media (e.g., CD-ROM). (CD-ROM), DVD (Digital Versatile Disc), etc.
- the computer-readable recording medium is distributed among computer systems connected to a network, so that computer-readable code can be stored and executed in a distributed manner.
- the recording medium can be read by a computer, stored in memory, and executed by a processor.
- Computer-readable storage media may be provided in the form of non-transitory storage media.
- 'non-transitory storage medium' only means that it is a tangible device and does not contain signals (e.g. electromagnetic waves). This term refers to cases where data is semi-permanently stored in a storage medium and temporary storage media. It does not distinguish between cases where it is stored as .
- a 'non-transitory storage medium' may include a buffer where data is temporarily stored.
- Computer program products are commodities and can be traded between sellers and buyers.
- a computer program product may include a software program and a computer-readable storage medium on which the software program is stored.
- a computer program product may be a product in the form of a software program (e.g., a downloadable application) distributed electronically by the manufacturer of the electronic device 100 or through an electronic market (e.g., Samsung Galaxy Store). ) may include.
- a software program e.g., a downloadable application
- an electronic market e.g., Samsung Galaxy Store
- the storage medium may be a storage medium of a server of the manufacturer of the electronic device 100, a server of an electronic market, or a relay server that temporarily stores a software program.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Image Analysis (AREA)
Abstract
본 개시는 적어도 하나의 명령어(instruction)를 저장하는 메모리 및 메모리에 저장된 적어도 하나의 명령어를 실행하는 적어도 하나의 프로세서를 포함하고, 적어도 하나의 프로세서는 카메라를 통하여, 객체 및 객체의 배경을 캡쳐한 입력 영상을 획득하고, 획득한 입력 영상의 제1 부분을 객체에 대응되는 객체 영역으로 분류하고, 입력 영상의 제2 부분을 객체의 배경에 대응되는 배경 영으로 분류하여 제1 분류 맵을 획득하고, 제1 분류 맵을 전처리하여 제1 분류 맵에 포함된 노이즈(Noise) 영역을 제거한 제2 분류 맵을 획득하고, 카메라로부터 객체까지의 거리 정보 및 노이즈 영역을 이용하여, 제1 분류 맵 및 제2 분류 맵에 기초하여 객체에 대응되는 객체 영상을 획득하는 전자 장치 및 전자 장치의 동작 방법을 포함한다.
Description
본 개시는 영상에 포함된 객체 영역과 배경 영역을 분류하기 위한 전자 장치 및 전자 장치의 동작 방법에 관한 것이다.
컴퓨터 비전 기술의 발전에 따라, 영상 내의 객체 영역과 배경 영역을 분류한 후, 영상 내의 배경 영역을 가상의 그래픽 또는 불투명 처리가 된 화면으로 대체하는 배경 필터 기술이 개발되고 있다.
이러한 배경 필터 기술은 영상 통화, 카메라 촬영 모드 또는 메타버스 환경 등의 가상 환경에서 활용될 수 있다.
일 예로, 배경 필터 기술을 영상 통화 시에 활용하여, 통화 시에 통화 장소인 배경 영역을 다른 배경 영상으로 대체하여 개인의 프라이버시(Privacy) 침해를 방지하거나, 원하는 장소를 배경 영역으로 설정할 수 있다.
그러나, 현재의 배경 필터 기술은 객체와 배경을 충분히 정확하게 구분하지 못한다. 또한, 노이즈를 적절히 제거하지 않으면, 객체와 배경을 구분하기 어렵다.
본 개시의 일 실시예에 따른 전자 장치는 적어도 하나의 명령어(instruction)를 저장하는 메모리 및 상기 메모리에 저장된 상기 적어도 하나의 명령어를 실행하는 적어도 하나의 프로세서를 포함할 수 있다. 본 개시의 일 실시예에서, 적어도 하나의 프로세서는 적어도 하나의 명령어를 실행함으로써 카메라를 통하여, 객체 및 객체의 배경을 촬영한 입력 영상을 획득할 수 있다. 적어도 하나의 프로세서는 적어도 하나의 명령어를 실행함으로써 획득한 입력 영상을 객체에 대응되는 객체 영역과 객체의 배경에 대응되는 배경 영역으로 분류하여 제1 분류 맵을 획득할 수 있다. 적어도 하나의 프로세서는 적어도 하나의 명령어를 실행함으로써 제1 분류 맵을 전처리하여, 제1 분류 맵에 포함된 노이즈(Noise) 영역을 제거한 제2 분류 맵을 획득할 수 있다. 적어도 하나의 프로세서는 적어도 하나의 명령어를 실행함으로써 카메라(300)로부터 객체까지의 거리 정보 및 노이즈 영역을 이용하여, 제1 분류 맵 및 제2 분류 맵에 기초하여 객체에 대응되는 객체 영상을 획득할 수 있다.
본 개시의 일 실시예는, 전자 장치의 동작 방법을 제공한다. 본 개시의 일 실시예에서, 전자 장치의 동작 방법은 카메라를 통하여, 객체 및 객체의 배경을 촬영한 입력 영상을 획득하는 단계를 포함할 수 있다. 전자 장치의 동작 방법은 획득한 입력 영상을 객체에 대응되는 객체 영역과 객체의 배경에 대응되는 배경 영역으로 분류하여 제1 분류 맵을 획득하는 단계를 포함할 수 있다. 전자 장치의 동작 방법은 제1 분류 맵을 전처리하여, 제1 분류 맵에 포함된 노이즈(Noise) 영역을 제거한 제2 분류 맵을 획득하는 단계를 포함할 수 있다. 전자 장치의 동작 방법은 카메라로부터 객체까지의 거리 정보 및 노이즈 영역을 이용하여, 제1 분류 맵 및 제2 분류 맵에 기초하여 객체에 대응되는 객체 영상을 획득하는 단계를 포함할 수 있다.
본 개시의 일 실시예로, 개시된 동작 방법의 실시예 중 적어도 하나의 방법을 컴퓨터에서 수행하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체를 제공할 수 있다.
본 개시는, 다음의 자세한 설명과 그에 수반되는 도면들의 결합으로 이해될 수 있으며, 참조 번호(reference numerals)들은 구조적 구성요소(structural elements)를 의미한다.
도 1은 본 개시의 일 실시예에 따른 전자 장치를 설명하기 위한 도면이다.
도 2는 본 개시의 일 실시예에 따른 전자 장치를 설명하기 위한 블록도이다.
도 3은 본 개시의 일 실시예에 따른 전자 장치의 동작을 설명하기 위한 순서도이다.
도 4는 본 개시의 일 실시예에 따른 전자 장치의 동작을 설명하기 위한 도면이다.
도 5a는 본 개시의 일 실시예에 따른 제1 분류 맵을 획득하는 동작을 설명하기 위한 도면이다.
도 5b는 본 개시의 일 실시예에 따른 획득된 제1 분류 맵을 설명하기 위한 도면이다.
도 6a는 본 개시의 일 실시예에 따른 제2 분류 맵을 획득하는 동작을 설명하기 위한 도면이다.
도 6b는 본 개시의 일 실시예에 따른 제2 분류 맵을 설명하기 위한 도면이다.
도 7a는 본 개시의 일 실시예에 따른 제1 보정 계수를 획득하는 동작을 설명하기 위한 도면이다.
도 7b는 본 개시의 일 실시예에 따른 제1 보정 계수를 설명하기 위한 도면이다.
도 8a는 본 개시의 일 실시예에 따른 제2 보정 계수 및 제3 보정 계수를 획득하는 동작을 설명하기 위한 도면이다.
도 8b는 본 개시의 일 실시예에 따른 제2 보정 계수 및 제3 보정 계수를 설명하기 위한 도면이다.
도 9는 본 개시의 일 실시예에 따른 최종 분류 맵을 획득하는 동작을 설명하기 위한 도면이다.
도 10은 본 개시의 일 실시예에 따른 전자 장치 및 전자 장치의 동작 방법의 효과를 설명하기 위한 도면이다.
본 개시에서, "a, b 또는 c 중 적어도 하나" 표현은 " a", " b", " c", "a 및 b", "a 및 c", "b 및 c", "a, b 및 c 모두", 혹은 그 변형들을 지칭할 수 있다.
본 개시에서 사용되는 용어에 대해 간략히 설명하고, 본 개시의 일 실시예에 대해 구체적으로 설명하기로 한다.
본 개시에서 사용되는 용어는 본 개시의 일 실시예에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 본 개시의 실시예의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다.
본 개시 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 본 개시에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
본 개시에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)", "~하는 능력을 가지는(having the capacity to)", "~하도록 설계된(designed to)", "~하도록 변경된(adapted to)", "~하도록 만들어진(made to)", 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 시스템"이라는 표현은, 그 시스템이 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
또한, 본 개시에서 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시의 일 실시예는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 개시의 일 실시예를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 본 개시 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
이하에서는 도면을 참조하여 본 개시의 실시예들을 상세하게 설명한다.
도 1은 본 개시의 일 실시예에 따른 전자 장치를 설명하기 위한 도면이다.
도 1을 참조하면, 본 개시의 일 실시예로, 전자 장치(100)는 표시 패널(200) 및 카메라(300)를 포함할 수 있다. 일 실시예에서, 카메라(300)는 전자 장치(100) 앞에 위치한 사용자(110) 및 사용자(110)의 배경을 촬영(photograph) 하거나 캡쳐(capture) 할 수 있다. 이하, 설명의 편의를 위하여, 카메라(300)가 촬영하는 사용자(110)를 객체(Object)라고 정의하고, 사용자(110)의 배경을 객체의 배경이라고 정의한다. 전자 장치(100)는 카메라(300)를 통하여 촬영된 객체(110) 및 객체(110)의 배경을 포함하는 입력 영상(1000)을 획득할 수 있다. 일 실시예에서, 도 1에는 객체(110)가 공을 던지고 있는 사람으로 도시되었으나, 본 개시는 이에 제한되지 않는다. 객체(110)는 전자 장치(100)를 사용하고 있는 사용자일 수도 있다. 전자 장치(100)를 사용하는 적어도 하나의 사용자가 존재할 경우, 카메라(300)는 적어도 하나의 사용자 및 적어도 하나의 사용자의 배경을 촬영하거나 캡쳐하여 입력 영상(1000)을 획득할 수도 있다. 또한, 카메라(300)는 전자 장치(100)를 전자 장치(100) 앞에 위치한 물체 및 물체의 배경을 촬영할 수도 있다. 이 경우, 객체는 전자 장치(100) 앞에 배치된 물체일 수 있다. 카메라(300)는 물체의 정지 이미지를 촬영하거나, 비디오를 구성하는 이미지의 시퀀스를 캡처할 수 있다.
다만, 본 개시는 이에 제한되지 않고, 카메라(300)는 전자 장치(100)에 포함되지 않을 수도 있다. 전자 장치(100)는 별도의 전자 장치에 포함된 카메라를 통하여 촬영된, 객체와 객체의 배경을 포함하는 입력 영상(1000)을 제공받을 수도 있다. 이 경우, 전자 장치(100)는 제공 받은 입력 영상(1000)에 기초하여 객체 영상(5000)을 획득할 수도 있다. 일 실시예에서, 전자 장치(100)를 사용하는 사용자(110)와, 카메라(300)를 통하여 획득된 입력 영상(1000)에 포함된 객체는 상이할 수 있다.
이하, 설명의 편의를 위하여, 입력 영상(1000)은 전자 장치(100)에 포함된 카메라(300)를 통하여 촬영되어 획득된 영상으로 설명한다. 다만, 당업자가 이해할 수 있는 바와 같이, 카메라(300)는 전자 장치(100)와 분리될 수도 있다.
일 실시예에서, 전자 장치(100)는 획득한 입력 영상(1000)에 기초하여, 입력 영상(1000)을 객체에 대응되는 객체 영역(2100) 및 객체의 배경에 대응되는 배경 영역(2200)로 분류한 제1 분류 맵(2000)을 획득할 수 있다.
일 실시예에서, 전자 장치(100)는 제1 분류 맵(2000)을 전처리하여, 제1 분류 맵(2000)에 포함된 노이즈(Noise) 영역(2300)을 제거한 제2 분류 맵(3000)을 획득할 수 있다. 제2 분류 맵(3000)은 제1 분류 맵(2000)과 비교하여 객체 영역(2100) 내에 포함된 노이즈 영역(2300)을 제거하고, 객체 영역(2100)과 배경 영역(2200) 사이의 경계를 평활화(Smoothing) 하여 획득될 수 있다.
일 실시예에서, 전자 장치(100)는 카메라(300)로부터 객체(110)까지의 거리 정보 및 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 이용하여, 제1 분류 맵(2000)과 제2 분류 맵(3000)에 기초하여 객체(110)에 대응되는 객체 영상(5000)을 획득할 수 있다. 전자 장치(100)는 카메라(300)로부터 객체(110)까지의 거리 정보 및 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 이용하여, 제1 분류 맵(2000)과 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득하고, 획득한 최종 분류 맵(4000)을 입력 영상(1000)에 적용하여 객체 영상(5000)을 획득할 수 있다. 최종 분류 맵(4000)은 제1 분류 맵(2000) 및 제2 분류 맵(3000)과 비교하여, 객체(110)에 대응되는 객체 영역과 객체의 배경에 대응되는 배경 영역을 분류하는 동작의 정확도가 높을 수 있다. 카메라(300)와 객체(110)까지의 거리 정보는 카메라(300) 또는 전자 장치(100)에 의하여 추정될 수 있다. 거리는 객체(110)의 이미지를 캡쳐할 때의 카메라의 렌즈의 줌 세기와 이미지 내에서의 객체(110)의 크기에 기초하여 추정될 수 있다.
일 실시예로, 전자 장치(100)는 카메라(300)를 통하여 기 획득된 객체와 객체의 배경을 포함하는 입력 영상(1000)에 기초하여 최종 분류 맵(4000)을 획득하고, 획득된 최종 분류 맵(4000)을 입력 영상(1000)에 적용하여 획득한 객체 영상(5000)을 표시 패널(200)에 표시하여 전자 장치(100)의 사용자에게 제공할 수 있다. 또한, 일 실시예로, 전자 장치(100)는 획득한 객체 영상(5000)을 객체의 배경 영상이 아닌, 다른 배경 영상(6000, 도 10 참조)와 합성한 합성 영상(7000)을 전자 장치(100)의 사용자에게 제공할 수도 있다.
일 실시예로, 전자 장치(100)는 획득한 최종 분류 맵(4000), 객체 영상(5000) 또는 합성 영상(7000) 중 적어도 하나의 영상을 별개의 전자 장치에 제공할 수도 있다.
이하, 하기의 도면들에서는, 전자 장치(100)가 입력 영상(1000)으로부터 객체 영상(5000)을 획득하기 위하여, 제1 분류 맵(2000), 제2 분류 맵(3000) 및 최종 분류 맵(4000)을 획득하는 것을 설명하도록 한다.
도 2는 본 개시의 일 실시예에 따른 전자 장치를 설명하기 위한 블록도이다.
도 2에 도시된 바와 같이, 일 실시예에서, 전자 장치(100)는 표시 패널(200), 카메라(300), 메모리(400), 프로세서(500) 및 통신 인터페이스(600)를 포함할 수 있다. 그러나, 도 2에 도시된 구성 요소가 모두 필수 구성 요소인 것은 아니다. 도 2에 도시된 구성 요소보다 많은 구성 요소에 의해 전자 장치(100)가 구현될 수도 있고, 그보다 적은 구성 요소에 의해서도 전자 장치(100)는 구현될 수 있다. 표시 패널(200), 카메라(300), 메모리(400), 프로세서(500) 및 통신 인터페이스(600)는 각각 전기적 및/또는 물리적으로 서로 연결될 수 있다. 이하, 도 1에서 설명한 구성과 동일한 구성에 대하여는 동일한 도면 부호를 부여하고, 설명은 생략하도록 한다.
일 실시예에서, 표시 패널(200)은 액정 표시(liquid crystal) 디스플레이, 플라즈마(plasma) 디스플레이, 유기 발광 다이오드(organic light emitting diodes) 디스플레이, 무기 발광 다이오드(inorganic light emitting diodes) 디스플레이 중 어느 하나의 디스플레이를 포함할 수 있다. 다만, 본 개시는 이에 제한되지 않고, 표시 패널(200)은 사용자(110)에게 객체 영상(5000, 도 1 참조)을 제공할 수 있는 다른 종류의 디스플레이를 포함할 수 있다.
일 실시예에서, 카메라(300)는 RGB 카메라, IR(Infrared Ray) 카메라 및 RGB-Depth 카메라를 포함할 수 있다. 다만, 본 개시는 이에 한정되지 않고, 카메라(300)는 사용자(110) 및 사용자(110)의 배경을 촬영할 수 있는 다른 종류의 카메라, 센서 등을 포함할 수 있다. 일 실시예에서, 카메라(300)는 전자 장치(100)와 분리될 수 있으며, 카메라(300)는 동작하지 않을 때에는 전자 장치(100)와 분리되어 있다가, 동작 시에 전자 장치(100)와 연결될 수 있다. 일 실시예로, 카메라(300)는 입력 영상(1000)을 획득하기 위하여 객체(110) 및 객체의 배경을 촬영할 때 전자 장치(100)와 전기적 및/또는 물리적으로 서로 연결될 수 있다. 또한, 일 실시예로, 전자 장치(100)는 카메라(300)를 포함하지 않을 수도 있다. 전자 장치(100)는 카메라(300)를 포함하지 않고, 별도의 전자 장치에 포함된 카메라로부터 촬영된 입력 영상(1000)을 획득할 수도 있다. 일 실시예에서, 전자 장치(100)는 전자 장치(100)로부터 원격에 위치하는 카메라에 의하여 캡쳐된 입력 영상(1000)을 수신할 수도 있다.
일 실시예에서, 메모리(400)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), Mask ROM, Flash ROM 등), 하드 디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD) 중 적어도 하나를 포함할 수 있다. 메모리(400)에는 전자 장치(100)의 기능 또는 동작들을 수행하기 위한 명령어들 또는 프로그램 코드가 저장될 수 있다. 메모리(400)에 저장되는 명령어들, 알고리즘, 데이터 구조, 프로그램 코드 및 애플리케이션 프로그램은 예를 들어, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다.
일 실시예에서, 메모리(400)에는 전자 장치(100)를 통하여 획득한 입력 영상(1000, 도 1 참조)에 기초하여 최종 분류 맵(4000, 도 1 참조)를 획득하는데 이용될 수 있는 다양한 종류의 모듈들이 저장될 수 있다. 메모리(400)에는 영상 획득 모듈(410), 확률 계산 모듈(420), 제1 분류 맵 획득 모듈(430), 제2 분류 맵 획득 모듈(440) 및 최종 분류 맵 획득 모듈(450)이 저장될 수 있다. 그러나, 도 2에 도시된 모듈 모두가 필수 모듈인 것은 아니다. 메모리(400)에는 도 2에 도시된 모듈보다 더 많은 모듈들이 저장될 수도 있고, 그보다 적은 모듈들이 저장될 수도 있다. 일 실시예에서, 메모리(400)에는 입력 영상(1000)에 최종 분류 맵(4000)을 적용하여 객체 영상(5000, 도 1 참조)을 획득하는 동작을 수행하기 위한 모듈이 더 저장될 수도 있다. 일 실시예에서, 메모리(400)에는 도 4에서 후술할 경계 검출 모듈(435), 영역 분할 모듈(445), 제1 보정 계수 계산 모듈(470), 제2 보정 계수 계산 모듈(491), 제3 보정 계수 계산 모듈(492)이 더 저장될 수도 있다.
메모리(400)에 포함되는 '모듈'은 적어도 하나의 프로세서(500)에 의해 수행되는 기능이나 동작을 처리하는 단위를 의미할 수 있다. 메모리(400)에 포함되는 '모듈'은 명령어들(instructions), 알고리즘, 데이터 구조, 또는 프로그램 코드와 같은 소프트웨어로 구현될 수 있다.
일 실시예에서, 영상 획득 모듈(410)은 카메라(300)를 통하여 객체 및 객체의 배경을 촬영하여 입력 영상(1000)을 획득하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다. 다만, 본 개시는 이에 제한되지 않고, 영상 획득 모듈(410)은 별도의 전자 장치로부터 객체 및 객체의 배경을 촬영한 입력 영상을 획득하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수도 있다.
일 실시예에서, 획득한 입력 영상(1000)은 복수의 화소 영상들을 포함할 수 있다. 복수의 화소 영상들 각각은 입력 영상(1000)을 구성하는 픽셀(Pixel)에 대응될 수 있다. 픽셀은 입력 영상(1000)을 구성하는 단위 영상일 수 있다. 일 실시예에서, 확률 계산 모듈(420)은 획득한 입력 영상(1000)에 기초하여, 복수의 화소 영상들 각각이 객체 또는 객체의 배경에 대응될 확률을 계산하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다. 일 실시예에서, 확률 계산 모듈(420)은, 입력 영상(1000)에 포함된 복수의 화소 영상들 각각이 객체에 대응되는 화소 영상일 확률 및 객체의 배경에 대응되는 화소 영상일 확률을 계산하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다.
일 실시예에서, 확률 계산 모듈(420)은 인공 지능(Artificial Intelligence) 모델을 포함할 수 있다. 일 실시예에서, 확률 계산 모듈(340)에 포함된 인공 지능 모델은 입력 영상(1000)에 기초하여, 입력 영상(1000)에 포함된 복수의 화소 영상들 각각이 객체 또는 객체의 배경에 대응되는 화소 영상일 확률을 계산하도록 훈련된(trained) 인공 지능 모델일 수 있다.
일 실시예에서, 확률 계산 모듈(420)에 포함된 인공 지능 모델은 머신 러닝(Machine Learning) 또는 딥 러닝(Deep Learning) 모델을 포함할 수 있다. 일 실시예에서, 확률 계산 모듈(420)에 포함된 인공 지능 모델은 복수의 신경망 레이어들을 포함할 수 있다. 각각의 신경망 레이어는 복수의 가중치(Weight Values)을 가지고 있으며, 이전(previous) 신경망 레이어의 연산 결과와 복수의 가중치의 연산을 통해 현재(present) 신경망 레이어의 연산을 수행할 수 있다. 인공 지능 모델의 예로는, CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network), 심층 Q-네트워크 (Deep Q-Networks), GAN(Generative Adversarial Networks), VAE(Variational Auto Encoder) 등이 있으며, 본 개시에서의 확률 계산 모듈(420)에 포함된 인공 지능 모델은 전술한 예에 한정되지 않는다.
일 실시예에서, 확률 계산 모듈(420)에 포함된 인공 지능 모델은, 객체 및 객체 배경으로 레이블링(Labeling)된 훈련 데이터셋(Training Dataset)에 기초하여, 입력 영상(1000)에 포함된 복수의 화소 영상들 각각이 객체 또는 객체의 배경에 대응되는 화소 영상일 확률을 계산하도록 훈련된 인공 지능 모델일 수 있다. 일 실시예에서, 확률 계산 모듈(420)의 가중치는 훈련 데이터셋에 기초하여 업데이트 될 수 있다.
일 실시예에서, 전자 장치(100)는 확률 계산 모듈(420)에 포함된 인공 지능 모델을 훈련시킬 수 있다. 전자 장치(100)는 확률 계산 모듈(420)에 포함된 인공 지능 모델을 훈련시키기 위하여 사전 학습 모델을 이용한 전이 학습(transfer learning)을 할 수도 있다. 다만, 본 개시는 이에 한정되지 않고, 확률 계산 모듈(420)은 통신 인터페이스(600)를 통하여 기 훈련된 인공지능 모델을 외부의 서버 또는 주변의 전자 장치들로부터 수신할 수도 있다.
이하, 설명의 편의를 위하여, 확률 계산 모듈(420)은 입력 영상(1000)에 포함된 복수의 화소 영상들 각각이 객체에 대응되는 화소 영상일 확률을 계산하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성되는 것으로 설명한다. 또한, 계산된 복수의 화소 영상들 각각이 객체에 대응되는 화소 영상일 확률을 객체 화소 확률 값이라고 지칭한다.
일 실시예에서, 확률 계산 모듈(420)은 복수의 화소 영상들의 배치 및 복수의 화소 영상들의 객체 화소 확률 값에 기초하여, 복수의 화소 영상들을 객체에 대응되는 객체 영상(5000)과 객체의 배경에 대응되는 객체 배경 영상으로 분류하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드를 포함할 수 있다.
일 실시예에서, 제1 분류 맵 획득 모듈(430)은 기 설정된 제1 기준 확률 값과 같거나 큰 객체 화소 확률 값을 갖는 적어도 하나의 화소 영상이 인접하여 배치된 영역을 객체에 대응되는 객체 영역(2100)으로 분류하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드를 포함할 수 있다. 제1 분류 맵 획득 모듈(430)은 기 설정된 제1 기준 확률 값보다 작은 객체 화소 확률 값을 갖는 적어도 하나의 화소 영상이 인접하여 배치된 영역을 객체 배경 영상에 대응되는 배경 영역(2200)으로 분류하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드를 포함할 수 있다. 일 실시예에서, 제1 기준 확률 값은 입력 영상(1000)을 객체 영상(5000)과 객체 배경 영상으로 분류하기 위한 기준이 되는 값일 수 있다.
일 실시예로, 제1 분류 맵 획득 모듈(430)을 통하여 객체 영역(2100)으로 분류된 영역 내에는 기 설정된 제2 기준 확률 값보다 작은 객체 화소 확률 값을 갖는 적어도 하나의 화소 영상이 포함된 노이즈(Noise) 영역(2300, 도 1 참조)이 포함될 수 있다. 일 실시예로, 제2 기준 확률 값은 제1 기준 확률 값과 상이한 확률 값일 수 있다. 제2 기준 확률 값은 제1 기준 확률 값보다 큰 값일 수 있다. 노이즈 영역(2300)은 도 5b 및 도 7b에서 후술하도록 한다.
일 실시예에서, 제1 분류 맵 획득 모듈(430)은 제1 분류 맵 획득 모듈(430)을 통하여 계산된, 객체 화소 확률 값을 계조(Gray) 스케일로 변환하여 제1 분류 맵(2000)을 획득하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다.
일 실시예에서, 제1 분류 맵(2000)은 입력 영상(1000)에 포함된 복수의 화소 영상들 각각의 객체 화소 확률 값에 255를 곱하여 획득된, 0 내지 255의 사이의 계조를 갖는 영상일 수 있다. 이때, 객체 화소 확률 값이 큰 화소 영상일수록 높은 계조를 갖고, 객체 화소 확률 값이 작은 화소 영상일수록 낮은 계조를 가질 수 있다. 따라서, 제1 분류 맵(2000)에 포함된 객체 영역(2100)은 높은 계조를 갖는 영역이고, 배경 영역(2200)은 낮은 계조를 갖는 영역일 수 있다. 다만, 본 개시는 이에 제한되지 않는다. 제1 분류 맵(2000)은 입력 영상(1000)에 포함된 복수의 화소 영상들 각각의 객체 화소 확률 값에 곱해지는 기준 계조에 따라, 0 내지 기준 계조 사이의 계조를 갖는 영상일 수도 있다.
일 실시예에서, 제2 분류 맵 획득 모듈(440)은, 제1 분류 맵(2000)을 전처리하여, 제1 분류 맵(2000)에 포함된 노이즈(Noise) 영역(2300)을 제거한 제2 분류 맵(3000)을 획득하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다. 일 실시예에서, 제2 분류 맵 획득 모듈(440)은 모폴로지(Morphology) 연산을 통하여 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 제거한 제2 분류 맵(3000)을 획득하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다. 일 실시예에서, 제2 분류 맵 획득 모듈(440)은 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 제거하기 위하여 침식(Erosion), 팽창(Dilatation), 침식 및 팽창을 통한 열림(Opening), 닫힘(Closing) 및 그레디언트(Gradient) 연산 등을 수행하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다. 이하, 노이즈 영역(2300)은 도 5a 내지 7b에서 후술하도록 한다.
일 실시예에서, 최종 분류 맵 획득 모듈(450)은 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다. 일 실시예에서, 최종 분류 맵 획득 모듈(450)은 카메라로부터 객체까지의 거리 정보에 기초하여 계산되는 제1 보정 계수, 노이즈 영역(2300)에 기초하여 계산되는 제2 보정 계수, 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다. 일 실시예에서, 최종 분류 맵 획득 모듈(450)은 제1 보정 계수, 제2 보정 계수, 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상이 객체에 대응될 확률 값에 기초하여 계산되는 제3 보정 계수, 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다. 이하, 제1 내지 제3 보정 계수는 도 7a 내지 도 8b에 대한 설명에서 후술하도록 한다.
프로세서(500)는 중앙 처리 장치(Central Processing Unit), 마이크로 프로세서(microprocessor), 그래픽 프로세서(Graphic Processing Unit), 애플리케이션 프로세서(Application Processor, AP), ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays) 및 뉴럴 프로세서(Neural Processing Unit) 또는 인공지능 모델(Artificial Intelligence, AI)의 학습 및 처리에 특화된 하드웨어 구조로 설계된 인공지능 전용 프로세서 중 적어도 하나로 구성될 수 있으나, 이에 제한되는 것은 아니다.
일 실시예에서, 프로세서(500)는 메모리(400)에 저장된 다양한 종류의 모듈들을 실행할 수 있다. 일 실시예에서, 프로세서(500)는 메모리(400)에 저장된 영상 획득 모듈(410), 확률 계산 모듈(420), 제1 분류 맵 획득 모듈(430), 제2 분류 맵 획득 모듈(440) 및 최종 분류 맵 획득 모듈(450)을 실행할 수 있다. 일 실시예에서, 프로세서(500)는 메모리(400)에 저장된 다양한 종류의 모듈들을 구성하는 적어도 하나의 명령어를 실행할 수 있다.
일 실시예에서, 통신 인터페이스(600)는 프로세서(500)의 제어에 의해 외부의 서버(미도시)와 데이터 통신을 수행할 수 있다. 또한, 통신 인터페이스(600)는 외부의 서버뿐 아니라, 다른 주변 전자 장치들(미도시)과도 데이터 통신을 수행할 수 있다. 통신 인터페이스(600)는 예를 들어, 유선 랜, 무선 랜(Wireless LAN), 와이파이(Wi-Fi), 블루투스(Bluetooth), 지그비(zigbee), WFD(Wi-Fi Direct), 적외선 통신(IrDA, infrared Data Association), BLE (Bluetooth Low Energy), NFC(Near Field Communication), 와이브로(Wireless Broadband Internet, Wibro), 와이맥스(World Interoperability for Microwave Access, WiMAX), SWAP(Shared Wireless Access Protocol), 와이기그(Wireless Gigabit Allicance, WiGig) 및 RF 통신을 포함하는 데이터 통신 방식 중 적어도 하나를 이용하여 서버 또는 다른 주변 전자 장치들과 데이터 통신을 수행할 수 있다.
일 실시예에서, 통신 인터페이스(600)는 입력 영상(1000)에 포함된 복수의 화소 영상들 각각이 객체에 대응되는 화소 영상일 확률을 계산하기 위하여 기 학습된 확률 계산 모듈(420)을 외부의 서버 또는 주변의 전자 장치들로부터 수신할 수도 있다.
도 3은 본 개시의 일 실시예에 따른 전자 장치의 동작을 설명하기 위한 순서도이다. 도 4는 본 개시의 일 실시예에 따른 전자 장치의 동작을 설명하기 위한 도면이다.
도 1, 도 3 및 도 4를 참조하면, 일 실시예에서, 전자 장치(100)의 동작 방법은 카메라(300)로부터 기준 거리만큼 이격된 객체 및 객체의 배경을 촬영한 입력 영상(1000, 도 1 참조)을 획득하는 단계(S100)를 포함한다. 일 실시예에서, 기준 거리는 카메라(300)와 객체 사이의 거리를 의미한다. 적어도 하나의 프로세서(500, 도 2 참조)는 영상 획득 모듈(410)을 실행하여 카메라(300)를 통하여 입력 영상(1000)을 획득할 수 있다.
일 실시예에서, 전자 장치(100)의 동작 방법은 획득한 입력 영상(1000)에 포함된 복수의 화소 영상들 각각의 객체 화소 확률 값을 계산하는 단계를 포함할 수 있다. 적어도 하나의 프로세서(500)는 확률 계산 모듈(420)을 실행하여 획득한 입력 영상(1000)에 포함된 복수의 화소 영상들 각각의 객체 화소 확률 값을 계산할 수 있다.
일 실시예에서, 전자 장치(100)의 동작 방법은, 입력 영상(1000)의 제1 부분을 객체에 대응되는 객체 영역(2100)으로 분류하고, 입력 영상(1000)의 제2 부분을 객체의 배경에 대응되는 배경 영역(2200)으로 분류하여 제1 분류 맵(2000)을 획득하는 단계(S200)를 포함할 수 있다.
일 실시예에서, 제1 분류 맵(2000)을 획득하는 단계(S200)는 복수의 화소 영상들의 배치 및 복수의 화소 영상들 각각의 객체 화소 확률 값을 기 설정된 제1 기준 확률 값과 비교하여 복수의 화소 영상들을 객체 영역(2100)과 배경 영역(2200)으로 분류하는 단계를 포함할 수 있다. 적어도 하나의 프로세서(500)는 제1 분류 맵 획득 모듈(430)을 실행하여, 기 설정된 제1 기준 확률 값과 같거나 큰 객체 화소 확률 값을 갖는 적어도 하나의 화소 영상이 인접하여 배치된 영역을 객체 영역(2100)으로 분류할 수 있다. 적어도 하나의 프로세서(500)는 확률 계산 모듈(420)을 실행하여, 기 설정된 제1 기준 확률 값보다 작은 객체 화소 확률 값을 갖는 적어도 하나의 화소 영상이 인접하여 배치된 영역을 배경 영역(2200)에 대응된다고 분류할 수 있다.
일 실시예에서, 제1 분류 맵(2000)을 획득하는 단계(S200)는 복수의 화소 영상들의 객체 화소 확률 값을 계조 스케일로 변환하여 제1 분류 맵(2000)을 획득하는 단계를 포함할 수 있다. 적어도 하나의 프로세서(500)는 제1 분류 맵 획득 모듈(430)을 실행하여, 복수의 화소 영상들의 객체 화소 확률 값에 255를 곱하여, 0 내지 255 사이의 계조를 갖는 제1 분류 맵(2000)을 획득할 수 있다. 이하, 입력 영상(1000)에 기초하여 제1 분류 맵(2000)을 획득하는 동작은, 도 5a 및 도 5b에서 후술하도록 한다.
일 실시예에서, 전자 장치(100)의 동작 방법은, 획득한 제1 분류 맵(2000)에 포함된 객체 영역(2100)과 배경 영역(2200) 사이의 경계를 검출하는 단계를 포함할 수 있다. 적어도 하나의 프로세서(500)는 경계 검출 모듈(435)을 실행하여, 제1 분류 맵(2000)에 포함된 계조를 이진화(Binarization)하여, 객체 영역(2100)과 배경 영역(2200) 간의 경계를 검출할 수 있다.
일 실시예에서, 전자 장치(100)의 동작 방법은, 제1 분류 맵(2000)을 전처리하여, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 제거한 제2 분류 맵(3000)을 획득하는 단계(S300)를 포함할 수 있다. 일 실시예에서, 적어도 하나의 프로세서(500)는 제2 분류 맵 획득 모듈(440)을 실행하여, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 모폴로지(Morphology) 연산을 통하여 제거한 제2 분류 맵(3000)을 획득할 수 있다. 일 실시예에서, 적어도 하나의 프로세서(500)는 제2 분류 맵 획득 모듈(440)을 실행하여 침식(Erosion), 팽창(Dilatation), 침식 및 팽창을 통한 열림(Opening), 닫힘(Closing) 및 그레디언트(Gradient) 연산 등을 통하여 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 제거할 수 있다. 또한, 적어도 하나의 프로세서(500)는 제2 분류 맵 획득 모듈(440)을 실행하여 제1 분류 맵(2000)에 포함된 객체 영역(2100)과 배경 영역(2200) 간의 경계를 평활화 할 수 있다. 이하, 제1 분류 맵(2000)을 전처리하여 제2 분류 맵(3000)을 획득하는 동작은, 도 6a 및 도 6b에서 후술하도록 한다.
일 실시예에서, 전자 장치(100)의 동작 방법은, 카메라(300)와 객체 사이의 거리 정보에 기초하여 계산되는 제1 보정 계수를 획득하는 단계를 포함할 수 있다. 일 실시예에서, 제1 보정 계수를 획득하는 단계에서는, 제2 분류 맵(3000)에 기초하여 카메라(300)와 객체 사이의 기준 거리를 검출하고, 검출된 기준 거리에 기초하여 제1 보정 계수를 계산할 수 있다. 적어도 하나의 프로세서(500)는 1 보정 계수 계산 모듈(470)을 실행하여, 제2 분류 맵(3000)에 기초하여 카메라(300)와 객체 사이의 기준 거리를 검출하고, 검출된 기준 거리의 정보에 기초하여 계산된 제1 보정 계수를 획득할 수 있다.
일 실시예에서, 제1 보정 계수를 획득하는 단계는, 제2 분류 맵(3000)에 기초하여 카메라(300)와 객체 사이의 거리를 검출하는 단계 및 검출된 기준 거리에 기초하여 제1 보정 계수를 계산하는 단계를 포함할 수 있다. 적어도 하나의 프로세서(500)는 거리 검출 모듈(460)을 실행하여, 제2 분류 맵(3000)에 기초하여 카메라(300)와 객체 사이의 기준 거리를 검출할 수 있다. 적어도 하나의 프로세서(500)는 제1 보정 계수 계산 모듈(470)을 실행하여, 검출된 기준 거리 정보에 기초하여 계산된 제1 보정 계수를 획득할 수 있다. 이하, 제1 보정 계수를 획득하는 동작에 대하여는 도 7a 및 도 7b에서 후술하도록 한다.
일 실시예에서, 전자 장치(100)의 동작 방법은, 검출된 경계에 기초하여, 분류된 객체 영역(2100)과 배경 영역(2200)을 분할하고, 분할된 객체 영역(2100)과 배경 영역(2200)의 위치 및 크기를 계산하는 단계를 포함할 수 있다. 적어도 하나의 프로세서(500)는 영역 분할 모듈(445)을 실행하여, 검출된 경계에 기초하여 입력 영상(1000)에 포함된 객체 영역(2100)과 배경 영역(2200)을 분할하고, 분할된 객체 영역(2100)과 배경 영역(2200)의 위치 및 크기를 계산할 수 있다.
일 실시예에서, 전자 장치(100)의 동작 방법은, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 검출하는 단계를 포함할 수 있다. 적어도 하나의 프로세서(500)는 노이즈 영역 검출 모듈(480)을 실행하여, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 검출할 수 있다. 일 실시예에서, 적어도 하나의 프로세서(500)는 분할된 객체 영역(2100)에 포함된 적어도 하나의 화소 영상 중 제2 기준 확률 값보다 작은 객체 화소 확률 값을 갖는 화소 영상이 포함된 영역을 노이즈 영역(2300)으로 검출할 수 있다. 일 실시예에서, 제2 기준 확률 값은 제1 기준 확률 값보다 큰 확률 값일 수 있다. 일 실시예로, 노이즈 영역(2300)은 제1 기준 확률 값에 기초하여 객체에 대응되는 영역이라고 판단된 객체 영역(2100) 내에 포함된다고 분류되었지만, 객체에 대응되는 화소 영상인지, 객체의 배경에 대응되는 화소 영상인지 불분명한 적어도 하나의 화소 영상이 포함된 영역일 수 있다.
다만, 본 개시는 이에 제한되지 않고, 노이즈 영역(2300)은 제1 기준 확률 값에 기초하여 객체의 배경에 대응되는 영역이라고 판단된 배경 영역(2200) 내에 포함될 수도 있다. 노이즈 영역(2300)은 제1 기준 확률 값보다 작지만, 제3 기준 확률 값과 같거나 큰 객체 화소 확률 값을 갖는 화소 영상이 포함된 영역일 수 있다. 일 실시예에서, 제3 기준 확률 값은 제1 기준 확률 값보다 작은 확률 값일 수 있다. 일 실시예로, 노이즈 영역(2300)은 제1 기준 확률 값에 기초하여 객체의 배경에 대응되는 영역이라고 판단된 배경 영역(2200) 내에 포함된다고 분류되었지만, 객체에 대응되는 화소 영상인지, 객체의 배경에 대응되는 화소 영상인지 불분명한 적어도 하나의 화소 영상이 포함된 영역일 수 있다.
이하, 설명의 편의를 위하여, 노이즈 영역(2300)은 객체 영역(2100) 내에 포함된 영역으로 설명한다.
일 실시예에서, 전자 장치(100)의 동작 방법은, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)에 기초하여 계산되는 제2 보정 계수를 획득하는 단계를 포함할 수 있다. 일 실시예에서, 제2 보정 계수를 획득하는 단계에서는, 검출된 노이즈 영역(2300)에 기초하여 계산된 제2 보정 계수를 획득할 수 있다. 적어도 하나의 프로세서(500)는 제2 보정 계수 계산 모듈(491)을 실행하여, 검출된 노이즈 영역(2300)에 기초하여 제2 보정 계수를 계산하여 획득할 수 있다. 이하, 제2 보정 계수를 획득하는 동작에 대하여는 도 8a 및 도 8b에서 후술하도록 한다.
일 실시예에서, 전자 장치(100)의 동작 방법은, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)에 기초하여 계산되는 제3 보정 계수를 획득하는 단계를 포함할 수 있다. 일 실시예에서, 제3 보정 계수를 획득하는 단계에서는, 검출된 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상의 객체 화소 확률에 기초하여 계산된 제3 보정 계수를 획득할 수 있다. 적어도 하나의 프로세서(500)는 제3 보정 계수 계산 모듈(492)을 실행하여, 검출된 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상의 객체 화소 확률에 기초하여 제3 보정 계수를 계산하여 획득할 수 있다. 이하, 제2 보정 계수를 획득하는 동작에 대하여는 도 8a 및 도 8b에서 후술하도록 한다.
일 실시예에서, 전자 장치(100)의 동작 방법은, 제1 보정 계수, 제2 보정 계수, 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득하는 단계(S400)를 포함할 수 있다. 일 실시예에서, 최종 분류 맵(4000)을 획득하는 단계(S400)에서, 최종 분류 맵(4000)은 제1 보정 계수, 제2 보정 계수, 제3 보정 계수, 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 획득될 수 있다. 이하, 최종 분류 맵(4000)을 획득하는 동작에 대해서는 도 9에서 후술하도록 한다.
일 실시예에서, 전자 장치(100)의 동작 방법은, 입력 영상(1000)에 최종 분류 맵(4000)을 적용하여, 객체(110)에 대응되는 객체 영상(5000)을 획득하는 단계(S500)를 포함할 수 있다. 일 실시예에서, 객체 영상(5000)을 획득하는 단계(S500)에서는, 카메라(300)로부터 객체까지의 거리 정보 및 노이즈 영역(2300)을 이용하여, 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 객체에 대응되는 객체 영상(5000)을 획득할 수 있다. 일 실시예에서, 적어도 하나의 프로세서(500)는 입력 영상(1000)에 최종 분류 맵(4000)을 적용하여 객체에 대응되는 객체 영상(5000)을 획득할 수 있다.
도 5a는 본 개시의 일 실시예에 따른 제1 분류 맵을 획득하는 동작을 설명하기 위한 도면이다. 도 5b는 본 개시의 일 실시예에 따른 획득된 제1 분류 맵을 설명하기 위한 도면이다.
도 4 및 도 5a를 참조하면, 입력 영상(1000)은 공을 던지는 사람 및 공을 던지는 사람의 배경을 촬영하여 획득된 영상일 수 있다. 적어도 하나의 프로세서(500)는 영상 획득 모듈(410)을 실행하여 공을 던지는 사람을 객체로서 포함하고, 공을 던지는 사람의 배경을 객체의 배경으로서 포함하는 입력 영상(1000)을 획득할 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 확률 계산 모듈(420)을 실행하여, 공을 던지는 사람에 대응되는 영상에 포함된 복수의 화소 영상들 각각의 객체 화소 확률 값과, 공을 던지는 사람의 배경에 대응되는 영상에 포함된 복수의 화소 영상들 각각의 객체 화소 확률 값을 계산할 수 있다. 따라서, 각 화소 영상들은 계산된 객체 화소 확률 값에 따라 객체 또는 배경 중 하나로 분류될 수 있다. 일 실시예로, 확률 계산 모듈(420)은 사람 및 사람의 배경으로 레이블링된 훈련 데이터셋에 기초하여 기 훈련된 인공 지능 모델을 포함할 수 있다. 일 실시예에서, 공을 던지는 사람에 대응되는 영상에 포함된 복수의 화소 영상들 각각의 객체 화소 확률 값은 공을 던지는 사람의 배경에 대응되는 영상에 포함된 복수의 화소 영상들 각각의 객체 화소 확률 값보다 클 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 제1 분류 맵 획득 모듈(430)을 실행하여, 입력 영상(1000)을 기 설정된 제1 기준 확률 값과 같거나 큰 객체 화소 확률 값을 갖는 적어도 하나의 화소 영상 및 제1 기준 확률 값보다 작은 객체 화소 확률 값을 갖는 적어도 하나의 화소 영상으로 분류할 수 있다. 일 실시예로, 제1 기준 확률 값은 사람 및 사람의 배경을 분류하도록 기 훈련된 확률 계산 모듈(420)의 가중치에 따라, 사람과 사람의 배경을 분류하는 기준이 될 수 있다고 판단되는 확률 값으로 설정될 수 있다.
적어도 하나의 프로세서(500)는 제1 분류 맵 획득 모듈(430)을 실행하여, 입력 영상(1000) 중 제1 기준 확률 값과 같거나 큰 객체 화소 확률 값을 갖는 적어도 하나의 화소 영상이 인접하여 배치된 영역을 객체 영역(2100)으로 분류할 수 있다. 일 실시예에서, 공을 던지는 사람에 대응되는 복수의 화소 영상들이 제1 기준 확률 값과 같거나 큰 객체 화소 확률 값을 갖고, 서로 인접하여 배치되어 있기 때문에, 적어도 하나의 프로세서(500)는 공을 던지는 사람에 대응되는 영역을 객체 영역(2100)으로 분류할 수 있다.
적어도 하나의 프로세서(500)는 제1 분류 맵 획득 모듈(430)을 실행하여, 입력 영상(1000) 중 제1 기준 확률 값보다 작은 객체 화소 확률 값을 갖는 적어도 하나의 화소 영상이 인접하여 배치된 영역을 배경 영역(2200)으로 분류할 수 있다. 일 실시예에서, 공을 던지는 사람의 배경에 대응되는 복수의 화소 영상들이 제1 기준 확률 값보다 작은 객체 화소 확률 값을 갖고, 서로 인접하여 배치되어 있기 때문에, 적어도 하나의 프로세서(500)는 공을 던지는 사람의 배경에 대응되는 영역을 배경 영역(2200)으로 분류할 수 있다.
일 실시예에서, 객체 영역(2100)으로 분류된 영역 내에, 기 설정된 제2 기준 확률 값보다 작은 객체 확률 값을 갖는 적어도 하나의 화소 영상이 포함될 수 있다. 일 실시예에서, 제2 기준 확률 값과 같거나 큰 객체 확률 값을 갖는 적어도 하나의 화소 영상은 제1 분류 맵 획득 모듈(430)을 실행하여 입력 영상(1000)을 객체 영역(2100)과 배경 영역(2200)으로 분류하는 적어도 하나의 프로세서(500)에서 발생할 수 있는 오차 범위를 넘어, 공을 던지는 사람에 대응되는 화소 영상임을 확실히 할 수 있는 영상일 수 있다. 제2 기준 확률 값보다 작은 객체 확률 값을 갖는 적어도 하나의 화소 영상은, 객체 영역(2100)으로 분류되었으나, 공을 던지는 사람의 배경에 대응되는 화소 영상일 수 있는 가능성이 있는 영상일 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 제1 분류 맵 획득 모듈(430)을 실행하여, 입력 영상(1000)에 포함된 복수의 화소 영상들의 객체 화소 확률 값에 255를 곱하여 0 내지 255 사이의 계조를 갖는 제1 분류 맵(2000)을 획득할 수 있다. 제1 분류 맵(2000)은 255가 곱해진 객체 영역(2100) 및 255가 곱해진 배경 영역(2200)을 포함할 수 있다.
도 5b를 참조하면, 일 실시예로, 객체 영역(2100)에 포함된 복수의 화소 영상들의 객체 화소 확률 값이 배경 영역(2200)에 포함된 복수의 화소 영상들의 객체 화소 확률 값보다 크기 때문에, 제1 분류 맵(2000)에 포함된 객체 영역(2100)은 배경 영역(2200)보다 높은 계조를 가질 수 있다. 따라서, 제1 분류 맵(2000)에 포함된 객체 영역(2100)은 배경 영역(2200)보다 밝은 영역으로 표시될 수 있다.
일 실시예에서, 제1 분류 맵(2000)은 객체 영역(2100)에 포함된 노이즈 영역(2300)을 포함할 수 있다. 객체 영역(2100) 중 노이즈 영역(2300)을 제외한 나머지 영역에 포함된 적어도 하나의 화소 영상은 제2 기준 확률 값보다 큰 객체 화소 값을 갖는 것으로 설명한다.
일 실시예에서, 노이즈 영역(2300)은 객체 영역(2100) 내에 위치한 제1 노이즈 영역(2310) 및 객체 영역(2100)과 배경 영역(2200)의 경계에 위치한 제2 노이즈 영역(2320)을 포함할 수 있다. 일 실시예에서, 제1 노이즈 영역(2310)은 객체 영역(2100) 내에 위치하지만, 제2 기준 확률 값보다 작은 객체 확률 값을 갖는 적어도 하나의 화소 영상을 포함하여, 인접한 객체 영역(2100)보다 낮은 계조를 가질 수 있다. 일 실시예에서, 제2 노이즈 영역(2320)은 제2 기준 확률 값보다 작은 객체 확률 값을 갖는 적어도 하나의 화소 영상을 포함하여, 인접한 객체 영역(2100)보다는 낮은 계조를 갖고, 인접한 배경 영역(2200)보다는 높은 계조를 가질 수 있다.
도 6a는 본 개시의 일 실시예에 따른 제2 분류 맵을 획득하는 동작을 설명하기 위한 도면이다. 도 6b는 본 개시의 일 실시예에 따른 제2 분류 맵을 설명하기 위한 도면이다.
도 1, 도 4 및 도 6a를 참조하면, 일 실시예에서, 적어도 하나의 프로세서(500)는 경계 검출 모듈(435)을 실행하여, 제1 분류 맵(2000)에 포함된 공을 던지는 사람에 대응되는 객체 영역(2100)과 공을 던지는 사람의 배경에 대응되는 배경 영역(2200) 간의 경계를 검출할 수 있다. 일 실시예에서, 적어도 하나의 프로세서(500)는 제1 분류 맵(2000)의 계조를 이진화하여, 객체 영역(2100)과 배경 영역(2200)이 명확히 구분될 수 있도록 경계를 검출할 수 있다. 이진화 프로세스에는 화소를 "1" 또는 "0"으로 분류하는 것을 포함할 수 있다. 여기서, "1"은 객체를 나타내고 "0"은 배경을 나타낼 수 있다. 값이 "0"인 화소가 값이 "1"인 화소에 인접할 경우 경계가 검출될 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 제2 분류 맵 획득 모듈(440)을 실행하여 제1 분류 맵(2000)을 전처리하여, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 제거한 제2 분류 맵(3000)을 획득할 수 있다. 일 실시예에서, 적어도 하나의 프로세서(500)는 제2 분류 맵 획득 모듈(440)을 실행하여, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300, 도 5b 참조)을 모폴로지 연산을 통하여 제거한 제2 분류 맵(3000)을 획득할 수 있다. 또한, 적어도 하나의 프로세서(500)는 제2 분류 맵 획득 모듈(440)을 실행하여, 제1 분류 맵(2000)에 포함된 객체 영역(2100)과 배경 영역(2200) 간의 경계를 평활화하여, 제2 분류 맵(3000)을 획득할 수 있다.
도 5b 및 도 6b를 참조하면, 제2 분류 맵(3000)은 전처리된 객체 영역(3100) 및 전처리된 배경 영역(3200)을 포함할 수 있다. 일 실시예에서, 전처리된 객체 영역(3100)은 제1 분류 맵(2000)의 객체 영역(2100)을 침식(Erosion), 팽창(Dilatation), 침식 및 팽창을 통한 열림(Opening) 및 닫힘(Closing) 등을 하는 연산을 통하여 획득될 수 있다. 상기한 연산을 통하여, 제1 분류 맵(2000)의 객체 영역(2100) 내에 포함된 노이즈 영역(2300, 도 5b 참조) 제거할 수 있다.
도 5b 및 도 6b를 참조하면, 전처리된 객체 영역(3100) 중 제1 분류 맵(2000)의 노이즈 영역(2300)에 대응되는 전처리된 영역(3300)의 계조는 인접한 전처리된 객체 영역(3100)의 계조와 동일할 수 있다. 일 실시예에서, 제1 노이즈 영역(2310)에 대응되는 전처리된 영역(3310)은 인접한 전처리된 객체 영역(3100)의 계조와 동일할 수 있다. 제2 노이즈 영역(2320)에 대응되는 전처리된 영역(3320)은 인접한 전처리된 객체 영역(3100)의 계조와 동일하고, 인접한 전처리된 배경 영역(3200)보다 높은 계조를 가질 수 있다.
일 실시예에서, 제1 분류 맵(2000)의 객체 영역(2100)과 달리 전처리된 객체 영역(3100)의 내부에 노이즈 영역(2300)이 포함되지 않으므로, 제2 분류 맵(3000)에 포함된 전처리된 객체 영역(3100)에 포함된 적어도 하나의 화소 영상은 모두 공을 던지는 사람인 객체에 대응되는 화소 영상으로 인식될 수 있다.
도 5b 및 도 6b를 참조하면, 제2 분류 맵(3000)은 제1 분류 맵(2000)에 포함된 경계에 포함된 노이즈를 제거하여 획득될 수 있다. 일 실시예로, 제2 분류 맵(3000)은 제1 분류 맵(2000)에 포함된 제2 노이즈 영역(2320)을 제거하여 획득될 수 있다. 따라서, 제2 분류 맵(3000)에 포함된 공을 던지는 사람에 대응되는 전처리된 객체 영역(3100)과 공을 던지는 사람의 배경에 대응되는 전처리된 배경 영역(3200) 간의 경계는, 제1 분류 맵(2000)에 포함된 공을 던지는 사람에 대응되는 객체 영역(2100)과 공을 던지는 사람의 배경에 대응되는 배경 영역(2200) 간의 경계보다 부드럽게 표현될 수 있다.
도 7a는 본 개시의 일 실시예에 따른 제1 보정 계수를 획득하는 동작을 설명하기 위한 도면이다. 도 7b는 본 개시의 일 실시예에 따른 제1 보정 계수를 설명하기 위한 도면이다.
도 4, 도 6b 및 도 7a를 참조하면, 일 실시예에서, 적어도 하나의 프로세서(500)는 거리 검출 모듈(460)을 실행함으로써, 제2 분류 맵(3000)에 기초하여 입력 영상(1000, 도 5a)을 촬영한 카메라(300, 도 1 참조)와 객체인 공을 던지는 사람 간의 거리인 기준 거리를 검출할 수 있다.
일 실시예에서, 메모리(400, 도 2 참조)는 크기 기반 모듈(461), 관절 기반 모듈(462) 및 깊이 기반 모듈(463)이 더 저장될 수 있다. 적어도 하나의 프로세서(500)는 크기 기반 모듈(461), 관절 기반 모듈(462) 및 깊이 기반 모듈(463) 중 적어도 어느 하나의 모듈을 실행함으로써, 제2 분류 맵(3000)에 기초하여 카메라(300)와 객체 간의 기준 거리를 검출할 수 있다. 그러나, 도 7a에 도시된 모듈 모두가 필수 모듈인 것은 아니다. 메모리(400)에는 도 7a에 도시된 모듈보다 더 많은 모듈들이 저장될 수도 있고, 그보다 적은 모듈들이 저장될 수도 있다. 일 실시예에서, 메모리(400)에는 제2 분류 맵(3000)에 기초하여 카메라(300)와 객체 간의 기준 거리를 검출할 수 있는 또 다른 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성된 모듈을 더 포함할 수도 있다.
도 7a 및 도 7b를 참조하면, 카메라(300)와 객체(110)간의 거리에 따라, 제2 분류 맵(3000_1, 3000_2)에 포함된 객체 영역(3100_1, 3100_2)의 크기가 달라질 수 있다. 일 실시예에서, 카메라(300)를 통하여 획득하는 입력 영상(1000, 도 5a)에 포함된 객체 영역의 크기는 카메라(300)와 객체(110) 간의 거리에 반비례 할 수 있다.
일 실시예로, 카메라(300)와 객체(110) 간의 거리가 제1 기준 거리(501)일 때의 제2 분류 맵(3000_1)을 제1 서브 분류 맵(3000_1)이라 정의하고, 카메라(300)와 객체(110) 간의 거리가 제2 기준 거리(502)일 때의 제2 분류 맵(3000_2)을 제2 서브 분류 맵(3000_2)이라 정의할 수 있다. 이때, 제1 기준 거리(501)는 제2 기준 거리(502)보다 짧은 거리일 수 있다.
일 실시예에서, 제1 서브 분류 맵(3000_1)에 포함된 객체 영역(3100_1)을 제1 서브 객체 영역(3100_1)이라 정의하고, 제1 서브 분류 맵(3000_1)에 포함된 배경 영역(3200_1)을 제1 서브 배경 영역(3200_1)이라 정의할 수 있다. 일 실시예에서, 제2 서브 분류 맵(3000_2)에 포함된 객체 영역(3100_2)을 제2 서브 객체 영역(3100_2)이라 정의하고, 제2 서브 분류 맵(3000_2)에 포함된 배경 영역(3200_2)을 제2 서브 배경 영역(3200_2)이라 정의할 수 있다.
일 실시예에서, 제1 서브 객체 영역(3100_1)의 크기는 제2 서브 객체 영역(3100_2)의 크기보다 클 수 있다. 제1 서브 객체 영역(3100_1) 중 공을 던지는 사람의 특정 영역(예를 들어, 사람의 머리 또는 사람의 손 등)의 크기는, 제2 서브 객체 영역(3100_2) 중 제1 서브 객체 영역(3100_1)에 포함된 공을 던지는 사람의 특정 영역에 대응되는 영역의 크기보다 클 수 있다.
일 실시예에서, 크기 기반 모듈(461)은 제1 기준 거리(501)와 제2 기준 거리(502)의 차이에 따른, 제1 서브 분류 맵(3000_1)에 포함된 제1 서브 객체 영역(3100_1)의 크기와 제2 서브 분류 맵(3000_2)에 포함된 제2 서브 객체 영역(3100_2)의 크기의 차이에 기초하여, 카메라(300)와 객체 간의 기준 거리를 검출할 수 있는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다.
일 실시예에서, 관절 기반 모듈(462)은 사람 형상의 이미지에서, 키네틱 체인(Kinetic Chain) 분석을 통하여 사람의 관절(Joint)에 대응되는 포인트를 획득하고, 획득한 포인트에 기초하여 카메라(300)와 객체 간의 기준 거리를 검출할 수 있는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다. 일 실시예이서, 관절 기반 모듈(462)은 제1 기준 거리(501)와 제2 기준 거리(502)의 차이에 따른, 제1 서브 객체 영역(3100_1)에 포함된 적어도 하나의 포인트의 개수 또는 위치와 제2 서브 객체 영역(3100_2)에 포함된 적어도 하나의 포인트의 개수 또는 위치 차이에 기초하여, 카메라(300)와 객체 간의 기준 거리를 검출할 수 있는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다.
일 실시예에서, 카메라(300)가 RGB-Depth 카메라를 포함할 때, 적어도 하나의 프로세서(500, 도 2 참조)는 입력 영상(1000) 및 입력 영상(1000)에 대응되는 깊이 맵(Depth Map)을 획득할 수 있다. 일 실시예에서, 깊이 맵은 기준이 되는 시점에서 물체의 표면까지의 깊이 값의 정보를 포함하는 영상을 의미한다. 일 실시예에서, 기준이 되는 시점을 카메라(300)의 위치라고 할 때, 깊이 맵은 카메라(300)로부터 촬영된 객체 및 객체의 배경의 깊이 정보를 포함할 수 있다. 일 실시예에서, 깊이 기반 모듈(463)은 획득한 깊이 맵에 기초하여 카메라(300)와 객체 간의 기준 거리를 검출할 수 있는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 제1 보정 계수 계산 모듈(470)을 실행하여, 검출된 기준 거리에 기초하여 계산된 제1 보정 계수()를 획득할 수 있다. 일 실시예에서, 검출된 기준 거리의 길이가 길어질수록, 제1 보정 계수()의 크기는 커질 수 있다.
일 실시예에서, 검출된 기준 거리에 기초하여 계산된 제1 보정 계수()는 제1 서브 보정 계수 및 제2 서브 보정 계수를 포함한다. 적어도 하나의 프로세서(500)는 제1 보정 계수()에 기초하여 제1 서브 보정 계수() 및 제2 서브 보정 계수()를 계산할 수 있다. 일 실시예에서, 제2 서브 보정 계수()는 제1 보정 계수()와 동일할 수 있다. 일 실시예에서, 기준 거리의 길이가 길어질수록, 제1 서브 보정 계수()의 크기는 작아질 수 있다. 기준 거리의 길이가 길어질수록, 제2 서브 보정 계수()의 크기는 커질 수 있다. 일 실시예에서, 제1 서브 보정 계수()와 제2 서브 보정 계수()의 합은 1일 수 있다.
도 8a는 본 개시의 일 실시예에 따른 제2 보정 계수 및 제3 보정 계수를 획득하는 동작을 설명하기 위한 도면이다. 도 8b는 본 개시의 일 실시예에 따른 제2 보정 계수 및 제3 보정 계수를 설명하기 위한 도면이다.
도 4, 도 8a 및 도 8b를 참조하면, 일 실시예에서, 적어도 하나의 프로세서(500)는 노이즈 영역 검출 모듈(480)을 실행함으로써, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 검출할 수 있다. 일 실시예에서, 제1 분류 맵(2000)은 공을 던지는 사람에 대응되는 객체 영역(2100) 및 공을 던지는 사람의 배경에 대응되는 배경 영역(2200)을 포함한다. 이때, 객체 영역(2100)은 기 설정된 제1 기준 확률 값과 같거나 큰 객체 화소 확률 값을 갖는 복수의 화소 영상들이 포함된 영역으로 분류된 영역이다.
적어도 하나의 프로세서(500)는 노이즈 영역 검출 모듈(480)을 실행하여, 객체 영역(2100) 중 기 설정된 제2 기준 확률 값보다 작은 객체 화소 확률 값을 갖는 적어도 하나의 화소 영상을 검출하고, 검출된 적어도 하나의 화소 영상이 포함된 영역을 노이즈 영역(2300)으로 검출한다.
일 실시예에서, 노이즈 영역(2300)은 공을 던지는 사람에 대응되는 객체 영역(2100)에 포함된다고 분류되었지만, 노이즈 영역 검출 모듈(480)을 실행하여 객체 영역(2100)과 배경 영역(2200)을 분류하는 적어도 하나의 프로세서(500)의 검출 성능의 한계로 인하여 객체에 대응되는 화소 영상인지, 객체의 배경에 대응되는 화소 영상인지 불분명한 화소 영상이 포함된 영역일 수 있다.
또한, 일 실시예에서, 노이즈 영역(2300)은 적어도 하나의 프로세서(500)에 의하여 공을 던지는 사람에 대응되는 객체 영역(2100)에 포함된다고 분류되었지만, 카메라(300)와 객체 간의 거리가 제1 기준 거리보다 멀어, 카메라(300)를 통하여 획득하는 입력 영상(1000)의 해상도(Resolution)가 낮아 객체에 대응되는 화소 영상인지, 객체의 배경에 대응되는 화소 영상인지 불분명한 화소 영상이 포함된 영역일 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 노이즈 영역 검출 모듈(480)을 실행하여, 객체 영역(2100)에 포함된 노이즈 영역(2300)을 검출할 수 있다. 도 8b에는 공을 던지는 사람에 대응되는 객체 영역(2100) 중 사람의 손에 대응되는 영역, 사람의 발에 대응되는 영역, 사람의 팔과 허리 사이에 대응되는 영역, 사람의 무릎에 대응되는 영역이 노이즈 영역(2300)으로 검출된 것이 도시되어 있다. 일 실시예에서, 노이즈 영역(2300)은 객체 중 움직임이 큰 부분에 대응되는 영역일 수 있다. 다만, 본 개시는 이에 제한되지 않고, 객체의 종류, 객체의 움직임 등에 따라서 노이즈 영역(2300)의 개수, 위치, 크기 등은 변경될 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 제2 보정 계수 계산 모듈(491)을 실행하여, 검출된 노이즈 영역(2300)에 기초하여 계산된 제2 보정 계수()를 획득할 수 있다. 일 실시예에서, 제1 보정 맵(2000)에 포함된 객체 영역(2100) 대비 노이즈 영역(2300)의 비율이 커질수록 제2 보정 계수()의 크기는 커질 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 제1 분류 맵(2000)에 포함된 객체 영역(2100) 대비 노이즈 영역(2300)의 비율, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)의 개수 및 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)의 면적 중 적어도 하나에 기초하여 제2 보정 계수()를 계산할 수 있다. 일 실시예에서, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)의 개수가 많아질수록 제2 보정 계수()의 크기는 커질 수 있다. 일 실시예에서, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)의 면적이 넓어질수록 제2 보정 계수()의 크기는 커질 수 있다.
일 실시예에서, 제1 보정 맵(2000)에 포함된 객체 영역(2100)의 면적 대비, 노이즈 영역(2300)의 면적은 상대적으로 작을 수 있다. 적어도 하나의 프로세서(500)에 의하여 검출되는 노이즈 영역(2300)이 증가하더라도, 제1 보정 맵(2000)에 포함된 객체 영역(2100) 대비 노이즈 영역(2300)의 비율의 변화는 크지 않을 수 있다. 이 경우, 검출되는 노이즈 영역(2300)이 증가하더라도, 제2 보정 계수()의 크기 변화는 작을 수 있다.
이때, 검출되는 노이즈 영역(2300)의 개수 및 노이즈 영역(2300)의 면적에 기초하여 제2 보정 계수()의 크기를 계산할 경우, 적어도 하나의 프로세서(500)에 의하여 검출되는 노이즈 영역(2300)이 증가되는 것에 대응하여 제2 보정 계수()의 크기가 변화하도록 할 수 있다. 따라서, 객체 영역(2100)에 포함된 노이즈 영역(2300)의 변화에 대응하여 제2 보정 계수()의 크기가 변화할 수 있도록 할 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 제3 보정 계수 계산 모듈(492)을 실행하여, 검출된 노이즈 영역(2300)에 기초하여 계산된 제3 보정 계수()를 획득할 수 있다. 일 실시예에서, 적어도 하나의 프로세서(500)는 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상의 객체 화소 확률 값에 기초하여 제3 보정 계수()를 계산할 수 있다. 일 실시예에서, 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상의 객체 화소 확률 값이 커질수록, 제3 보정 계수()의 크기는 작아질 수 있다. 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상의 객체 화소 확률 값이 클수록, 해당 화소 영상은 객체 영상(5000, 도 1 참조)인 공을 던지는 사람에 대응되는 영상일 가능성이 높은 영상일 수 있다. 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상의 객체 화소 확률 값이 작을수록, 해당 화소 영상은 객체 영역(2100)에 포함되었지만, 객체 배경 영상인 공을 던지는 사람의 배경에 대응되는 영상일 가능성이 높은 영상일 수 있다.
도 9는 본 개시의 일 실시예에 따른 최종 분류 맵을 획득하는 동작을 설명하기 위한 도면이다.
도 4 및 도 9를 참조하면, 적어도 하나의 프로세서(500)는 최종 분류 맵 획득 모듈(450)을 실행하여, 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득할 수 있다. 일 실시예에서, 적어도 하나의 프로세서(500)는 최종 분류 맵 획득 모듈(450)을 실행하여, 제1 보정 계수(), 제2 보정 계수(), 제3 보정 계수(), 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득할 수 있다.
일 실시예에서, 최종 분류 맵 획득 모듈(450)은 아래의 수학식을 이용하여, 최종 분류 맵(4000)을 획득하는 동작이나 기능에 관한 명령어들 또는 프로그램 코드로 구성될 수 있다.
수학식:
이때, 은 제1 분류 맵(2000)에 포함된 복수의 화소 영상들 중 의 좌표에 해당하는 화소 영상을 의미하고, 은 제2 분류 맵(3000)에 포함된 복수의 화소 영상들 중 의 좌표에 해당하는 화소 영상을 의미하고, ()은 제1 서브 보정 계수를 의미하고, 는 제2 서브 보정 계수를 의미하고, 는 제2 보정 계수를 의미하고, 는 제3 보정 계수를 의미한다. 이때, 및 는 제1 분류 맵(2000) 및 제2 분류 맵(3000)의 해상도에 의해 결정될 수 있는 1 이상의 자연수이다.
일 실시예에서, 적어도 하나의 프로세서(500)는 최종 분류 맵 획득 모듈(450)을 실행하여, 입력 영상(1000)에 기초하여 획득한 제1 분류 맵(2000) 및 제1 분류 맵(2000)을 전처리하여 획득한 제2 분류 맵(3000)을 더하여 최종 분류 맵(4000)을 획득하고, 획득한 최종 분류 맵(4000)에 기초하여 입력 영상(1000)에 포함된 객체 영상(5000, 도 1 참조) 및 객체 배경 영상을 분류할 수 있다. 적어도 하나의 프로세서(500)는 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득함에 따라, 입력 영상(1000)에 포함된 객체 영상(5000) 및 객체 배경 영상을 분류하는 동작의 정확도를 높일 수 있다. 이하, 입력 영상(1000)에 포함된 객체 영상(5000) 및 객체 배경 영상을 분류하는 동작의 정확도를 높이기 위하여, 최종 분류 맵(4000)에 포함되는 제1 분류 맵(2000) 및 제2 분류 맵(3000)의 비율을 결정하는 것에 대하여 설명한다.
일 실시예에서, 적어도 하나의 프로세서(500)는 최종 분류 맵 획득 모듈(450)을 실행하여, 제1 서브 보정 계수()가 곱해진 제1 분류 맵(2000)과 제2 서브 보정 계수()가 곱해진 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득할 수 있다. 일 실시예에서, 카메라(300, 도 1 참조)와 객체(110) 간의 기준 거리의 길이가 짧아질수록, 제1 서브 보정 계수()의 크기가 커지게 하여, 최종 분류 맵(4000)을 획득함에 있어 제1 분류 맵(2000)의 비율을 높일 수 있다. 카메라(300, 도 1 참조)와 객체(110) 간의 기준 거리의 길이가 길어질수록, 제2 서브 보정 계수()의 크기가 작아지게 하여, 최종 분류 맵(4000)을 획득함에 있어 제2 분류 맵(3000)의 비율을 낮출 수 있다.
일 실시예에서, 도 5a 및 도 5b를 참조하면, 제1 분류 맵(2000)은 입력 영상(1000)에 기초하여 객체 영역(2100)과 배경 영역(2200)을 분류하여 획득된 맵이다. 이때, 카메라(300)와 객체(110) 간의 기준 거리의 길이가 짧아질수록, 카메라(300)를 통하여 획득하는 입력 영상(1000)의 해상도가 높아져, 제1 분류 맵(2000)을 획득하기 위하여 입력 영상(1000)에 기초하여 객체 영역(2100)과 배경 영역(2200)을 분류하는 동작의 정확도가 높을 수 있다. 또한, 제1 분류 맵(2000)에 포함되는 노이즈 영역(2300)이 감소할 수 있다. 따라서, 카메라(300)와 객체(110) 간의 기준 거리의 길이가 짧아질수록, 최종 분류 맵(4000)에 포함되는 제1 분류 맵(2000)의 비율을 높이고, 제2 분류 맵(3000)의 비율을 낮춰 입력 영상(1000)에 포함된 객체 영상(5000) 및 객체 배경 영상을 분류하는 동작의 정확도를 높일 수 있다.
일 실시예에서, 제2 분류 맵(3000)은 제1 분류 맵(2000)을 전처리하여, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 제거하여 획득된 맵이다. 일 실시예에서, 카메라(300)와 객체(110) 간의 기준 거리의 길이가 길어질수록 카메라(300)를 통하여 획득하는 입력 영상(1000)의 해상도가 낮아져, 제1 분류 맵(2000)을 획득하기 위하여 입력 영상(1000)에 기초하여 객체 영역(2100)과 배경 영역(2200)을 분류하는 동작의 정확도가 낮아질 수 있다. 또한, 제1 분류 맵(2000)에 포함되는 노이즈 영역(2300)이 증가할 수 있다. 따라서, 카메라(300)와 객체(110) 간의 기준 거리의 길이가 길어질수록, 최종 분류 맵(4000)에 포함되는 제1 분류 맵(2000)의 비율을 낮추고, 제2 분류 맵(3000)의 비율을 높여 입력 영상(1000)에 포함된 객체 영상(5000) 및 객체 배경 영상을 분류하는 동작의 정확도를 높일 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 최종 분류 맵 획득 모듈(450)을 실행하여, 제2 보정 계수()가 곱해진 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득할 수 있다. 일 실시예에서, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)이 증가할수록, 최종 분류 맵(4000)을 획득함에 있어 제2 분류 맵(3000)의 비율을 높일 수 있다.
일 실시예에서, 도 6a 및 도 6b를 참조하면, 제2 분류 맵(3000)은 제1 분류 맵(2000)을 전처리하여, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 제거하여 획득된 맵이다. 일 실시예에서, 입력 영상(1000)에 포함된 객체 영역(2100)과 배경 영역(2200)을 분류하는 적어도 하나의 프로세서(500)의 검출 성능의 한계 또는 객체의 빠른 움직임 등에 의하여 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)이 증가할 경우, 입력 영상(1000)에 기초하여 객체 영역(2100)과 배경 영역(2200)을 분류하는 동작의 정확도가 낮을 수 있다. 이 경우, 최종 분류 맵(4000)에 포함되는 제1 분류 맵(2000)의 비율을 낮추고, 제2 분류 맵(3000)의 비율을 높여 입력 영상(1000)에 포함된 객체 영상(5000) 및 객체 배경 영상을 분류하는 동작의 정확도를 높일 수 있다.
일 실시예에서, 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)이 감소할 경우, 입력 영상(1000)에 기초하여 객체 영역(2100)과 배경 영역(2200)을 분류하는 동작의 정확도가 높을 수 있다. 이 경우, 최종 분류 맵(4000)에 포함되는 제1 분류 맵(2000)의 비율을 높이고, 제2 분류 맵(3000)의 비율을 낮추어 입력 영상(1000)에 포함된 객체 영상(5000) 및 객체 배경 영상을 분류하는 동작의 정확도를 높일 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 최종 분류 맵 획득 모듈(450)을 실행하여, 제3 보정 계수()가 곱해진 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득할 수 있다. 일 실시예에서, 적어도 하나의 프로세서(500)는 제2 보정 계수() 및 제3 보정 계수()가 곱해진 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득할 수 있다. 일 실시예에서, 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상의 객체 화소 확률 값이 커질수록, 제3 보정 계수()의 크기가 작아지게 하여, 최종 분류 맵(4000)을 획득함에 있어 제2 분류 맵(3000)의 비율을 낮출 수 있다.
일 실시예에서, 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상의 객체 화소 확률 값이 클수록, 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상은 객체 영상에 대응되는 영상일 가능성이 크다. 따라서, 제1 분류 맵(2000)에 노이즈 영역(2300)이 포함되었더라도, 제1 분류 맵(2000)을 획득하기 위하여 입력 영상(1000)에 기초하여 객체 영역(2100)과 배경 영역(2200)을 분류하는 동작의 정확도가 높을 수 있다. 이 경우, 제1 분류 맵(2000)이 노이즈 영역(2300)을 포함하더라도, 제1 분류 맵(2000)에 기초하여 획득된 최종 분류 맵(4000)에 기초하여 입력 영상(1000)에 포함된 객체 영상(5000) 및 객체 배경 영상을 분류하는 동작의 정확도가 높을 수 있다.
또한, 최종 분류 맵(4000)에 포함된 제2 분류 맵(3000)의 비율을 높일 경우, 객체의 움직임 등에 의하여 발생하는 노이즈 영역(2300)을 과하게 보상하여, 오히려 입력 영상(1000)에 포함된 객체 영상(5000) 및 객체 배경 영상을 분류하는 동작의 정확도를 낮출 수도 있다. 따라서, 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상의 객체 화소 확률 값이 클수록, 최종 분류 맵(4000)에 포함되는 제1 분류 맵(2000)의 비율을 높이고, 제2 분류 맵(3000)의 비율을 낮추어 입력 영상(1000)에 포함된 객체 영상(5000) 및 객체 배경 영상을 분류하는 동작의 정확도를 높일 수 있다.
도 10은 본 개시의 일 실시예에 따른 전자 장치 및 전자 장치의 동작 방법의 효과를 설명하기 위한 도면이다.
도 1 및 도 10을 참조하면, 일 실시예에 따른 전자 장치(100) 및 전자 장치(100)의 동작 방법은, 객체 및 객체의 배경을 촬영하여 획득한 입력 영상(1000)에 기초하여 최종 분류 맵(4000)을 획득할 수 있다.
일 실시예에서, 최종 분류 맵(4000)은 카메라(300)와 객체 간의 거리, 객체의 움직임 또는 전자 장치(100)의 성능에 따라 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)에 기초하여 제1 분류 맵(2000) 및 제2 분류 맵(3000)의 비율을 조절하여 획득될 수 있다.
일 실시예에서, 전자 장치(100)는 최종 분류 맵(4000)에 기초하여 입력 영상(1000)에 포함된 객체 영상(5000)을 분류할 수 있다. 일 실시예에서, 분류된 객체 영상(5000)은 최종 분류 맵(4000)에 포함된 객체 영역에 대응되는 영상일 수 있다. 다만, 본 개시는 이에 제한되지 않고, 최종 분류 맵(4000)에 기초하여 입력 영상(1000)에 포함된 객체 영상(5000)을 분류하는 전자 장치와 최종 분류 맵(4000)을 획득하는 전자 장치는 별개의 전자 장치일 수도 있다. 일 실시예에서, 본 개시에 따른 전자 장치(100)는 입력 영상(1000)에 기초하여 최종 분류 맵(4000)을 획득하고, 획득한 최종 분류 맵(4000)을 입력 영상(1000)에 최종 분류 맵(4000)을 적용하여 객체 영상(5000)을 분류하는 별도의 전자 장치로 제공할 수도 있다.
일 실시예에서, 전자 장치(100)는 배경 영상(6000)을 획득할 수 있다. 배경 영상(6000)은 입력 영상(1000)에 포함된 객체 배경 영상과 상이한 배경을 포함하는 영상일 수 있다. 일 실시예에서, 전자 장치(100)는 입력 영상(1000)에 최종 분류 맵(4000)을 적용하여 분류한 객체 영상(5000)과 배경 영상(6000)을 합성하여 합성 영상(7000)을 생성할 수 있다. 이에 따라, 전자 장치(100)는 카메라(300)를 통하여 촬영한 객체 배경 영상이 아닌, 원하는 다른 배경을 객체(110)와 합성할 수 있다.
상술한 기술적 과제를 해결하기 위하여, 일 실시예에서, 적어도 하나의 명령어(instruction)를 저장하는 메모리(400) 및 상기 메모리(400)에 저장된 상기 적어도 하나의 명령어를 실행하는 적어도 하나의 프로세서(500)를 포함하는 전자 장치(100)를 제공한다. 일 실시예에서, 적어도 하나의 프로세서(500)는 카메라(300)를 통하여, 객체 및 객체의 배경을 촬영한 입력 영상(1000)을 획득할 수 있다. 적어도 하나의 프로세서(500)는 획득한 입력 영상(1000)을 객체에 대응되는 객체 영역(2100)과 객체의 배경에 대응되는 배경 영역(2200)으로 분류하여 제1 분류 맵(2000)을 획득할 수 있다. 적어도 하나의 프로세서(500)는 제1 분류 맵(2000)을 전처리하여, 제1 분류 맵(2000)에 포함된 노이즈(Noise) 영역(2300)을 제거한 제2 분류 맵(3000)을 획득할 수 있다. 적어도 하나의 프로세서(500)는 카메라(300)로부터 객체까지의 거리 정보 및 노이즈 영역(2300)을 이용하여, 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 객체에 대응되는 객체 영상(5000)을 획득할 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는, 카메라(300)로부터 객체까지의 거리 정보 및 노이즈 영역(2300)을 이용하여, 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득할 수 있다. 적어도 하나의 프로세서(500)는 최종 분류 맵(4000)을 입력 영상(1000)에 적용하여 객체 영상(5000)을 획득할 수 있다.
일 실시예에서, 제2 분류 맵(3000)은 제1 분류 맵(2000)을 모폴로지(Morphology) 연산하여 획득한 분류 맵일 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 카메라(300)로부터 객체까지의 거리 정보에 기초하여 제1 보정 계수를 계산할 수 있다. 제1 보정 계수는 최종 분류 맵(4000)을 획득함에 있어, 제1 분류 맵(2000)에 곱해지는 제1 서브 보정 계수 및 제2 분류 맵(3000)에 곱해지는 제2 서브 보정 계수를 포함할 수 있다. 카메라로부터 객체까지의 길이가 길어질수록 제1 서브 보정 계수의 크기는 작아지고, 카메라로부터 객체까지의 길이가 길어질수록 제2 서브 보정 계수는 커질 수 있다. 적어도 하나의 프로세서(500)는 제1 서브 보정 계수와 곱해진 제1 분류 맵(2000)과 제2 서브 보정 계수와 곱해진 제2 분류 맵(3000)에 기초하여 객체 영상(5000)을 획득할 수 있다.
일 실시예에서, 제1 서브 보정 계수와 제2 서브 보정 계수의 합은 1일 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 노이즈 영역(2300)에 기초하여 제2 보정 계수를 계산할 수 있다. 제1 분류 맵(2000)에 포함된 객체 영역(2100) 대비 노이즈 영역(2300)의 비율이 커질수록 제2 보정 계수의 크기는 커질 수 있다. 적어도 하나의 프로세서(500)는 제2 보정 계수가 곱해진 제2 분류 맵(3000)에 기초하여 객체 영상(5000)을 획득할 수 있다.
일 실시예에서, 제2 보정 계수는 객체 영역(2100) 대비 노이즈 영역(2300)의 비율, 노이즈 영역(2300)의 개수 및 노이즈 영역(2300)의 면적 중 적어도 하나에 기초하여 계산될 수 있다.
일 실시예에서, 입력 영상(1000)은 복수의 화소 영상들을 포함할 수 있다. 적어도 하나의 프로세서(500)는 입력 영상(1000)에 기초하여 복수의 화소 영상들 각각이 객체에 대응될 확률 값을 계산할 수 있다. 적어도 하나의 프로세서(500)는 복수의 화소 영상들의 배치 및 기 설정된 제1 기준 확률 값과 계산된 확률 값을 비교한 결과에 기초하여 복수의 화소 영상들을 객체 영역(2100)과 배경 영역(2200)으로 분류하여 제1 분류 맵(2000)을 획득할 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 제1 분류 맵(2000)을 획득한 후, 기 설정된 제2 기준 확률 값과 복수의 화소 영상들 중 분류된 객체 영역(2100)에 포함된 적어도 하나의 화소 영상이 객체에 대응될 확률 값을 비교한 결과에 기초하여 객체 영역(2100)에 포함된 노이즈 영역(2300)을 분류할 수 있다. 일 실시예로, 제1 기준 확률 값과 제2 기준 확률 값은 상이한 확률 값일 수 있다.
일 실시예에서, 적어도 하나의 프로세서(500)는 제1 보정 계수, 제2 보정 계수 및 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상이 객체에 대응될 확률 값에 기초하여 계산되는 제3 보정 계수를 이용하여, 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 객체 영상(5000)을 획득할 수 있다.
일 실시예에서, 제3 보정 계수는 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상이 객체에 대응될 확률 값과 반비례할 수 있다. 적어도 하나의 프로세서(500)는 제3 보정 계수가 곱해진 제2 분류 맵(3000)에 기초하여 객체 영상(5000)을 획득할 수 있다.
상술한 기술적 과제를 해결하기 위하여 본 개시의 일 실시예는 전자 장치(100)의 동작 방법을 제공한다. 일 실시예에서, 전자 장치(100)의 동작 방법은 카메라(300)를 통하여, 객체 및 객체의 배경을 촬영한 입력 영상(1000)을 획득하는 단계(S100)를 포함할 수 있다. 전자 장치(100)의 동작 방법은 획득한 입력 영상(1000)을 객체에 대응되는 객체 영역(2100)과 객체의 배경에 대응되는 배경 영역(2200)으로 분류하여 제1 분류 맵(2000)을 획득하는 단계(S200)를 포함할 수 있다. 전자 장치(100)의 동작 방법은 제1 분류 맵(2000)을 전처리하여, 제1 분류 맵(2000)에 포함된 노이즈(Noise) 영역(2300)을 제거한 제2 분류 맵(3000)을 획득하는 단계(S300)를 포함할 수 있다. 전자 장치(100)의 동작 방법은 카메라(300)로부터 객체까지의 거리 정보 및 노이즈 영역(2300)을 이용하여, 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 객체에 대응되는 객체 영상(5000)을 획득하는 단계를 포함할 수 있다.
일 실시예에서, 전자 장치(100)의 동작 방법은, 카메라(300)로부터 객체까지의 거리 정보 및 노이즈 영역(2300)을 이용하여, 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득하는 단계를 더 포함할 수 있다. 일 실시예에서, 객체 영상(5000)을 획득하는 단계(S500)에서는 최종 분류 맵(4000)을 입력 영상(1000)에 적용하여 객체 영상(5000)을 획득할 수 있다.
일 실시예에서, 카메라(300)로부터 객체까지의 거리 정보에 기초하여 계산된 제1 보정 계수는, 객체 영상(5000)을 획득함에 있어, 제1 분류 맵(2000)에 곱해지는 제1 서브 보정 계수 및 제2 분류 맵(3000)에 곱해지는 제2 서브 보정 계수를 포함할 수 있다. 카메라로부터 객체까지의 길이가 길어질수록 제1 서브 보정 계수는 작아지고, 카메라로부터 객체까지의 길이가 길어질수록 제2 서브 보정 계수는 커질 수 있다. 객체 영상(5000)을 획득하는 단계(S500)에서는, 제1 서브 보정 계수가 곱해진 제1 분류 맵(2000)과 제2 서브 보정 계수가 곱해진 제2 분류 맵(3000)에 기초하여 객체 영상(5000)을 획득할 수 있다.
일 실시예에서, 제1 분류 맵(2000)에 포함된 객체 영역(2100) 대비 노이즈 영역(2300)의 비율이 커질수록, 노이즈 영역(2300)에 기초하여 계산되는 제2 보정 계수의 크기는 커질 수 있다. 객체 영상(5000)을 획득하는 단계(S500)에서는, 제2 보정 계수가 곱해진 제2 분류 맵(3000)에 기초하여 객체 영상(5000)을 획득할 수 있다.
일 실시예에서, 제2 보정 계수는 객체 영역(2100) 대비 노이즈 영역(2300)의 비율, 노이즈 영역(2300)의 개수 및 노이즈 영역(2300)의 면적 중 적어도 하나에 기초하여 계산될 수 있다.
일 실시예에서, 입력 영상(1000)은, 복수의 화소 영상들을 포함할 수 있다. 전자 장치(100)의 동작 방법은, 입력 영상(1000)에 기초하여 복수의 화소 영상들 각각이 객체에 대응될 확률 값을 계산하는 단계를 더 포함할 수 있다. 제1 분류 맵을 획득하는 단계(S200)에서는, 복수의 화소 영상들의 배치 및 기 설정된 제1 기준 확률 값과 계산된 확률 값을 비교한 결과에 기초하여 복수의 화소 영상들을 객체 영역(2100)과 배경 영역(2200)으로 분류하여 제1 분류 맵(2000)을 획득할 수 있다.
일 실시예에서, 전자 장치(100)의 동작 방법은, 제1 분류 맵(2000)을 획득하는 단계 이후에, 기 설정된 제2 기준 확률 값과 복수의 화소 영상들 중 분류된 객체 영역(2100)에 포함된 적어도 하나의 화소 영상이 객체에 대응될 확률 값을 비교한 결과에 기초하여 객체 영역(2100)에 포함된 노이즈 영역(2300)을 분류하는 단계를 더 포함할 수 있다. 일 실시예에서, 제1 기준 확률 값과 제2 기준 확률 값은 상이한 확률 값일 수 있다.
일 실시예에서, 객체 영상(5000)을 획득하는 단계(S500)에서는, 제1 보정 계수, 상기 제2 보정 계수, 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상이 객체에 대응될 확률 값에 기초하여 계산되는 제3 보정 계수, 제1 분류 맵(2000) 및 제2 분류 맵(3000)에 기초하여 객체 영상(5000)을 획득할 수 있다.
일 실시예에서, 제3 보정 계수는, 노이즈 영역(2300)에 포함된 적어도 하나의 복수 영상이 객체에 대응될 확률 값과 반비례할 수 있다. 객체 영상(5000)을 획득하는 단계(S500)에서는, 제3 보정 계수가 곱해진 제2 분류 맵(3000)에 기초하여 객체 영상(5000)을 획득할 수 있다.
일 실시예에서, 개시된 전자 장치(100)의 동작 방법의 실시예 중 적어도 하나의 방법을 컴퓨터에서 수행하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체를 제공할 수 있다.
본 개시에서 설명된 전자 장치(100)에 의해 수행되는 동작 방법은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 프로그램은 컴퓨터로 읽을 수 있는 명령어들을 수행할 수 있는 모든 시스템에 의해 수행될 수 있다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령어(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다.
소프트웨어는, 컴퓨터로 읽을 수 있는 저장 매체(computer-readable storage media)에 저장된 명령어를 포함하는 컴퓨터 프로그램으로 구현될 수 있다. 컴퓨터가 읽을 수 있는 기록 매체로는, 예를 들어 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다. 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다. 기록 매체는 컴퓨터에 의해 판독 가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다.
컴퓨터로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
또한, 본 명세서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다.
컴퓨터 프로그램 제품은 소프트웨어 프로그램, 소프트웨어 프로그램이 저장된 컴퓨터로 읽을 수 있는 저장 매체를 포함할 수 있다. 예를 들어, 컴퓨터 프로그램 제품은 전자 장치(100)의 제조사 또는 전자 마켓(예를 들어, 삼성 갤럭시 스토어)을 통해 전자적으로 배포되는 소프트웨어 프로그램 형태의 상품(예를 들어, 다운로드 가능한 애플리케이션(downloadable application))을 포함할 수 있다. 전자적 배포를 위하여, 소프트웨어 프로그램의 적어도 일부는 저장 매체에 저장되거나, 임시적으로 생성될 수 있다. 이 경우, 저장 매체는 전자 장치(100)의 제조사의 서버, 전자 마켓의 서버, 또는 소프트웨어 프로그램을 임시적으로 저장하는 중계 서버의 저장 매체가 될 수 있다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 컴퓨터 시스템 또는 모듈 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
Claims (15)
- 적어도 하나의 명령어(instruction)를 저장하는 메모리(400); 및상기 메모리(400)에 저장된 상기 적어도 하나의 명령어를 실행하는 적어도 하나의 프로세서(500)를 포함하고,상기 적어도 하나의 프로세서(500)는 상기 적어도 하나의 명령어를 실행함으로써,카메라(300)를 통하여 객체 및 상기 객체의 배경을 캡쳐한 입력 영상(1000)을 획득하고,상기 획득한 입력 영상(1000)의 제1 부분을 상기 객체에 대응되는 객체 영역(2100)으로 분류하고, 상기 획득한 입력 영상(1000)의 제2 부분을 객체의 배경에 대응되는 배경 영역(2200)으로 분류하여 제1 분류 맵(2000)을 획득하고,상기 제1 분류 맵(2000)을 전처리하여, 상기 제1 분류 맵(2000)에 포함된 노이즈(Noise) 영역(2300)을 제거한 제2 분류 맵(3000)을 획득하고,상기 카메라로부터 상기 객체까지의 거리 정보 및 상기 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 이용하여, 상기 제1 분류 맵(2000) 및 상기 제2 분류 맵(3000)에 기초하여 상기 객체에 대응되는 객체 영상(5000)을 획득하는 전자 장치(100).
- 제1 항에 있어서,상기 적어도 하나의 프로세서(500)는 상기 적어도 하나의 명령어를 실행함으로써,상기 카메라로부터 상기 객체까지의 거리 정보 및 상기 노이즈 영역(2300)을 이용하여, 상기 제1 분류 맵(2000) 및 상기 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득하고,상기 최종 분류 맵(4000)을 상기 입력 영상(1000)에 적용하여 상기 객체 영상(5000)을 획득하는 전자 장치(100).
- 제1 또는 제2 항 중 어느 하나의 항에 있어서,상기 제2 분류 맵(3000)은, 상기 제1 분류 맵(2000)을 모폴로지(Morphology) 연산하여 획득한 분류 맵인 전자 장치(100).
- 제1 내지 제3 항 중 어느 하나의 항에 있어서,상기 적어도 하나의 프로세서(500)는 상기 적어도 하나의 명령어를 실행함으로써,상기 카메라로부터 상기 객체까지의 거리 정보에 기초하여 제1 보정 계수를 계산하고,상기 제1 보정 계수는, 상기 객체 영상을 획득함에 있어, 제1 서브 보정 계수 및 제2 서브 보정 계수를 포함하고,상기 카메라로부터 상기 객체까지의 길이가 길어질수록 상기 제1 서브 보정 계수의 크기는 작아지고, 상기 카메라로부터 상기 객체까지의 길이가 길어질수록 상기 제2 서브 보정 계수의 크기는 커지며,상기 적어도 하나의 프로세서(500)는 상기 적어도 하나의 명령어를 실행함으로써,상기 제1 서브 보정 계수와 곱해진 제1 분류 맵(2000)과 상기 제2 서브 보정 계수와 곱해진 제2 분류 맵(3000)에 기초하여 상기 객체 영상(5000)을 획득하는 전자 장치(100).
- 제1 내지 제4 항 중 어느 하나의 항에 있어서,상기 적어도 하나의 프로세서(500)는 상기 적어도 하나의 명령어를 실행함으로써,상기 노이즈 영역(2300)에 기초하여 제2 보정 계수를 계산하고,상기 제1 분류 맵(2000)에 포함된 상기 객체 영역(2100) 대비 상기 노이즈 영역(2300)의 비율이 커질수록 상기 제2 보정 계수의 크기는 커지며,상기 적어도 하나의 프로세서(500)는 상기 적어도 하나의 명령어를 실행함으로써,상기 제2 보정 계수가 곱해진 상기 제2 분류 맵(3000)에 기초하여 상기 객체 영상(5000)을 획득하는 전자 장치(100).
- 제5 항에 있어서,상기 제2 보정 계수는,상기 객체 영역(2100) 대비 상기 노이즈 영역(2300)의 비율, 상기 노이즈 영역(2300)의 개수 또는 상기 노이즈 영역(2300)의 면적 중 적어도 하나에 기초하여 계산되는 전자 장치(100).
- 제1 내지 6 항 중 어느 하나의 항에 있어서,상기 입력 영상(1000)은, 복수의 화소 영상들을 포함하고,상기 적어도 하나의 프로세서(500)는 상기 적어도 하나의 명령어를 실행함으로써,상기 입력 영상(1000)에 기초하여, 상기 복수의 화소 영상들 각각이 상기 객체에 대응될 확률 값을 계산하고,상기 복수의 화소 영상들의 배치 및 기 설정된 제1 기준 확률 값과 상기 계산된 확률 값을 비교한 결과에 기초하여 상기 복수의 화소 영상들을 상기 객체 영역(2100)과 상기 배경 영역(2200)으로 분류하여 상기 제1 분류 맵(2000)을 획득하는 전자 장치.
- 제7 항에 있어서,상기 적어도 하나의 프로세서(500)는 상기 적어도 하나의 명령어를 실행함으로써,상기 제1 분류 맵(2000)을 획득한 후, 기 설정된 제2 기준 확률 값과 상기 복수의 화소 영상들 중 상기 분류된 객체 영역(2100)에 포함된 적어도 하나의 화소 영상이 상기 객체에 대응될 확률 값을 비교한 결과에 기초하여 상기 객체 영역(2100)에 포함된 상기 노이즈 영역(2300)을 분류하고,상기 제2 기준 확률 값은, 상기 제1 기준 확률 값과 상이한 확률 값인 전자 장치(100).
- 제8 항에 있어서,상기 적어도 하나의 프로세서(500)는 상기 적어도 하나의 명령어를 실행함으로써,상기 제1 보정 계수, 상기 제2 보정 계수 및 상기 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상이 상기 객체에 대응될 확률 값에 기초하여 계산되는 제3 보정 계수를 이용하여, 상기 제1 분류 맵(2000) 및 상기 제2 분류 맵(3000)에 기초하여 상기 객체 영상(5000)을 획득하는 전자 장치(100).
- 제9 항에 있어서,상기 제3 보정 계수는,상기 노이즈 영역(2300)에 포함된 적어도 하나의 화소 영상이 상기 객체에 대응될 확률 값과 반비례하며,상기 적어도 하나의 프로세서(500)는 상기 적어도 하나의 명령어를 실행함으로써,상기 제3 보정 계수가 곱해진 상기 제2 분류 맵(3000)에 기초하여 상기 객체 영상(5000)을 획득하는 전자 장치(100).
- 전자 장치(100)의 동작 방법에 있어서,카메라(300)를 통하여, 객체 및 상기 객체의 배경을 캡쳐한 입력 영상(1000)을 획득하는 단계(S100);상기 획득한 입력 영상(1000)의 제1 부분을 상기 객체에 대응되는 객체 영역(2100)으로 분류하고, 상기 획득한 입력 영상(1000)의 제2 부분을 상기 객체의 배경에 대응되는 배경 영역(2200)으로 분류하여 제1 분류 맵(2000)을 획득하는 단계(S200);상기 제1 분류 맵(2000)을 전처리하여, 상기 제1 분류 맵(2000)에 포함된 노이즈(Noise) 영역(2300)을 제거한 제2 분류 맵(3000)을 획득하는 단계(S300);상기 카메라(300)로부터 상기 객체까지의 거리 정보 및 상기 제1 분류 맵(2000)에 포함된 노이즈 영역(2300)을 이용하여, 상기 제1 분류 맵(2000) 및 상기 제2 분류 맵(3000)에 기초하여 상기 객체에 대응되는 객체 영상(5000)을 획득하는 단계(S500)를 포함하는 전자 장치(100)의 동작 방법.
- 제11 항에 있어서,상기 전자 장치(100)의 동작 방법은,상기 카메라로부터 상기 객체까지의 거리 정보 및 상기 노이즈 영역(2300)을 이용하여, 상기 제1 분류 맵(2000) 및 상기 제2 분류 맵(3000)에 기초하여 최종 분류 맵(4000)을 획득하는 단계를 더 포함하고,상기 객체 영상(5000)을 획득하는 단계(S500)에서는, 상기 최종 분류 맵(4000)을 상기 입력 영상(1000)에 적용하여 상기 객체 영상(5000)을 획득하는 전자 장치(100)의 동작 방법.
- 제11 또는 제12 항 중 어느 하나의 항에 있어서,상기 카메라로부터 상기 객체까지의 거리 정보에 기초하여 계산된 제1 보정 계수는, 상기 객체 영상(5000)을 획득함에 있어, 제1 서브 보정 계수 및 제2 서브 보정 계수를 포함하고,상기 카메라로부터 상기 객체까지의 길이가 길어질수록 상기 제1 서브 보정 계수의 크기는 작아지고, 상기 카메라로부터 상기 객체까지의 길이가 길어질수록 상기 제2 서브 보정 계수의 크기는 커지며,상기 객체 영상(5000)을 획득하는 단계(S500)에서,상기 제1 서브 보정 계수가 곱해진 제1 분류 맵(2000)과 상기 제2 서브 보정 계수가 곱해진 제2 분류 맵(3000)에 기초하여 상기 객체 영상(5000)을 획득하는 전자 장치(100)의 동작 방법.
- 제11 내지 제13 항 중 어느 하나의 항에 있어서,상기 제1 분류 맵(2000)에 포함된 상기 객체 영역(2100) 대비 상기 노이즈 영역(2300)의 비율이 커질수록, 상기 노이즈 영역(2300)에 기초하여 계산되는 제2 보정 계수의 크기는 커지며,상기 객체 영상(5000)을 획득하는 단계(S500)에서,상기 제2 보정 계수가 곱해진 상기 제2 분류 맵(3000)에 기초하여 상기 객체 영상(5000)을 획득하는 전자 장치(100)의 동작 방법.
- 제11 항 내지 제14항 중 어느 하나의 항에 기재된 방법을 컴퓨터에서 수행하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/629,439 US20240257498A1 (en) | 2022-09-27 | 2024-04-08 | Electronic apparatus for classifying object region and background region and operating method of the electronic apparatus |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2022-0122873 | 2022-09-27 | ||
KR1020220122873A KR20240043594A (ko) | 2022-09-27 | 2022-09-27 | 객체 영역과 배경 영역을 분류하기 위한 전자 장치 및 전자 장치의 동작 방법 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US18/629,439 Continuation US20240257498A1 (en) | 2022-09-27 | 2024-04-08 | Electronic apparatus for classifying object region and background region and operating method of the electronic apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024071813A1 true WO2024071813A1 (ko) | 2024-04-04 |
Family
ID=90478512
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2023/014266 WO2024071813A1 (ko) | 2022-09-27 | 2023-09-20 | 객체 영역과 배경 영역을 분류하기 위한 전자 장치 및 전자 장치의 동작 방법 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240257498A1 (ko) |
KR (1) | KR20240043594A (ko) |
WO (1) | WO2024071813A1 (ko) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012230671A (ja) * | 2011-04-22 | 2012-11-22 | Mitsubishi Electric Corp | シーンにおけるオブジェクトを分類する方法 |
KR101384627B1 (ko) * | 2012-10-26 | 2014-04-11 | 전남대학교산학협력단 | 영상 내 객체 영역 자동분할 방법 |
KR101868103B1 (ko) * | 2017-07-12 | 2018-06-18 | 군산대학교 산학협력단 | 다중 이동 물체의 식별 및 추적을 위한 영상 감시 장치 및 방법 |
KR20210042563A (ko) * | 2019-10-10 | 2021-04-20 | 주식회사 신세계아이앤씨 | 전경 분리 장치 및 방법 |
KR20220037172A (ko) * | 2020-09-17 | 2022-03-24 | 엘지이노텍 주식회사 | 깊이 영상 보정 장치 및 그 방법 |
-
2022
- 2022-09-27 KR KR1020220122873A patent/KR20240043594A/ko unknown
-
2023
- 2023-09-20 WO PCT/KR2023/014266 patent/WO2024071813A1/ko unknown
-
2024
- 2024-04-08 US US18/629,439 patent/US20240257498A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012230671A (ja) * | 2011-04-22 | 2012-11-22 | Mitsubishi Electric Corp | シーンにおけるオブジェクトを分類する方法 |
KR101384627B1 (ko) * | 2012-10-26 | 2014-04-11 | 전남대학교산학협력단 | 영상 내 객체 영역 자동분할 방법 |
KR101868103B1 (ko) * | 2017-07-12 | 2018-06-18 | 군산대학교 산학협력단 | 다중 이동 물체의 식별 및 추적을 위한 영상 감시 장치 및 방법 |
KR20210042563A (ko) * | 2019-10-10 | 2021-04-20 | 주식회사 신세계아이앤씨 | 전경 분리 장치 및 방법 |
KR20220037172A (ko) * | 2020-09-17 | 2022-03-24 | 엘지이노텍 주식회사 | 깊이 영상 보정 장치 및 그 방법 |
Also Published As
Publication number | Publication date |
---|---|
US20240257498A1 (en) | 2024-08-01 |
KR20240043594A (ko) | 2024-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019164232A1 (ko) | 전자 장치, 이의 영상 처리 방법 및 컴퓨터 판독가능 기록 매체 | |
AU2017244245B2 (en) | Electronic device and operating method thereof | |
WO2017010695A1 (en) | Three dimensional content generating apparatus and three dimensional content generating method thereof | |
WO2019050360A1 (en) | ELECTRONIC DEVICE AND METHOD FOR AUTOMATICALLY SEGMENTING TO BE HUMAN IN AN IMAGE | |
WO2021101134A1 (en) | Electronic apparatus and control method thereof | |
WO2016126083A1 (ko) | 주변 상황 정보를 통지하기 위한 방법, 전자 장치 및 저장 매체 | |
WO2020080734A1 (ko) | 얼굴 인식 방법 및 얼굴 인식 장치 | |
WO2019017720A1 (ko) | 사생활 보호를 위한 카메라 시스템 및 그 방법 | |
WO2022035054A1 (ko) | 로봇 및 이의 제어 방법 | |
WO2022019390A1 (ko) | 데이터 증강 기반 사물 분석 모델 학습 장치 및 방법 | |
WO2024071813A1 (ko) | 객체 영역과 배경 영역을 분류하기 위한 전자 장치 및 전자 장치의 동작 방법 | |
WO2020122513A1 (ko) | 2차원 이미지 처리 방법 및 이 방법을 실행하는 디바이스 | |
WO2020130274A1 (ko) | 영상에서 오브젝트를 인식하는 전자 장치 및 그 동작 방법 | |
WO2022019389A1 (ko) | 데이터 증강 기반 공간 분석 모델 학습 장치 및 방법 | |
WO2020055097A1 (ko) | 객체를 인식하는 전자 장치 및 그 전자 장치를 제어하는 방법 | |
WO2022080676A1 (ko) | 전자 장치 및 제어 방법 | |
WO2023121053A1 (ko) | 전자 장치 및 그 제어 방법 | |
WO2023149649A1 (ko) | 전자 장치 및 이미지 화질 개선 방법 | |
WO2024085352A1 (ko) | 인공 지능 모델의 학습을 위한 훈련용 데이터를 생성하는 방법 및 전자 장치 | |
WO2024053876A1 (ko) | 카메라 캘리브레이션(camera calibration)을 수행하는 전자 장치 및 그 동작 방법 | |
WO2024053895A1 (ko) | 현실 공간에서 객체를 제어하는 증강 현실 서비스를 제공하는 증강 현실 디바이스 및 그 동작 방법 | |
WO2023068571A1 (ko) | 전자 장치 및 전자 장치의 제어 방법 | |
WO2023101167A1 (ko) | 후면 영상정보 생성 장치 및 방법 | |
WO2024048842A1 (ko) | 식별 이미지 내 얼굴을 비식별화 처리하는 장치 및 방법 | |
WO2024155087A1 (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: 23872931 Country of ref document: EP Kind code of ref document: A1 |