WO2022019670A1 - 이미지 데이터베이스 분석 기반 상품 추천 장치 및 방법 - Google Patents

이미지 데이터베이스 분석 기반 상품 추천 장치 및 방법 Download PDF

Info

Publication number
WO2022019670A1
WO2022019670A1 PCT/KR2021/009473 KR2021009473W WO2022019670A1 WO 2022019670 A1 WO2022019670 A1 WO 2022019670A1 KR 2021009473 W KR2021009473 W KR 2021009473W WO 2022019670 A1 WO2022019670 A1 WO 2022019670A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
spatial image
spatial
color
class
Prior art date
Application number
PCT/KR2021/009473
Other languages
English (en)
French (fr)
Inventor
백윤아
윤대희
Original Assignee
주식회사 어반베이스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 어반베이스 filed Critical 주식회사 어반베이스
Priority to CN202180060892.2A priority Critical patent/CN116420155A/zh
Priority to JP2023504704A priority patent/JP2023537268A/ja
Priority to EP21847334.6A priority patent/EP4184414A1/en
Publication of WO2022019670A1 publication Critical patent/WO2022019670A1/ko
Priority to US18/156,808 priority patent/US20230153889A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/53Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/55Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5838Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5854Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using shape and object relationship
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0621Item configuration or customization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0623Item investigation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0641Shopping interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/187Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/35Categorising the entire scene, e.g. birthday party or wedding scene
    • G06V20/36Indoor scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/10Recognition assisted with metadata

Definitions

  • the present invention relates to an apparatus and method for recommending products based on image database analysis.
  • the size of the domestic online shopping market in 2019 was about 133 trillion won, showing a 20% growth rate compared to 111 trillion won in 2018.
  • the number of stores and products registered on the online shopping platform is rapidly increasing, and the proportion of consumers purchasing products through online stores rather than offline stores is significantly increasing.
  • the elements composing the image of a product can be broadly divided into space, objects, the style (atmosphere) of the background in which the product is used, and color. Because buyers also consider the use of the space where the product is used, the product itself, the atmosphere of the space, and the color of the space as important factors when searching for a product, any of the space, object, style, and color that constitute the product image Search by combining a single keyword.
  • the problem to be solved in the embodiment of the present invention is the use of space indicated by the image automatically included in the database for a database including vast images of space and products owned by a shopping mall, products placed in the space, and space It is intended to provide a technology for extracting metadata that can specify color matching with atmosphere and space color.
  • the image classification AI algorithm which is a technique used in the embodiment of the present invention, may have a large difference in the performance of the model depending on the quantity and quality of the learning data used for learning.
  • artificial intelligence model learning in order to create a model with excellent performance only with limited training data, it is important to train the model through training data including variables of various environments or situations in which the model will be actually used.
  • the present invention provides a data augmentation technique for generating learning data including variables of various environments or situations in which the model is actually used in generating a model for classifying various information contained in a spatial image.
  • An image database analysis-based product recommendation apparatus includes one or more memories for storing instructions to perform a predetermined operation; and one or more processors connected to operate with the one or more memories and configured to execute the instructions, wherein the operation performed by the processor includes an image database including an image file for a product placed in a predetermined space acquiring action; extracting metadata for specifying a color matching suitable for use of space, type of object, style and color of space included in the image file, and mapping the metadata to the image file or product information of the product; an operation of determining a category for at least one of a space use, a type of an object, a space style, and a color arrangement as category information for selecting a predetermined product; and searching for an image file or product information mapped with metadata corresponding to the determined category from the image database and recommending it.
  • the operation of determining the category may include: acquiring a first image of a user's space; extracting metadata for specifying a use of a space, a type of an object, a style and color arrangement of a space included in the first image; and determining product selection of a category that includes metadata about the use of space, space style, and color arrangement extracted from the sample image without including metadata about the type of thing extracted from the first image It can include actions.
  • the operation of determining the category may include: acquiring a first image of a user's space; extracting metadata for specifying a use of a space, a type of an object, a style and color arrangement of a space included in the first image; and metadata on one object selected by the user among metadata on the type of object extracted from the first image, and metadata on the use of space, space style, and color arrangement extracted from the first image. It may include an operation of determining product selection of a category including data.
  • mapping the metadata further includes extracting the metadata using a first neural network model that specifies a use of a space included in the spatial image, wherein the first neural network model is performed by a processor, generating training data by acquiring a spatial image of , and labeling a class specifying spatial information corresponding to each of the plurality of spatial images, or acquiring a plurality of spatial images labeled with the class; augmenting the learning data by generating a second spatial image obtained by changing some or all of the pixel information included in the first spatial image among the plurality of spatial images; labeling the class labeled in the first spatial image on the second spatial image; and input the augmented training data to a model designed based on a predetermined image classification algorithm, and learn the weight of the model for deriving a correlation between a spatial image included in the training data and a class labeled in each of the spatial images.
  • it may be generated by performing an operation of generating a model for determining a class for a spatial image based on the
  • mapping the metadata further includes the operation of extracting the metadata using a second neural network model that specifies the type of object included in the spatial image, wherein the second neural network model is obtaining a first spatial image including a first object image and generating a second spatial image obtained by changing pixel information included in the first spatial image; designating a bounding box in a region including the first object image in the first spatial image, and labeling the bounding box with a first class specifying the first object image; By inputting the first spatial image to a model designed based on a predetermined image classification algorithm, by first learning the weight of the model for deriving the correlation between the first object image and the first class in the bounding box, generating a model for specifying an object image included in a spatial image and determining a class based on the correlation; By inputting the second spatial image to the first learned model, a bounding box in which the model specifies a second object image in the second spatial image and a second class determined by the model with respect to the second object image labeling the
  • mapping the metadata further includes extracting the metadata using a third neural network model that specifies a style of space included in the spatial image, wherein the third neural network model is performed by a processor, generating learning data by acquiring a plurality of spatial images and labeling a class specifying style information corresponding to each of the plurality of spatial images, or acquiring a plurality of spatial images labeled with the class; augmenting the learning data by generating a second spatial image obtained by changing pixel information included in a first spatial image among the plurality of spatial images within a predetermined range; labeling the class labeled in the first spatial image on the second spatial image; and input the augmented training data to a model designed based on a predetermined image classification algorithm, and learn the weight of the model for deriving a correlation between a spatial image included in the training data and a class labeled in each of the spatial images.
  • it may be generated by performing an operation of generating a model for determining a class for a style of a spatial image
  • the generating of the second spatial image includes an element having a value greater than a predetermined reference value with respect to (x, y, z) element values constituting RGB information of pixel information included in the first spatial image. and generating the second spatial image by changing a value to have a larger value and changing an element value having a smaller value than the reference value to have a smaller element value.
  • the operation of generating the second spatial image comprises:
  • RGB among RGB information (x, y, z) of pixel information
  • x, G among RGB information (x, y, z) of pixel information
  • y B: among RGB information (x, y, z) of pixel information
  • Y element value after pixel information change (x', y', z')
  • the generating of the second spatial image may include generating the second spatial image by adding noise information to a part of pixel information included in the first spatial image.
  • the operation of generating the second spatial image includes: R of a plurality of pixels included in the size of an NxN (N is a natural number equal to or greater than 3) matrix including the first pixel among the pixels included in the first spatial image in the center; (R_max - R_avg, G_max-G_avg, B_max-B_avg) is obtained, and when any one of the element values of (R_max-R_avg, G_max-G_avg, B_max-B_avg) is smaller than a preset value, an operation for blurring the first pixel is performed. and generating the second spatial image by performing it.
  • the generating of the second spatial image includes generating random number information following a standard Gaussian normal distribution with an average of 0 and a standard deviation of 100 as many as the number of all pixels included in the first spatial image, and and generating the second spatial image in which noise is inserted by adding each of the random number information to each.
  • the operation of generating the second-learned model may include inputting the second spatial image to the first-learned model, and weighting the model for deriving a correlation between the second object image and the second class.
  • it may include an operation of specifying an object image included in a spatial image based on the correlation and generating a model for determining a class.
  • the labeling of the second spatial image includes inputting the second spatial image to the first learned model, and dividing the second class determined by the model with respect to the second object image with the first class.
  • the value of the second class is maintained, and when the second class and the first class are different, the value of the second class is set to the first class It may include an operation of modifying to the same value as .
  • the bounding box may include one object image per one bounding box, but may be set to include all border regions of the object image inside the bounding box.
  • the operation of specifying the color scheme of the mapping of the metadata may include: receiving a spatial image included in the image file; determining a type of color constituting the spatial image and a ratio in which each type of color is used in the spatial image; selecting a first color that is a part of the colors constituting the spatial image in an order of increasing a ratio of colors used in the spatial image; determining an element value in which each of the first colors is located on a predetermined color image scale using soft and dynamic elements as elements; calculating a color arrangement element value that is combined by adding the weight to the element value of each of the first colors using a ratio of each of the first colors used in the spatial image as a weight; and recommending a color arrangement group including the color arrangement element value on the color image scale as a color arrangement suitable for the spatial image.
  • the determining of the ratio includes analyzing the spatial image based on a k-means clustering algorithm to determine the type of color constituting the spatial image and the ratio in which each type of color is used in the spatial image It can include actions.
  • the selecting of the first color may include: selecting n colors (where n is a natural number) constituting the spatial image in an order of increasing a ratio of colors used in the spatial image; and a% (a is 100 or less when the sum of the ratios of the n colors used in the spatial image is converted to 100%, and the ratios are accumulated in the order of increasing the ratio among the n colors. and selecting a color until it exceeds a natural number) as the first color.
  • the operation of calculating the color matching element value includes applying a weighted arithmetic average to the element value of each of the first colors by using the ratio of each of the first colors used in the spatial image as a weight, and thus the color scheme element value It may include an operation of calculating
  • the operation of calculating the color matching element value includes using each ratio derived by converting a sum of ratios used in the spatial image of each of the first colors into 100% as a weight for each of the first colors, and calculating the color arrangement element value by applying a weighted arithmetic mean to the two-dimensional element value of each of the first colors.
  • An image database analysis-based product recommendation method performed by an image database analysis-based product recommendation apparatus includes: acquiring an image database including an image file of a product disposed in a predetermined space; extracting metadata for specifying a color matching suitable for use of space, type of object, style and color of space included in the image file, and mapping the metadata to the image file or product information of the product; Determining a category for at least one of space use, type of object, space style, and color arrangement as category information for selecting a predetermined product; and searching for an image file or product information mapped with metadata corresponding to the determined category in the image database and recommending it.
  • an embodiment of the present invention can provide an image classification model with improved performance and easy learning by automating the labeling process by labeling the class for the augmented learning data identically to the original learning data.
  • online shopping malls can effectively introduce consumers' traffic to product pages by using keywords related to products only with product images, and consumers can also find the keywords they need using their desired images available for search.
  • FIG. 1 is an exemplary diagram illustrating a state in which an image database analysis-based product recommendation apparatus according to an embodiment of the present invention recommends a product by specifying a space use, a type of an object, a space style, and a color matching with the space.
  • FIG. 2 is a functional block diagram of a product recommendation apparatus based on image database analysis according to an embodiment of the present invention.
  • FIG 3 is an operation flowchart of an image database analysis-based product recommendation apparatus according to an embodiment of the present invention.
  • FIG. 4 is an exemplary diagram of an operation in which the image database analysis-based product recommendation apparatus trains a neural network model for determining the type of an object according to an embodiment of the present invention.
  • FIG. 5 is an exemplary diagram for explaining a class determined by a neural network for classifying a style for a space according to an embodiment of the present invention.
  • FIG. 6 is an exemplary diagram of a second spatial image (b) in which the image database analysis-based product recommendation apparatus changes pixel information of the first spatial image (a) within a predetermined range.
  • FIG. 7 is an exemplary diagram of a second spatial image (b) in which the image database analysis-based product recommendation apparatus changes pixel information of the first spatial image (a) within a predetermined range.
  • 8A is an exemplary diagram of a second spatial image generated according to an embodiment in which data is augmented by applying a gray scale to pixel information included in the first spatial image.
  • 8B is an exemplary diagram of a second spatial image generated according to an embodiment in which data is augmented by adding noise to a portion of pixel information included in the first spatial image.
  • FIG. 9 is an exemplary diagram for explaining a method of generating a second spatial image by dividing an edge region of an object included in a first spatial image and applying a blur to a non-edge region.
  • FIG. 10 is an exemplary diagram of a second spatial image generated according to an embodiment in which data is augmented by adding noise information according to a Gaussian normal distribution to the first spatial image.
  • FIG. 11 is an exemplary diagram for explaining an operation of extracting, by the image database-based product recommendation apparatus according to an embodiment of the present invention, five colors mainly used in a spatial image and a usage ratio.
  • FIG. 12 is an exemplary diagram of a color image scale in which colors are arranged in a two-dimensional coordinate plane with soft and dynamic axes.
  • 13 is an exemplary diagram of groups classified based on ranges of soft values and dynamic values for colors on a color image scale.
  • FIG. 14 is an exemplary diagram in which colors included in a color palette are arranged on a three-dimensional coordinate plane with R, G, and B as axes.
  • a component when it is mentioned that a component is connected or connected to another component, it may be directly connected or connected to the other component, but it should be understood that another component may exist in the middle.
  • FIG. 1 is an exemplary diagram illustrating a state in which an image database analysis-based product recommendation apparatus 100 according to an embodiment of the present invention recommends a product by specifying a space use, a type of object, a space style, and a color matching with the space. to be.
  • the image database analysis-based product recommendation apparatus 100 for an image database including a plurality of image files, the use of space included in the image, the type of object, and the space After extracting the metadata that specifies the color matching style and color of the space and mapping it with the image file in the image database, the above-mentioned metadata can be updated to be mapped to the image database owned by the shopping mall, etc.
  • the service provider of may perform an operation of recommending a product suitable for a user by using an image database to which such metadata is mapped.
  • the image database analysis-based product recommendation apparatus 100 may utilize a neural network model and a color scheme recommendation algorithm to be described later in order to extract the above-described metadata from an image.
  • FIG. 2 is a functional block diagram of an image database analysis-based product recommendation apparatus 100 according to an embodiment of the present invention.
  • the image database analysis-based product recommendation apparatus 100 includes a memory 110 , a processor 120 , an input interface 130 , a display unit 140 , and a communication interface 150 .
  • a memory 110 includes a processor 120 , an input interface 130 , a display unit 140 , and a communication interface 150 .
  • a communication interface 150 may include
  • the memory 110 may include a training data DB 111 , a neural network model 113 , a spatial image DB 115 , a color data DB 117 , and a command DB 119 .
  • the learning data DB 111 may include a spatial image file obtained by photographing a specific space, such as an indoor space or an external space.
  • the spatial image may be acquired through an external server, an external DB, or a spatial image on the Internet.
  • the spatial image may be composed of a plurality of pixels (eg, M*N pixels in the form of M horizontal and N vertical matrix), and each pixel is R(Red), G(Green), B(Blue). ) may include pixel information composed of RGB element values (x, y, z) representing a unique color.
  • the neural network model 113 is a first neural network model that determines the use of space included in the image, a second neural network model that determines the type of object included in the image, and a third neural network model that determines the style of space included in the image.
  • the first to third neural network models may be artificial intelligence models learned based on an image classification artificial intelligence algorithm to determine a class specifying specific information included in an image according to each of the above-described purposes.
  • the artificial intelligence model may be generated by an operation of the processor 120 to be described later and stored in the memory 110 .
  • the spatial image DB 115 may include a spatial image file including objects (eg, products) arranged in a predetermined space.
  • the spatial image may be acquired through an external server, an external DB, or a spatial image on the Internet.
  • the spatial image may be composed of a plurality of pixels (eg, M*N pixels in the form of M horizontal and N vertical matrix), and each pixel is R(Red), G(Green), B(Blue). ) may include pixel information composed of RGB element values (x, y, z) representing a unique color.
  • the color data DB 117 includes a color palette including RGB information for a plurality of colors and a color image scale capable of classifying colors according to various element values (eg, soft, dynamic, brightness, saturation, hue, etc.) can do.
  • a color palette including RGB information for a plurality of colors and a color image scale capable of classifying colors according to various element values (eg, soft, dynamic, brightness, saturation, hue, etc.) can do.
  • the command DB 119 may store commands capable of performing an operation of the processor 120 .
  • the command DB 119 may store computer code for performing operations corresponding to operations of the processor 120 to be described later.
  • the processor 120 may control the overall operation of the components included in the image database analysis-based product recommendation apparatus 100 , the memory 110 , the input interface 130 , the display unit 140 , and the communication interface 150 . have.
  • the processor 120 includes a labeling module 121, an augmentation module 122, a learning module 123, a color discrimination module 124, a color matching module 125, a DB generation module 126, and a control module 127.
  • Processor 120 executes instructions stored in memory 110 to label module 121, augmentation module 122, learning module 123, color discrimination module 124, color matching module 125, DB generation module 126 and the control module 127 can be driven, the labeling module 121, the augmentation module 122, the learning module 123, the color discrimination module 124, the color matching module 125, the DB generation module
  • An operation performed by 126 and the control module 127 may be understood as an operation performed by the processor 120 .
  • the labeling module 121 includes the use of space (eg, living room, kitchen, bathroom, bedroom, etc.) represented by each image of a plurality of space images, the type of object (eg. picture frame, bed, carpet, TV, etc.), style of space
  • space e.g. living room, kitchen, bathroom, bedroom, etc.
  • the type of object e.g. picture frame, bed, carpet, TV, etc.
  • style of space By labeling (mapping) a class that specifies (ex. modern, romantic, classic, natural, casual, Nordic, vintage, etc.), training data to be used for learning the AI model can be created and stored in the training data DB 111 .
  • the labeling module 121 may acquire a spatial image through an external server, an external DB, or acquire a spatial image on the Internet.
  • a class specifying specific information may be pre-labeled in the spatial image.
  • the augmentation module 122 changes pixel information included in the spatial image stored in the learning data DB 111 (the spatial image to which the augmentation module does not apply deformation hereinafter referred to as a 'first spatial image') within a predetermined range.
  • the training data may be augmented by generating a spatial image (the spatial image to which the augmentation module has deformed, hereinafter referred to as a 'second spatial image'), and the second spatial image may be added and stored in the training data DB 111 .
  • the labeling module 121 automates the labeling process for the augmented learning data by labeling the class labeled in the first spatial image on the second spatial image with respect to the newly created second spatial image before labeling is performed. By doing so, the labeling time can be shortened.
  • the augmentation module 122 reflects the variables that can actually occur with respect to one spatial image so as to learn variables that can occur according to the characteristics of the camera used for shooting, the shooting time, and the habit of the person taking the picture.
  • the quantity of learning data may be increased through the data augmentation algorithm of FIGS. 7 to 10 .
  • the learning module 123 inputs the training data augmented to the model designed based on the image classification algorithm, and learns a weight for deriving a correlation between a spatial image included in the training data and a class labeled in each of the spatial images. It is possible to create an artificial intelligence model that determines the class for a newly input spatial image based on the correlation of .
  • the learning module 123 sets the spatial image included in the training data to be input to the input layer of the neural network designed based on the image classification algorithm, and the class labeled with the style represented by each spatial image is input to the output layer
  • the neural network can be created by learning the weights of the neural network to derive a correlation between the spatial image included in the training data and the style class labeled in each spatial image.
  • Embodiments of the present invention are ResNet, LeNet-5, AlexNet, VGG-F, VGG-M, VGG-S, VGG-16, VGG-19, GoogLeNet, SENet, R-CNN, Fast R-CNN, Faster R- Learning can be carried out through an artificial intelligence model designed according to the CNN or SSD algorithm.
  • the artificial intelligence model may refer to an overall model having problem-solving ability, which is composed of nodes that form a network by combining synapses.
  • An artificial intelligence model may be defined by a learning process that updates model parameters, which is a weight between layers constituting the model, and an activation function that generates an output value.
  • Model parameters refer to parameters determined through learning, and include the weight of layer connection and the bias of neurons.
  • hyperparameters refer to parameters that must be set before learning in the machine learning algorithm, and the number of network layers (num_layer), the number of training data (num_training_samples), the number of classes (num_classes), the learning rate (Learning Rate), , mini-batch size (mini_batch_size), loss function (optimizer), and the like.
  • the hyperparameter of the first neural network model may have the following setting values.
  • the number of network layers may be selected from among [18, 34, 50, 101, 152, 200] when the image size is large training data.
  • the number of network layers may be learned as an initial value of 18 in consideration of the learning time, and may be changed to 34 after a predetermined number of training data is learned, and thus accuracy may be improved.
  • the number of training data is a value obtained by subtracting the number of evaluation data from the total image data, and out of a total of 79,756 sheets, 63,806 sheets may be used as training data, and the remaining 16,625 sheets may be used as evaluation data.
  • the number of classes may include four classes classified as living room/room/kitchen/bathroom. Since the mini-batch size has a difference in convergence speed and final loss value depending on the size value, you can select an appropriate value by trying sizes such as [32, 64, 128, 256], preferably, the size of 128 or 256 is set can be
  • the number of learning times may be set to any one of 10 to 15 values.
  • the learning rate can be set to 0.005 or 0.01.
  • the loss function objective function
  • the above-described setting values are merely examples, and embodiments are not limited to the above numerical values.
  • the hyperparameter of the third neural network model may have the following setting values.
  • the number of network layers may be selected from among [18, 34, 50, 101, 152, 200] when the image size is large training data.
  • the number of network layers may be learned as an initial value of 18 in consideration of the learning time, and may be changed to 34 after a predetermined number of training data is learned, and thus accuracy may be improved.
  • the number of training data is a value obtained by subtracting the number of evaluation data from the total image data, and out of a total of 83,134 sheets, 66,509 sheets may be used as training data, and the remaining 16,625 sheets may be used as evaluation data.
  • the number of classes may include seven classes classified as Modern/Romantic/Classic/Natural/Casual/Nordic/Vintage. Since the mini-batch size has a difference in convergence speed and final loss value depending on the size value, you can select an appropriate value by trying sizes such as [32, 64, 128, 256], preferably, the size of 128 or 256 is set can be The number of learning times may be set to any one of 10 to 15, or 30. The learning rate can be set to 0.005 or 0.01.
  • the loss function objective function
  • the above-described setting values are merely examples, and embodiments are not limited to the above numerical values.
  • the learning objective of the AI model can be seen as determining the model parameters that minimize the loss function.
  • the loss function can be used as an index to determine the optimal model parameters in the learning process of the AI model.
  • the color determination module 124 may determine the types of colors constituting the spatial image input for color scheme recommendation, and may determine the ratio in which each of the types of colors constituting the spatial image is used.
  • the color discrimination module 124 uses a k-means clustering algorithm (reference: https://en.wikipedia.org/wiki/K-means_clustering) to configure the color types and spatial images constituting the spatial image. It is possible to determine the ratio in which each type of color is used, but the embodiment of the present invention is not limited to the illustrated algorithm.
  • the color matching module 125 determines the position of the first color on a predetermined color image scale using soft and dynamic elements based on the RGB information of each of the selected first colors to determine the soft (soft) color of the first color. It is possible to determine the element value and the dynamic element value of the color.
  • the DB generation module 126 may generate a color image scale based on colors mainly used on the web. This part will be described later in conjunction with FIGS. 11 to 14 .
  • the input interface 130 may receive a user's input. For example, when labeling a class for training data, a user input may be received.
  • the display unit 140 may include a hardware configuration for outputting an image including a display panel.
  • the communication interface 150 communicates with an external device (eg, an external DB server, a user terminal, etc.) to transmit/receive information.
  • an external device eg, an external DB server, a user terminal, etc.
  • the communication interface 150 may include a wireless communication module or a wired communication module.
  • FIG 3 is an operation flowchart of the image database analysis-based product recommendation apparatus 100 according to an embodiment of the present invention.
  • the operation of the image database analysis-based product recommendation apparatus 100 may be understood as being operated under the control of the control module 127 .
  • the control module 127 may acquire an image database including an image file for a product disposed in a predetermined space ( S210 ).
  • the image database may include the spatial image DB 115 or an externally acquired DB.
  • control module 127 controls the use of the space included in the image file of the image database, the type of object included in the image file, the style of the space included in the image file, and color matching to the color of the space included in the image file.
  • the metadata may be mapped to the image file or product information of the product (S220).
  • the control module 127 may use the first to third neural networks included in the neural network model 113 to specify the use of the space, the type of object, and the style of the space.
  • the control module 127 may utilize a color scheme recommendation algorithm by the color determination module 124 and the color matching module 125 to specify a color arrangement.
  • control module 127 may determine a category for at least one of a space use, a type of object, a space style, and a color arrangement as category information for selecting a predetermined product ( S230 ).
  • control module 127 may search and recommend an image file or product information mapped with metadata corresponding to the determined category in the image database (S240).
  • the operation of determining the category includes the operation of acquiring a first image of the user's space, the use of the space included in the first image, the type of object, and specifying the style and color of the space.
  • a category that includes metadata about the use of space, style and color arrangement of the space extracted from the sample image, without including metadata about the type of object extracted from the first image and the operation of extracting metadata for It may include an operation of determining product selection. Accordingly, the user may be recommended a product suitable for his/her space from among the products not included in the user's space.
  • the operation of determining the category includes the operation of acquiring a first image of the user's space, the use of the space included in the first image, the type of object, and specifying the style and color of the space.
  • the operation of generating the first neural network may include the following operation.
  • the labeling module 121 obtains a plurality of spatial images and labels a class specifying spatial information corresponding to each of the plurality of spatial images, or obtains a plurality of spatial images labeled with classes to generate training data. Thereafter, the augmentation module 122 augments the learning data by generating a second spatial image obtained by changing some or all of the pixel information included in the first spatial image among the plurality of spatial images. Next, the labeling module 121 labels the class labeled in the first spatial image to the second spatial image.
  • the learning module 123 inputs the training data augmented into a model designed based on a predetermined image classification algorithm, and a model for deriving a correlation between a spatial image included in the training data and a class labeled for each spatial image.
  • a model for deriving a correlation between a spatial image included in the training data and a class labeled for each spatial image.
  • FIG 4 is an exemplary diagram of an operation in which the image database analysis-based product recommendation apparatus 100 trains a second neural network model for classifying objects according to an embodiment of the present invention.
  • the operation of generating the second neural network may include the following operation.
  • the augmentation module 122 may acquire a first spatial image including the first object image and generate a second spatial image obtained by changing some or all of the pixel information included in the first spatial image ( S310 ).
  • the labeling module 121 designates a bounding box in a region including the first object image in the first spatial image, and labels the first spatial image with a first class specifying the first object image in the bounding box It can be done (S320).
  • the learning module 123 inputs the labeled first spatial image to the model designed based on the image classification algorithm, and the position of the first object image in the bounding box from the first spatial image and the first object image from the first spatial image.
  • a model that specifies the position of the object image included in the spatial image and determines the class of the object image based on the correlation learned in the weight can be generated (S330).
  • the labeling module 121 inputs the second spatial image to the firstly learned model, and the firstly learned artificial intelligence model specifies a second object image in the second spatial image with a bounding box and the firstly learned artificial intelligence
  • the second class determined by the model for the second object image may be labeled on the second spatial image ( S340 ).
  • the labeling module 121 inputs the second spatial image to the first learned model, compares the second class determined by the artificial intelligence model for the second object image with the first class, and the second class and the first When the class is the same, the value of the second class is maintained, and when the second class and the first class are different, the operation of modifying the value of the second class to the same value as that of the first class is performed, and the model learned primarily can be labeled by correcting the error of (S345). Even if the second spatial image is transformed from the first spatial image, the class of objects included in each image is the same. Therefore, the outlier data can be removed by correcting the error of the firstly learned model in the same way as above.
  • the learning module 123 may generate a model in which the weights of the artificial intelligence model are secondarily learned by performing re-learning of the artificial intelligence model in which the primary learning is completed based on the second spatial image in which the labeling is completed ( S350). Specifically, for the secondary learning, the learning module 123 inputs the labeled second spatial image to the artificial intelligence model on which the primary learning is performed, and determines the position of the second object image in the bounding box from the second spatial image. , the position of the object image included in the spatial image based on the correlation learned in the weight by secondary learning the weight of the artificial intelligence model that derives the correlation from the second spatial image to the second class of the second object image It is possible to create a model that is specific and determines the class of the object image.
  • the labeling module 121 creates a set storing a plurality of classes (eg, book, sofa, photo frame, curtain, carpet, etc.) for specifying object information and stores it in the learning data DB, and at the time of labeling in step S320
  • a bounding box for specifying the first object image is specified in the region of the first object image in the first spatial image
  • the first class for specifying the first object image by outputting a set stored in the learning data DB
  • Learning data in which the object image is specified may be generated by being selected by the user performing the labeling and labeling the first class in the bounding box area including the first object image.
  • the bounding box may include one object image per one bounding box, but may be set to include all border regions of the object image inside the bounding box.
  • the operation of generating the third neural network may include the following operation.
  • the labeling module 121 acquires a plurality of spatial images and labels a class specifying style information corresponding to each of the plurality of spatial images, or acquires a plurality of spatial images in which classes are labeled to generate learning data. Thereafter, the augmentation module 122 augments the learning data by generating a second spatial image obtained by changing pixel information included in the first spatial image among the plurality of spatial images within a predetermined range. Next, the labeling module 121 labels the class labeled in the first spatial image to the second spatial image.
  • the learning module 123 inputs the training data augmented into a model designed based on a predetermined image classification algorithm, and a model for deriving a correlation between a spatial image included in the training data and a class labeled for each spatial image.
  • a model for deriving a correlation between a spatial image included in the training data and a class labeled for each spatial image.
  • FIG. 5 is an exemplary diagram for explaining a class determined by a third neural network for classifying a style for a space according to an embodiment of the present invention.
  • the above-described third neural network may be trained to classify a style indicated by an input spatial image to determine a class for the style of the space.
  • the class of the spatial image may include a modern style, a romantic style, a classic style, a natural style, a casual style, a Nordic style, and a vintage style.
  • 5( a ) is an example of a spatial image classified into a modern style class.
  • Modern style is a simple and modern interior style, characterized by the use of two or less colors.
  • Use materials that give a hard feeling such as stainless steel, glass, steel, iron, leather, metal, or marble, or mainly use colors of monotone colors (white, black, achromatic, vivid, navy, gray), Other dark tone colors may be added.
  • it gives cool, shiny, smooth, hard feel, has a glossy finish without a pattern, and has a straight or irregular shape.
  • geometric design patterns such as stripes or checks can be used, and 'Minimal Style' that pursues simplicity in that it emphasizes functionality and practicality can be included.
  • the class of modern style may be matched with products having the keywords of "trend, modern, practical, functional, monotone, geometric pattern, cool material".
  • 5( b ) is an example of a spatial image classified into a romantic style class.
  • Romantic style is a popular interior for women with a warm feeling, and it is characterized by emphasizing natural materials and colors.
  • Soft fabrics and cozy and warm materials (cotton fabrics, wood, bricks, silk, and linen) are used, and can be used with sky blue and green pastel tones (pale pink, blue, etc.), giving the interior a romantic and fairy tale feeling. It has a calm and luxurious atmosphere.
  • it is a style that uses elegant curves, patterns such as plants and flowers, and uses soft lighting to create a delicate and emotional atmosphere as a whole.
  • the romantic style class can be matched with products with keywords of "romantic, emotional, romantic, pastel tone, soft material, curve, soft lighting".
  • 5( c ) is an example of a spatial image classified into a classical style class.
  • Classical style is a formal interior based on European traditional architectural and decorative styles since the Middle Ages, and is characterized by the use of old and luxurious materials such as leather, fabric, metal, natural wood, and marble.
  • a calm and dark color that is vivid and toned down, such as brown or black. It has an old-fashioned and noble atmosphere, and it is a style that is more suitable when the space is large.
  • it has a spectacular and decorative shape by using European-style classic furniture, and can include an antique style 'Antique Style' or an 'Artmaschine' that emphasizes splendor and curves. have.
  • the classic style class can be matched with products with keywords of "magnificence, antique, gorgeous decoration, formative beauty, calm color, gorgeous color, heavy color, wood, fabric".
  • the natural style is a rustic style using nature-friendly materials, and is characterized by the use of furniture made of warm color interiors.
  • natural materials such as wood, soil, leather cotton, and hemp are used, wood colors such as white, cream, green, and brown are mainly used, and wood tones can be used more than pastels.
  • wood tones can be used more than pastels.
  • wooden furniture may be mainly arranged on a white background. Therefore, a 'Planterior' or 'Botanic Style' that directs nature with plants may also be included in the natural style.
  • the class of natural style may be matched with a product having a keyword of "organic, natural, natural material, wood, white, brown".
  • 5( e ) is an example of a spatial image classified into a casual style class.
  • Casual style is characterized by the use of a mixture of natural and artificial materials, such as brightly colored wood, metal, glass, and plastic, as a free and comfortable image and a youthful and athletic personality.
  • by using bright, colorful and refreshing colors as point colors in basic colors such as white and gray it is possible to give a sense of rhythm by contrasting strong colors with a lively texture.
  • the design element is central.
  • check, horizontal stripes, and polka dots can be used as representative patterns (geometric or abstract patterns are also used).
  • the casual style class may be matched with a product having the keywords of "unique, decorative, spectacular, urban, chaotic, sophisticated, bright, colorful, and free".
  • the Nordic style is an interior filled with bright and comfortable color finishing materials, and the use of various accessories and fabrics is the point.
  • various materials such as natural wood, tiles, and stainless steel are used and basically white, beige, and wood tones are used, giving a point with soft pastel tones.
  • it uses furniture and accessories of monotonous design, and pursues functional, simple, and warmth by adding the original texture and smooth finish.
  • the Nordic style class can be matched with products with keywords of "clean, neat, fresh, simple, simple, smooth, soft, relaxed, comfortable, cozy, warm".
  • the vintage style is a style in which traces of the past that evoke memories or nostalgia naturally ooze, and it is characterized by the use of rough metal products, old wood, exposed concrete, iron, and bricks, which are not polished. In addition, using dark brown, black, or gray, it creates a color that looks like it has faded or peeled off, giving it a rough and clunky feeling. In addition, it can include 'industrial style' by exposing the ceiling, walls, etc. as it is in a comfortable and natural shape. In this case, the vintage style class may be matched with a product having a keyword of "industrialization, mechanical, factory, warehouse, metal, waste wood, brick, exposed concrete".
  • style classification of a space is merely an example, and may be learned to discriminate a space of various styles according to a modification of an embodiment.
  • FIGS. 6 to 10 an operation in which the image database analysis-based product recommendation apparatus 100 generates a second spatial image from a first spatial image for augmentation of data to be used for learning will be described in detail with FIGS. 6 to 10 .
  • FIG. 6 is an exemplary diagram of a second spatial image generated according to an embodiment in which data is augmented by changing pixel information included in the first spatial image.
  • the augmentation module 122 is configured to transform bright portions of pixels of the first spatial image by making bright portions brighter and dark portions darker to increase contrast, or by making bright portions less bright and darkening portions of pixels of the first spatial image. By making it less dark and transforming it to reduce the contrast, it is possible to generate a second spatial image so that even a variable that can generate an image for one space differently depending on the performance or model of the camera is learned.
  • the augmentation module 122 determines that, with respect to (x, y, z) element values constituting RGB information of pixel information included in the first spatial image, an element value having a value greater than a predetermined reference value is a larger value.
  • the second spatial image may be generated by changing to have .
  • the augmentation module 122 may generate a second spatial image in which pixel information is changed by applying Equation 1 below to pixel information of all pixels of the first spatial image.
  • the contrast when ⁇ is set to have a value greater than 1, the contrast can be increased by making a bright part of the pixels of the first spatial image brighter and a dark part darker, and ⁇ is greater than 0 and 1 When set to have a smaller value, the contrast may be reduced by making the bright part less bright and the dark part less dark among the pixels of the first spatial image.
  • can be set so that the element value output by ⁇ does not become excessively larger than 255, and the maximum value is 255 using the min function. You can set it so it doesn't get bigger.
  • the max function can be used so that the element value output by ⁇ does not become smaller than 0 using the max function.
  • the round function may be used so that the element value of the changed pixel information becomes an integer.
  • the left side is a first spatial image
  • the right side is a second spatial image when Equation 1 is applied by setting ⁇ :2.5 and ⁇ :330. It can be confirmed that, in the second spatial image on the right of FIG. 6A , as compared to the first spatial image, the bright part becomes brighter and the dark part becomes darker, so that new training data with increased contrast is generated.
  • the left side is a first spatial image
  • the right side is a second spatial image when Equation 1 is applied by setting ⁇ :0.8 and ⁇ :50. It can be seen that in the right second spatial image of FIG. 6B , compared to the first spatial image, the bright part changes less brightly and the dark part changes less darkly, so that new training data with reduced contrast is generated.
  • the degree to which one pixel information changes according to Equation 1 can be confirmed through FIG. 6C .
  • FIG. 7 is an exemplary diagram of a second spatial image (b) in which the image database analysis-based product recommendation apparatus changes pixel information of the first spatial image (a) within a predetermined range.
  • the color or color of a space image is one of the important factors determining the style of a space. Accordingly, when the augmentation module 122 changes the RGB information to a relatively large extent for data augmentation, it is highly likely that the second spatial image generated has a color different from that of the original first spatial image, so that the second spatial image is The style of the space indicated by the image itself may be different from the first space image. In this case, the original first spatial image and the newly created second spatial image have different styles, so that when labeling the second spatial image, which is the augmented learning data, the original first spatial image and the changed second space are different. Images need to be labeled with different style classes. In this case, excessive change of color may generate an operation of re-labeling a class different from that of the first spatial image for the second spatial image, while generating data out of realism.
  • the embodiment of the present invention changes the RGB information of the first spatial image (FIG. A second spatial image (Fig. 7(b)) is generated, and the labeling module 121 assigns the class labeled in the first spatial image to the second spatial image with respect to the newly created second spatial image before labeling is performed.
  • the labeling module 121 assigns the class labeled in the first spatial image to the second spatial image with respect to the newly created second spatial image before labeling is performed.
  • the augmentation module 122 may generate a second spatial image obtained by changing pixel information included in the first spatial image within a predetermined range through Equation 2 below.
  • is a random number having a value smaller than n, which is a preset value. Accordingly, the augmentation module 122 generates random numbers ⁇ r , ⁇ g , and ⁇ b to change the (x, y, z) element value, which is any one of the values of the pixels included in the first spatial image. element value , and this operation may be applied to all pixels included in the first spatial image or to some selected pixels to generate the second spatial image. Accordingly, in order to reflect the variable that the color of the photographed image may change to some extent as light enters or does not enter the space or over time, data is newly created in a manner according to Equation 2 and the corresponding variables can be learned.
  • 8A is an exemplary diagram of a second spatial image generated according to an embodiment in which data is augmented by applying a gray scale to pixel information included in the first spatial image.
  • the augmentation module 122 converts the colors monotonically and then reflects variables to better learn the arrangement of objects and patterns of objects. data can be created.
  • the augmentation module 122 applies Equation 3 below to all pixel information of the first spatial image, as shown in the left image of FIG. You can create 2 spatial images.
  • RGB among RGB information (x, y, z) of pixel information
  • x, G among RGB information (x, y, z) of pixel information
  • y B: among RGB information (x, y, z) of pixel information
  • Y element value after pixel information change (x', y', z')
  • the augmentation module 122 applies Equation 5 to the element values derived after increasing the contrast of the first spatial image through Equation 4 below, as in the right image of FIG. 8A , to apply Equation 5 to the first spatial image It is possible to create a second spatial image in which the arrangement and pattern of objects included in the image are more clearly revealed.
  • the augmentation module 122 applies Equation 2 instead of Equation 4 in the above embodiment using Equations 4 and 5 and applies Equation 5 through the method of applying Equation 5, so that the pattern of pixel information changed within a predetermined range is It is also possible to create a second spatial image altered to appear sharply.
  • 8B is an exemplary diagram of a second spatial image generated according to an embodiment in which data is augmented by adding noise to a portion of pixel information included in the first spatial image.
  • the augmentation module 122 may generate learning data for learning when noise is generated in an image when the camera is enlarged and photographed. To this end, the augmentation module 122 may generate a second spatial image by adding noise information to a portion of pixel information included in the first spatial image. For example, the augmentation module 122 generates arbitrary coordinate information through a random number generation algorithm, selects coordinates of some of the pixels included in the first spatial image, and performs the following for element values of the pixels of the selected coordinates Using Equation 6, a second spatial image to which noise information is added may be generated by adding a random number calculated using a random number generation algorithm to pixel information.
  • the left side is the first spatial image
  • the right side is the second spatial image when noise is added by applying Equation (6).
  • FIG. 9 is an exemplary diagram for explaining a method of generating a second spatial image by dividing an edge region of an object included in a first spatial image and applying a blur to a non-edge region.
  • the augmentation module 121 may generate a second spatial image in which the edge of an object seems to be crushed through the following embodiment so as to learn an image captured in a state where the camera is out of focus.
  • each pixel area is divided assuming a first spatial image including 25 pixels in the form of a 5-by-5 matrix for convenience of description.
  • each pixel has element values of R, G, and B, but the embodiment will be described based on element values of R (Red).
  • a number shown in each pixel area of FIG. 9A means an element value of R.
  • the augmentation module 121 may generate an image such as the right image of FIG. 9C by applying the Gaussian blur algorithm only to pixels in a region excluding the border region.
  • the above-described operation may be omitted and blur processing may be performed on the corresponding pixel.
  • the augmentation module 121 may perform the above operation for each of all pixels included in the first spatial image.
  • a pixel on which an operation is performed a plurality of pixels included in an NxN (N is an odd number of 3 or more) matrix size including the pixel in the center is selected as the kernel region, and R, G of the plurality of pixels included in the kernel region , a value obtained by subtracting (R_avg, G_avg, B_avg), which is the average value of each element of R, G, and B of a plurality of pixels included in the kernel area, from (R_max, G_max, B_max), which is the maximum element value among the element values of , B R_max-R_avg, G_max-G_avg, B_max-B_avg) is obtained, and if at least one element value among (R_max-R_avg, G_max-G_avg, B_max-B_avg) is less than
  • the blur processing may apply a Gaussian blur algorithm, but is not limited thereto, and various blur filters may be used.
  • the left side is a first spatial image
  • the right side is an image generated by dividing pixels larger than a preset value n and smaller than n in the embodiment described with reference to FIG. 9 . Since the right image of FIG. 9B also clearly shows the edge of the object, it can be used in addition to the learning data for the purpose of clearly recognizing the arrangement and pattern of the object.
  • the left side is a first spatial image
  • a second spatial image in which the opposite effect to that of the above-described embodiment is generated by blurring the pixel when the pixel is greater than the preset value n may be additionally added to the learning data DB 111 .
  • FIG. 10 is an exemplary diagram of a second spatial image generated according to an embodiment in which data is augmented by adding noise information according to a Gaussian normal distribution to the first spatial image.
  • the augmentation module 121 may generate training data for learning when a specific part of the image is not in focus. To this end, the augmentation module 121 generates random number information that follows a standard Gaussian normal distribution with an average of 0 and a standard deviation of 100 as much as the number of all pixels included in the first spatial image, and adds each of the random number information to each of the pixels. By summing, a second spatial image in which noise information is inserted may be generated.
  • the labeling module 121 labels the class labeled in the original first spatial image that is the original before transformation with respect to the second spatial data generated through FIGS. 5 to 8 in the same way as the second spatial image after transformation, so that the augmented
  • the labeling time can be shortened by automating the labeling process for the training data.
  • the learning module 125 inputs the original training data (first spatial image) and the training data (second spatial image) augmented through the embodiments of FIGS. 6 to 10 to the model designed based on the image classification algorithm, By learning a weight of a model for deriving a correlation between a spatial image included in the training data and a style class labeled on each spatial image, a model for determining a class for a spatial image based on the correlation can be generated.
  • FIG. 11 is an exemplary diagram for explaining an operation of extracting, by the image database-based product recommendation apparatus 100 according to an embodiment of the present invention, five colors mainly used in a spatial image and their usage ratios.
  • the color discrimination module 124 calculates some of the colors constituting the spatial image in an order of increasing the ratio of the colors used in the spatial image to the main color to be used for calculation (hereinafter, ' referred to as 'the first color').
  • the color discrimination module 124 calculates the first color until it exceeds a% (a is a natural number less than or equal to 100) when the ratios are accumulated in the order of increasing the ratio among the five colors of C1 to C5. It can be selected by color. For example, when a% is 70%, when the ratios of colors C1, C2, and C3 are added up, it exceeds 70%, so that the first color can be selected as C1, C2, and C3. .
  • the color matching module 125 determines the position of the first color on a predetermined color image scale using soft and dynamic elements based on the RGB information of each of the selected first colors to determine the soft (soft) color of the first color. It is possible to determine the element value and the dynamic element value of the color.
  • FIG. 12 is an exemplary diagram of a color image scale in which colors are arranged in a two-dimensional coordinate plane with soft and dynamic axes.
  • the color image scale is a graph for expressing colors with matching colors to be located close together. ) is a graph that classifies colors based on values.
  • the color matching module 125 determines the coordinates at which the color having the RGB information of the closest numerical value to the first color is located on the color image scale based on the RGB information of the first color, and is a soft element of the first color. It is possible to determine dynamic element values of values and colors.
  • the embodiment of the present invention may use various color image scales, but in the part to be described later on the DB generation module 126, the embodiment of the present invention generates a color image scale based on colors mainly used on the Web. suggest how to
  • the control module 127 may calculate a color arrangement element value, which is a coordinate at which a color most suitable for a spatial image is located on the color image scale, based on element values on the color image scale of each of the first colors.
  • control module 127 may calculate a color arrangement element value that is combined by weighting the element value of each of the first colors by using the ratio of each of the first colors in the spatial image as a weight.
  • each element value is weighted and combined, various methods such as a median value, an average value, and a vector sum may be realized, for example, a weighted arithmetic average may be applied.
  • control module 127 converts the sum of the ratios of each of the first colors used in the spatial image to 100%, and uses the derived ratios as the weights of each of the first colors, so that 2 of each of the first colors is
  • a color arrangement element value can be calculated by applying a weighted arithmetic mean to the dimension element value as shown in Equation 7 below.
  • N the number of first colors
  • a the ratio of using a specific first color when the sum of the ratios of the N first colors in the spatial image is converted to 100%
  • S soft element value
  • D dynamic element value
  • S av weighted arithmetic average element value for soft values of first colors
  • D av weighted arithmetic average element value for dynamic values of first colors
  • Equation 7 An example of applying Equation 7 to the example of FIG. 11 will be described.
  • the ratios in which C1, C2, and C3 selected as the first color in FIG. 11 are used in the spatial image are C1: 30%, C2: 25%, and C3: 20%. At this time, if the sum of each ratio is converted to 100%,
  • the color matching element values (S av , D av ) may be calculated as (0.4133, 0.3133) as follows when Equation 7 is applied.
  • the control module 127 may recommend a color scheme including the color scheme element values calculated on the color image scale as a color scheme suitable for the spatial image.
  • 13 is an exemplary diagram of groups classified based on ranges of soft values and dynamic values for colors on a color image scale.
  • the control module 127 may recommend a color belonging to a color matching group of “simple” on the color image scale as a color matching the spatial image.
  • the DB generation module 126 may generate a color image scale based on colors mainly used on the web. For example, the DB generation module 126 may acquire a color palette including 275 colors. The DB generation module 126 may use an HTML color palette or a JavaScript color palette to use colors frequently used on the web.
  • the DB generation module 126 needs to determine soft and dynamic values for 275 colors.
  • colors are classified based on RGB information of 275 colors and divided into 32 groups. can be clustered.
  • the DB generation module 126 can be arranged on the RGB three-dimensional coordinate plane as shown in FIG. 14 based on RGB information of 275 colors, and 32 groups of close colors based on the distance between colors located in the three-dimensional space can be classified as
  • the DB generation module 126 calculates the median or average value of the RGB information based on the RGB information of the colors included in the group, and selects a color whose RGB information among the colors included in the group is closest to the median or average value for each group. It can be selected by the leader color of
  • the DB generation module 126 may determine the soft value and the dynamic value of the leader color based on the RGB information only for the leader color of each group. After the determination, the DB generation module 126 adds or subtracts preset values to the soft value and dynamic value of the leader color based on the difference value between the RGB information of the leader color and other colors belonging to the same group, such as the leader color. It is possible to determine the soft value and the dynamic value of colors that are the same group as the color.
  • the DB generation module 126 can generate a color-based color image scale mainly used on the web by arranging the soft and dynamic values on the axis based on the soft and dynamic values determined for 275 colors. , soft values, and dynamic values may be classified according to predetermined ranges to generate a color matching group as shown in FIG. 4 .
  • the 275 colors and 32 groups illustrated above are merely examples, and various colors may be used depending on the implementation method, and the embodiment may be implemented by classifying into groups with a number smaller than the number of colors used.
  • the input interface 130 may obtain data input by a user or data on the web, and may receive a spatial image for operation of the processor 120 .
  • Data includes an image of objects arranged in a predetermined space, a spatial image including RGB information of pixels constituting the image, a color palette including RGB information for a plurality of colors, and a predetermined element value (eg, soft , dynamics, brightness, saturation, hue, etc.) may include a plurality of color image scales capable of classifying colors.
  • embodiments of the present invention may be implemented through various means.
  • embodiments of the present invention may be implemented by hardware, firmware, software, or a combination thereof.
  • the method according to embodiments of the present invention may include one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), and Programmable Logic Devices (PLDs). , FPGAs (Field Programmable Gate Arrays), processors, controllers, microcontrollers, microprocessors, and the like.
  • ASICs Application Specific Integrated Circuits
  • DSPs Digital Signal Processors
  • DSPDs Digital Signal Processing Devices
  • PLDs Programmable Logic Devices
  • FPGAs Field Programmable Gate Arrays
  • processors controllers
  • microcontrollers microcontrollers
  • microprocessors and the like.
  • the method according to the embodiments of the present invention may be implemented in the form of a module, procedure, or function that performs the functions or operations described above.
  • a computer program in which a software code or the like is recorded may be stored in a computer-readable recording medium or a memory unit and driven by a processor.
  • the memory unit may be located inside or outside the processor, and may transmit and receive data to and from the processor by various known means.
  • combinations of each block in the block diagram attached to the present invention and each step in the flowchart may be performed by computer program instructions.
  • These computer program instructions may be embodied in the encoding processor of a general purpose computer, special purpose computer, or other programmable data processing equipment, such that the instructions executed by the encoding processor of the computer or other programmable data processing equipment may correspond to each block of the block diagram or
  • Each step of the flowchart creates a means for performing the functions described.
  • These computer program instructions may also be stored in a computer-usable or computer-readable memory that may direct a computer or other programmable data processing equipment to implement a function in a particular way, and thus the computer-usable or computer-readable memory.
  • each block or each step may represent a module, segment, or part of code including one or more executable instructions for executing a specified logical function. It should also be noted that in some alternative embodiments it is also possible for the functions recited in blocks or steps to occur out of order. For example, it is possible that two blocks or steps shown one after another may in fact be performed substantially simultaneously, or that the blocks or steps may sometimes be performed in the reverse order according to the corresponding function.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Library & Information Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Processing Or Creating Images (AREA)

Abstract

본 발명의 일 실시예에 따른 이미지 데이터베이스 분석 기반 상품 추천 장치는 프로세서를 통해, 소정의 공간에 배치된 상품에 대한 이미지 파일을 포함하는 이미지 데이터베이스를 획득하는 동작; 이미지 파일에 포함된 공간의 용도, 사물의 종류, 공간의 스타일 및 색상에 어울리는 배색을 특정하는 메타데이터를 추출하여, 이미지 파일 또는 상품의 상품 정보에 메타데이터를 매핑하는 동작; 공간의 용도, 사물의 종류, 공간의 스타일 및 배색 중 적어도 어느 하나에 대한 카테고리를 결정하는 동작; 및 결정된 카테고리와 대응되는 메타데이터와 매핑되어 있는 이미지 파일 또는 상품 정보를 이미지 데이터베이스에서 검색하여 추천하는 동작을 수행할 수 있다.

Description

이미지 데이터베이스 분석 기반 상품 추천 장치 및 방법
본 발명은 이미지 데이터베이스 분석 기반 상품 추천 장치 및 방법에 관한 것이다.
한국인터넷진흥원(KISA)에 따르면 2019년에 집계된 국내 온라인 쇼핑 시장의 규모는 약 133조 원으로 2018년의 111조 원 대비 약 20% 성장세를 보인다. 이처럼 온라인 쇼핑 시장의 성장세가 가파르게 증가하면서, 온라인 쇼핑 플랫폼에 등록되는 스토어 및 상품의 수가 비약적으로 증가하고 있으며, 소비자들이 오프라인 매장보다 온라인 매장을 통해 물건을 구입하는 비율이 대폭 상승하고 있다.
한편, 오프라인 쇼핑의 형태는 소비자가 매장을 골라 매장 내에 구비된 상품들을 눈으로 확인하여 마음에 드는 상품을 구입하는 형태였다면, 온라인 쇼핑의 형태는 소비자들이 원하는 상품의 키워드를 통해 상품을 검색하여 구입하는 형태로써, 상품이 판매되는 플랫폼이 변화함에 따라 소비자가 상품을 찾게 되는 형태도 달라지고 있다.
그렇기 때문에, 온라인 쇼핑에서는 상품 페이지에 소비자들의 트래픽을 유입시킬 수 있도록 상품과 연관된 키워드를 잘 설정하는 것이 매우 중요해지고 있다. 다만, 국내 상위 10개의 온라인 쇼핑몰에 업로드된 상품의 개수만 하더라도 4억 개가 넘는 상황에서 상품마다의 키워드를 일일이 설정하는 것은 어려운 상황이기 때문에, 온라인 쇼핑몰에는 상품에 대한 이미지 파일만으로 상품의 키워드를 설정할 수 있는 기능의 솔루션이 요구되고 있다.
이때 상품의 이미지를 구성하는 요소는 크게 공간, 사물, 상품이 쓰이는 배경의 스타일(분위기), 색상으로 나눌 수 있다. 구매자가 역시 상품을 검색할 때 상품이 사용되는 공간의 용도, 상품 자체, 공간의 분위기, 공간의 색상을 중요한 요소로 여기기 때문에, 상품의 이미지를 구성하는 요소인 공간, 사물, 스타일, 색상 중 어느 하나의 키워드를 조합하여 검색하게 된다.
이처럼, 상품의 이미지로부터 자동으로 공간, 사물, 스타일, 색상에 대한 키워드를 추출할 수 있는 솔루션이 요구되는 상황에서 도입 가능한 대표적인 기술로는 인공지능을 이용한 이미지 분류 알고리즘들이 있다. 한편, 상품의 이미지로부터 공간, 사물, 스타일, 색상을 정확히 분류해내기 위해서는, 데이터의 품질, 데이터의 수량, 레이블링 방법, 학습의 용이성 등 고려해야 할 요소가 많다. 이에 따라, 다양한 학습 데이터를 생성하고 인공지능 모델의 학습을 용이하게 하면서 정확한 성능을 갖는 모델을 생성시킬 수 있는 기술이 필요한 실정이다.
본 발명의 실시예에서 해결하고자 하는 과제는 쇼핑몰이 보유하는 공간, 상품 등에 대한 방대한 이미지를 포함하는 데이터베이스에 대하여, 자동으로 데이터베이스에 포함된 이미지가 나타내는 공간의 용도, 공간 안에 배치된 상품, 공간의 분위기, 공간의 색상과 어울리는 배색을 특정할 수 있는 메타데이터를 추출하는 기술을 제공하고자 한다.
이때 본 발명의 실시예가 사용하는 기술인 이미지 분류 인공지능 알고리즘은 학습에 사용하는 학습 데이터의 양과 질에 따라 모델의 성능에 큰 차이가 발생할 수 있다. 특히, 인공지능 모델의 학습의 경우 한정된 학습 데이터만으로도 우수한 성능을 가진 모델을 만들기 위해서는, 모델이 실제로 사용될 다양한 환경이나 다양한 상황의 변수를 포함하는 학습 데이터를 통해 모델을 학습시키는 것이 중요하다. 본 발명은 공간 이미지가 내포하고 있는 다양한 정보들을 분류하는 모델을 생성함에 있어, 모델이 실제로 사용될 다양한 환경이나 상황의 변수를 포함하는 학습 데이터를 생성하는 데이터 증강 기술을 제시한다.
다만, 본 발명의 실시예가 이루고자 하는 기술적 과제는 이상에서 언급한 과제로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 기술적 과제가 도출될 수 있다.
본 발명의 일 실시예에 따른 이미지 데이터베이스 분석 기반 상품 추천 장치는 소정의 동작을 수행하도록 하는 명령어들을 저장하는 하나 이상의 메모리; 및 상기 하나 이상의 메모리와 동작할 수 있도록 연결되어 상기 명령어들을 실행하도록 설정된 하나 이상의 프로세서를 포함하고, 상기 프로세서가 수행하는 동작은, 소정의 공간에 배치된 상품에 대한 이미지 파일을 포함하는 이미지 데이터베이스를 획득하는 동작; 상기 이미지 파일에 포함된 공간의 용도, 사물의 종류, 공간의 스타일 및 색상에 어울리는 배색을 특정하는 메타데이터를 추출하여, 상기 이미지 파일 또는 상기 상품의 상품 정보에 상기 메타데이터를 매핑하는 동작; 소정의 상품을 선정하기 위한 카테고리 정보로서, 공간의 용도, 사물의 종류, 공간의 스타일 및 배색 중 적어도 어느 하나에 대한 카테고리를 결정하는 동작; 및 상기 결정된 카테고리와 대응되는 메타데이터와 매핑되어 있는 이미지 파일 또는 상품 정보를 상기 이미지 데이터베이스에서 검색하여 추천하는 동작을 포함할 수 있다.
또한, 상기 카테고리를 결정하는 동작은, 사용자의 공간을 촬영한 제1 이미지를 획득하는 동작; 상기 제1 이미지에 포함된 공간의 용도, 사물의 종류, 공간의 스타일 및 배색을 특정하는 메타데이터를 추출하는 동작; 및 상기 제1 이미지에서 추출된 사물의 종류에 대한 메타데이터를 포함하지 않으면서, 상기 샘플 이미지에서 추출된 공간의 용도, 공간의 스타일 및 배색에 대한 메타데이터를 포함하는 카테고리의 상품 선정을 결정하는 동작을 포함할 수 있다.
또한, 상기 카테고리를 결정하는 동작은, 사용자의 공간을 촬영한 제1 이미지를 획득하는 동작; 상기 제1 이미지에 포함된 공간의 용도, 사물의 종류, 공간의 스타일 및 배색을 특정하는 메타데이터를 추출하는 동작; 및 상기 제1 이미지에서 추출된 사물의 종류에 대한 메타데이터 중 상기 사용자가 선택한 하나의 사물에 대한 메타데이터를 포함하면서, 상기 제1 이미지에서 추출된 공간의 용도, 공간의 스타일 및 배색에 대한 메타데이터를 포함하는 카테고리의 상품 선정을 결정하는 동작을 포함할 수 있다.
또한 상기 메타데이터를 매핑하는 동작은, 공간 이미지에 포함된 공간의 용도를 특정하는 제1 신경망 모델을 이용하여 상기 메타데이터를 추출하는 동작을 더 포함하고, 상기 제1 신경망 모델은 프로세서가, 복수의 공간 이미지를 획득하여 상기 복수의 공간 이미지 각각에 해당하는 공간 정보를 특정하는 클래스를 레이블링하거나, 상기 클래스가 레이블링된 복수의 공간 이미지를 획득하여 학습 데이터를 생성하는 동작; 상기 복수의 공간 이미지 중 제1 공간 이미지가 포함하는 픽셀 정보의 일부 또는 전부를 변경한 제2 공간 이미지를 생성하여 상기 학습 데이터를 증강하는 동작; 상기 제1 공간 이미지에 레이블링된 클래스를 상기 제2 공간 이미지에 레이블링하는 동작; 및 소정의 이미지 분류 알고리즘 기반으로 설계된 모델에 상기 증강된 학습 데이터를 입력하고, 상기 학습 데이터에 포함된 공간 이미지와 상기 공간 이미지 각각에 레이블링된 클래스와의 상관관계를 도출하는 상기 모델의 가중치를 학습시킴으로써, 상기 상관관계를 기초로 공간 이미지에 대한 클래스를 판별하는 모델을 생성하는 동작을 수행하여 생성될 수 있다.
또한, 상기 메타데이터를 매핑하는 동작은, 공간 이미지에 포함된 사물의 종류를 특정하는 제2 신경망 모델을 이용하여 상기 메타데이터를 추출하는 동작을 더 포함하고, 상기 제2 신경망 모델은 프로세서가, 제1 사물 이미지를 포함하는 제1 공간 이미지를 획득하여, 상기 제1 공간 이미지가 포함하는 픽셀 정보를 변경한 제2 공간 이미지를 생성하는 동작; 상기 제1 공간 이미지 내의 상기 제1 사물 이미지를 포함하는 영역에 바운딩 박스(bounding box)를 지정하고, 상기 바운딩 박스에 상기 제1 사물 이미지를 특정하는 제1 클래스를 레이블링하는 동작; 소정의 이미지 분류 알고리즘 기반으로 설계된 모델에 상기 제1 공간 이미지를 입력하여, 상기 바운딩 박스 내 상기 제1 사물 이미지와 상기 제1 클래스와의 상관관계를 도출하는 상기 모델의 가중치를 1차 학습시킴으로써, 상기 상관관계를 기초로 공간 이미지에 포함된 사물 이미지를 특정하고 클래스를 판별하는 모델을 생성하는 동작; 상기 1차 학습된 모델에 상기 제2 공간 이미지를 입력하여, 상기 모델이 상기 제2 공간 이미지 내의 제2 사물 이미지를 특정한 바운딩 박스와 상기 모델이 상기 제2 사물 이미지에 대해 판별한 제2 클래스를 상기 제2 공간 이미지에 레이블링하는 동작; 및 상기 제2 공간 이미지를 기초로 상기 모델의 가중치를 2차 학습시킨 모델을 생성하는 동작을 수행하여 생성될 수 있다.
또한, 상기 메타데이터를 매핑하는 동작은, 공간 이미지에 포함된 공간의 스타일을 특정하는 제3 신경망 모델을 이용하여 상기 메타데이터를 추출하는 동작을 더 포함하고, 상기 제3 신경망 모델은 프로세서가, 복수의 공간 이미지를 획득하여 상기 복수의 공간 이미지 각각에 해당하는 스타일 정보를 특정하는 클래스를 레이블링하거나, 상기 클래스가 레이블링된 복수의 공간 이미지를 획득하여 학습 데이터를 생성하는 동작; 상기 복수의 공간 이미지 중 제1 공간 이미지가 포함하는 픽셀 정보를 소정의 범위 내에서 변경한 제2 공간 이미지를 생성하여 상기 학습 데이터를 증강하는 동작; 상기 제1 공간 이미지에 레이블링된 클래스를 상기 제2 공간 이미지에 레이블링하는 동작; 및 소정의 이미지 분류 알고리즘 기반으로 설계된 모델에 상기 증강된 학습 데이터를 입력하고, 상기 학습 데이터에 포함된 공간 이미지와 상기 공간 이미지 각각에 레이블링된 클래스와의 상관관계를 도출하는 상기 모델의 가중치를 학습시킴으로써, 상기 상관관계를 기초로 공간 이미지의 스타일에 대한 클래스를 판별하는 모델을 생성하는 동작을 수행하여 생성될 수 있다.
또한, 상기 제2 공간 이미지를 생성하는 동작은, 상기 제1 공간 이미지에 포함된 픽셀 정보의 RGB 정보를 구성하는 (x, y, z) 원소값에 대하여, 소정의 기준값보다 큰 값을 가지는 원소값이 더 큰 값을 갖도록 변경하고, 상기 기준값보다 작은 값을 가지는 원소값이 더 작은 원소값을 갖도록 변경하여 상기 제2 공간 이미지를 생성하는 동작을 포함할 수 있다.
또한, 상기 제2 공간 이미지를 생성하는 동작은,
[수학식 1]
Figure PCTKR2021009473-appb-img-000001
(src(I): 픽셀 정보의 변경 전 원소값 (x, y, z), α: 상수, β: 상수, dst(I): 픽셀 정보의 변경 후 원소값 (x', y', z'))
상기 수학식 1을 기초로 상기 제1 공간 이미지로부터 상기 제2 공간 이미지를 생성하는 동작을 포함할 수 있다.
또한,
상기 제2 공간 이미지를 생성하는 동작은,
[수학식 2]
Figure PCTKR2021009473-appb-img-000002
(src(I): 픽셀 정보의 변경 전 원소값 (x, y, z), γ: 기 설정된 값인 n 이하의 난수, dst(I): 픽셀 정보의 변경 후 원소값 (x', y', z'))
상기 수학식 2를 기초로 상기 제1 공간 이미지로부터 상기 제2 공간 이미지를 생성하는 동작을 포함할 수 있다.
또한, 상기 제2 공간 이미지를 생성하는 동작은,
[수학식 3]
Figure PCTKR2021009473-appb-img-000003
(R: 픽셀 정보의 RGB 정보 (x, y, z) 중 x, G: 픽셀 정보의 RGB 정보 (x, y, z) 중 y, B: 픽셀 정보의 RGB 정보 (x, y, z) 중 z, Y: 픽셀 정보의 변경 후 원소값 (x', y', z'))
상기 수학식 3을 기초로 상기 제1 공간 이미지로부터 상기 제2 공간 이미지를 생성하는 동작을 포함할 수 있다.
또한, 상기 제2 공간 이미지를 생성하는 동작은,
[수학식 4]
Figure PCTKR2021009473-appb-img-000004
(src(I): 픽셀 정보의 변경 전 원소값 (x, y, z), α: 상수, β: 상수, dst(I): 픽셀 정보의 변경 후 원소값 (x', y', z'))
[수학식 5]
Figure PCTKR2021009473-appb-img-000005
(R: 상기 dst(I)의 (x', y', z') 중 x', G: 상기 dst(I)의 (x', y', z') 중 y', B: 상기 dst(I)의 (x', y', z') 중 z', Y: 픽셀 정보의 변경 후 원소값 (x'', y'', z''))
상기 수학식 4 및 5를 기초로 상기 제1 공간 이미지로부터 상기 제2 공간 이미지를 생성하는 동작을 포함할 수 있다.
또한, 상기 제2 공간 이미지를 생성하는 동작은, 상기 제1 공간 이미지에 포함된 픽셀 정보의 일부에 노이즈 정보를 추가하여 상기 제2 공간 이미지를 생성하는 동작을 포함할 수 있다.
또한, 상기 제2 공간 이미지를 생성하는 동작은,
[수학식 6]
Figure PCTKR2021009473-appb-img-000006
(src(I): 픽셀 정보의 변경 전 원소값 (x, y, z), N: 난수, dst(I): 픽셀 정보의 변경 후 원소값 (x', y', z'))
상기 수학식 6을 기초로 상기 제1 공간 이미지의 픽셀 정보에 노이즈 정보를 부가하여 상기 제2 공간 이미지를 생성하는 동작을 포함할 수 있다.
또한, 상기 제2 공간 이미지를 생성하는 동작은, 상기 제1 공간 이미지가 포함하는 픽셀 중 제1 픽셀을 정중앙에 포함하는 NxN (N은 3 이상의 자연수) 행렬 크기에 포함된 복수의 픽셀의 R, G, B 각각의 원소값 중 최대 원소값인 (R_max, G_max, B_max)에서 상기 복수의 픽셀의 R, G, B 각각의 원소 평균값인 (R_avg, G_avg, B_avg)을 뺀 값인 (R_max-R_avg, G_max-G_avg, B_max-B_avg)을 구하고, 상기 (R_max-R_avg, G_max-G_avg, B_max-B_avg)의 원소값 중 어느 하나가 기 설정된 값보다 작은 경우, 상기 제1 픽셀을 블러 처리를 하는 연산을 수행하여 상기 제2 공간 이미지를 생성하는 동작을 포함할 수 있다.
또한, 상기 제2 공간 이미지를 생성하는 동작은, 상기 제1 공간 이미지가 포함하는 모든 픽셀의 개수만큼, 평균 0 및 표준편차 100의 표준 가우시안 정규 분포를 따르는 난수 정보를 생성하고, 상기 모든 픽셀의 각각에 상기 난수 정보 각각을 합산하여 노이즈가 삽입된 상기 제2 공간 이미지를 생성하는 동작을 포함할 수 있다.
또한, 상기 2차 학습시킨 모델을 생성하는 동작은, 상기 1차 학습된 모델에 상기 제2 공간 이미지를 입력하여, 상기 제2 사물 이미지와 상기 제2 클래스와의 상관관계를 도출하는 모델의 가중치를 2차 학습시킴으로써, 상기 상관관계를 기초로 공간 이미지에 포함된 사물 이미지를 특정하고 클래스를 판별하는 모델을 생성하는 동작을 포함할 수 있다.
또한, 상기 제2 공간 이미지에 레이블링하는 동작은, 상기 1차 학습된 모델에 상기 제2 공간 이미지를 입력하여, 상기 모델이 상기 제2 사물 이미지에 대해 판별한 제2 클래스를 상기 제1 클래스와 비교하여, 상기 제2 클래스와 상기 제1 클래스가 동일한 경우, 상기 제2 클래스의 값을 유지하고, 상기 제2 클래스와 상기 제1 클래스가 상이한 경우, 상기 제2 클래스의 값을 상기 제1 클래스와 동일한 값으로 수정하는 동작을 포함할 수 있다.
또한, 상기 바운딩 박스는, 하나의 바운딩 박스당 하나의 사물 이미지를 포함하되 바운딩 박스 내부에 사물 이미지의 테두리 영역이 모두 포함되도록 설정될 수 있다.
또한, 상기 메타데이터를 매핑하는 동작의 상기 배색을 특정하는 동작은, 상기 이미지 파일에 포함된 공간 이미지를 입력받는 동작; 상기 공간 이미지를 구성하는 색상의 종류 및 상기 공간 이미지에서 상기 색상의 종류 각각이 사용된 비율을 판별하는 동작; 상기 공간 이미지에 사용된 색상의 비율이 높은 순서로, 상기 공간 이미지를 구성하는 상기 색상 중 일부인 제1 색상을 선별하는 동작; 소프트 및 다이내믹을 원소로 하는 소정의 컬러 이미지 스케일 상에 상기 제1 색상 각각이 위치하는 원소값을 판별하는 동작; 상기 제1 색상 각각이 상기 공간 이미지에서 사용된 비율을 가중치로 하여, 상기 제1 색상 각각의 상기 원소값에 상기 가중치를 가하여 조합한 배색 원소값을 계산하는 동작; 및 상기 컬러 이미지 스케일에 상기 배색 원소값을 포함하는 배색군을 상기 공간 이미지에 어울리는 배색으로 추천하는 동작을 포함할 수 있다.
또한, 상기 비율을 판별하는 동작은, k-means clustering 알고리즘을 기초로 상기 공간 이미지를 분석하여 상기 공간 이미지를 구성하는 색상의 종류 및 상기 공간 이미지에서 상기 색상의 종류 각각이 사용된 비율을 판별하는 동작을 포함할 수 있다.
또한, 상기 제1 색상을 선별하는 동작은, 상기 공간 이미지에 사용된 색상의 비율이 높은 순서로 상기 공간 이미지를 구성하는 n가지(n은 자연수)의 색상을 선별하는 동작; 및 상기 n가지의 색상이 상기 공간 이미지에서 사용된 비율의 합을 100%로 환산하여, 상기 n가지 색상 중 상기 비율이 높은 순서로 상기 비율을 누적하여 합하였을 때 a%(a는 100 이하의 자연수)를 초과할 때까지의 색상을 상기 제1 색상으로 선별하는 동작을 포함할 수 있다.
또한, 상기 배색 원소값을 계산하는 동작은, 상기 제1 색상 각각이 상기 공간 이미지에서 사용된 비율을 가중치로 하여, 상기 제1 색상 각각의 상기 원소값에 가중 산술 평균을 적용하여 상기 배색 원소값을 계산하는 동작을 포함할 수 있다.
또한, 상기 배색 원소값을 계산하는 동작은, 상기 제1 색상 각각이 상기 공간 이미지에서 사용된 비율의 합을 100%로 환산하여 도출된 각각의 비율을 상기 제1 색상 각각의 가중치로 하여, 상기 제1 색상 각각의 상기 2차원 원소값에 가중 산술 평균을 적용하여 상기 배색 원소값을 계산하는 동작을 포함할 수 있다.
또한, 상기 배색 원소값을 계산하는 동작은,
[수학식 7]
Figure PCTKR2021009473-appb-img-000007
Figure PCTKR2021009473-appb-img-000008
(N = 제1 색상의 개수, a = 공간 이미지에서 N 개의 제1 색상들이 사용된 비율의 합을 100%로 환산하였을 때 어느 하나의 제1 색상이 사용된 비율, S: 소프트 원소값, D: 다이내믹 원소값, Sav: 제1 색상들의 소프트 값에 대한 가중 산술 평균 원소값, Dav: 제1 색상들의 다이내믹 값에 대한 가중 산술 평균 원소값)
상기 수학식 7을 기초로 계산될 수 있다.
본 발명의 일 실시예에 따른 이미지 데이터베이스 분석 기반 상품 추천 장치가 수행하는 이미지 데이터베이스 분석 기반 상품 추천 방법은, 소정의 공간에 배치된 상품에 대한 이미지 파일을 포함하는 이미지 데이터베이스를 획득하는 단계; 상기 이미지 파일에 포함된 공간의 용도, 사물의 종류, 공간의 스타일 및 색상에 어울리는 배색을 특정하는 메타데이터를 추출하여, 상기 이미지 파일 또는 상기 상품의 상품 정보에 상기 메타데이터를 매핑하는 단계; 소정의 상품을 선정하기 위한 카테고리 정보로서, 공간의 용도, 사물의 종류, 공간의 스타일 및 배색 중 적어도 어느 하나에 대한 카테고리를 결정하는 단계; 및 상기 결정된 카테고리와 대응되는 메타데이터와 매핑되어 있는 이미지 파일 또는 상품 정보를 상기 이미지 데이터베이스에서 검색하여 추천하는 단계를 포함할 수 있다.
본 발명의 실시예에 따르면, 쇼핑몰이 보유하는 많은 양의 이미지를 포함하는 데이터베이스에 대하여, 자동으로 데이터베이스에 포함된 이미지가 나타내는 공간의 용도, 공간 안에 배치된 상품, 공간의 분위기, 공간의 색상과 어울리는 배색을 특정한 메타데이터를 생성하여, 쇼핑몰 관리자에게 상품 정보 관리의 편의를 제공하며, 쇼핑몰 사용자에게 상품 검색이나 상품 선정에 편의를 제공해 줄 수 있다.
또한, 본 발명의 실시예가 사용하는 이미지 분류 모델을 학습시킴에 있어서, 같은 공간을 촬영하더라도 촬영하는 카메라의 특성, 촬영 시간, 촬영하는 사람의 습관 등 실제 다양한 환경이나 상황에 의해, 같은 공간을 촬영하는 경우에도 생성되는 이미지가 달라질 수 있다는 변수를 학습할 수 있도록, 원본 학습 데이터를 변형 시켜 다양한 학습 데이터를 확보하는 데이터 증강 기술을 통해 학습 데이터의 수량을 증가시키면서도 고품질의 학습 데이터를 확보할 수 있다. 이때, 본 발명의 실시예는 증강된 학습 데이터에 대한 클래스를 원본 학습 데이터와 동일하게 레이블링하여 레이블링 과정을 자동화함으로써, 학습이 용이하면서 성능이 향상된 이미지 분류 모델을 제공할 수 있다.
이러한 이미지 분류 모델을 사용하여, 온라인 쇼핑몰은 상품의 이미지만으로 상품과 연관된 키워드를 사용함으로써 상품 페이지에 소비자들의 트래픽을 효과적으로 유입시킬 수 있으며, 소비자 또한 자신이 원하는 이미지를 이용하여 자신에게 필요한 키워드를 찾아 검색에 이용할 수 있다.
이 외에, 본 문서를 통해 직접적 또는 간접적으로 파악되는 다양한 효과들이 제공될 수 있다.
도 1은 본 발명의 일 실시예에 따른 이미지 데이터베이스 분석 기반 상품 추천 장치가 공간의 용도, 사물의 종류, 공간의 스타일 및 공간과 어울리는 배색을 특정하여 상품을 추천하는 모습을 나타내는 예시도이다.
도 2는 본 발명의 일 실시예에 따른 이미지 데이터베이스 분석 기반 상품 추천 장치의 기능 블록도이다.
도 3은 본 발명의 일 실시예에 따른 이미지 데이터베이스 분석 기반 상품 추천 장치의 동작 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 이미지 데이터베이스 분석 기반 상품 추천 장치가 사물의 종류를 판별하는 신경망 모델을 학습시키는 동작의 예시도이다.
도 5는 본 발명의 일 실시예에 따라 공간에 대한 스타일을 분류하는 신경망이 판별하는 클래스를 설명하기 위한 예시도이다.
도 6은 이미지 데이터베이스 분석 기반 상품 추천 장치가 제1 공간 이미지(a)의 픽셀 정보를 소정 범위 내로 변경시킨 제2 공간 이미지(b)의 예시도이다.
도 7은 이미지 데이터베이스 분석 기반 상품 추천 장치가 제1 공간 이미지(a)의 픽셀 정보를 소정 범위 내로 변경시킨 제2 공간 이미지(b)의 예시도이다.
도 8a는 제1 공간 이미지에 포함된 픽셀 정보에 그레이 스케일을 적용하여 데이터를 증강하는 실시예에 따라 생성된 제2 공간 이미지의 예시도이다.
도 8b는 제1 공간 이미지에 포함된 픽셀 정보의 일부에 노이즈를 추가하여 데이터를 증강하는 실시예에 따라 생성된 제2 공간 이미지의 예시도이다.
도 9는 제1 공간 이미지에 포함된 사물의 테두리 영역을 구분하고, 테두리가 아닌 영역에 블러를 적용하여 제2 공간 이미지를 생성하는 방법을 설명하기 위한 예시도이다.
도 10은 제1 공간 이미지에 가우시안 정규 분포에 따른 노이즈 정보를 추가하여 데이터를 증강하는 실시예에 따라 생성된 제2 공간 이미지의 예시도이다.
도 11은 본 발명의 일 실시예에 따른 이미지 데이터베이스 기반 상품 추천 장치가 공간 이미지에 주로 사용된 5가지 색상과 사용 비율을 추출하는 동작을 설명하기 위한 예시도이다.
도 12는 색상들을 소프트 및 다이내믹을 축으로 하는 2차원 좌표 평면에 배치한 컬러 이미지 스케일의 예시도이다.
도 13은 컬러 이미지 스케일상의 색상들에 대해서 소프트 값 및 다이내믹 값의 범위를 기준으로 분류한 그룹들의 예시도이다.
도 14는 컬러 팔레트에 포함된 색상들을 R, G, B를 축으로 하는 3차원 좌표 평면에 배치한 예시도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다.  그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 범주는 청구항에 의해 정의될 뿐이다.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 자세한 설명은 본 발명의 실시예들을 설명함에 있어 실제로 필요한 경우 외에는 생략될 것이다.  그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다.  그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도면에 표시되고 아래에 설명되는 기능 블록들은 가능한 구현의 예들일 뿐이다. 다른 구현들에서는 상세한 설명의 사상 및 범위를 벗어나지 않는 범위에서 다른 기능 블록들이 사용될 수 있다. 또한 본 발명의 하나 이상의 기능 블록이 개별 블록들로 표시되지만, 본 발명의 기능 블록 중 하나 이상은 동일 기능을 실행하는 다양한 하드웨어 및 소프트웨어 구성의 조합일 수 있다.
또한 어떤 구성 요소들을 포함한다는 표현은 개방형의 표현으로서 해당 구성 요소들이 존재하는 것을 단순히 지칭할 뿐이며, 추가적인 구성 요소들을 배제하는 것으로 이해되어서는 안 된다.
나아가 어떤 구성 요소가 다른 구성 요소에 연결되어 있다거나 접속되어 있다고 언급될 때에는, 그 다른 구성 요소에 직접적으로 연결 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 한다.
또한 '제1, 제2' 등과 같은 표현은 복수의 구성을 구분하기 위한 용도로만 사용된 표현으로써, 구성들 사이의 순서나 기타 특징들을 한정하지 않는다.
이하에서는 도면들을 참조하여 본 발명의 실시예들에 대해 설명하도록 한다.
도 1은 본 발명의 일 실시예에 따른 이미지 데이터베이스 분석 기반 상품 추천 장치(100)가 공간의 용도, 사물의 종류, 공간의 스타일 및 공간과 어울리는 배색을 특정하여 상품을 추천하는 모습을 나타내는 예시도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 이미지 데이터베이스 분석 기반 상품 추천 장치(100)는 복수의 이미지 파일을 포함하는 이미지 데이터베이스에 대하여, 이미지에 포함된 공간의 용도, 사물의 종류, 공간의 스타일, 공간의 색상과 어울리는 배색을 특정하는 메타데이터를 추출하여 이미지 데이터베이스의 이미지 파일과 매핑하는 과정을 거쳐, 쇼핑몰 등이 보유한 이미지 데이터베이스에 상술한 메타데이터가 매핑되도록 업데이트 할 수 있으며, 쇼핑몰 등의 서비스 제공자는 이러한 메타데이터가 매핑되어 있는 이미지 데이터베이스를 이용하여 사용자에게 적합한 상품을 추천하는 동작을 수행할 수 있다. 이미지 데이터베이스 분석 기반 상품 추천 장치(100)는 이미지로부터 상술한 메타데이터를 추출하기 위해, 후술할 신경망 모델과 배색 추천 알고리즘을 활용할 수 있다.
도 2는 본 발명의 일 실시예에 따른 이미지 데이터베이스 분석 기반 상품 추천 장치(100)의 기능 블록도이다.
도 2를 참조하면, 일 실시예에 따른 이미지 데이터베이스 분석 기반 상품 추천 장치(100)는 메모리(110), 프로세서(120), 입력 인터페이스(130), 디스플레이부(140) 및 통신 인터페이스(150)를 포함할 수 있다.
메모리(110)는 학습 데이터 DB(111), 신경망 모델(113), 공간 이미지 DB(115), 색상 데이터 DB(117) 및 명령어 DB(119)를 포함할 수 있다.
학습 데이터 DB(111)는 실내 공간, 외부 공간 등 특정한 공간을 촬영한 공간 이미지 파일을 포함할 수 있다. 공간 이미지는 외부 서버, 외부 DB를 통해 획득하거나 인터넷상의 공간 이미지를 획득할 수 있다. 이때 공간 이미지는 다수의 픽셀(ex. 가로 M개, 세로 N개 행렬 형태로 구성된 M*N 개의 픽셀)로 구성될 수 있고, 각각의 픽셀은 R(Red), G(Green), B(Blue)의 고유 색상을 나타내는 RGB 원소값 (x, y, z)으로 구성된 픽셀 정보를 포함할 수 있다.
신경망 모델(113)은 이미지에 포함된 공간의 용도를 판별하는 제1 신경망 모델, 이미지에 포함된 사물의 종류를 판별하는 제2 신경망 모델, 이미지에 포함된 공간의 스타일을 판별하는 제3 신경망 모델을 포함할 수 있다. 제1 내지 제3 신경망 모델은 상술한 각 목적에 따라 이미지에 포함된 특정 정보를 특정하는 클래스를 판별하도록 이미지 분류 인공지능 알고리즘 기반으로 학습된 인공지능 모델일 수 있다. 인공지능 모델은 후술할 프로세서(120)의 동작에 의해 생성되어 메모리(110)에 저장될 수 있다.
공간 이미지 DB(115)는 소정의 공간에 배치된 객체(ex. 상품)들을 포함하는 공간 이미지 파일을 포함할 수 있다. 공간 이미지는 외부 서버, 외부 DB를 통해 획득하거나 인터넷상의 공간 이미지를 획득할 수 있다. 이때 공간 이미지는 다수의 픽셀(ex. 가로 M개, 세로 N개 행렬 형태로 구성된 M*N 개의 픽셀)로 구성될 수 있고, 각각의 픽셀은 R(Red), G(Green), B(Blue)의 고유 색상을 나타내는 RGB 원소값 (x, y, z)으로 구성된 픽셀 정보를 포함할 수 있다.
색상 데이터 DB(117)는 복수의 색상에 대한 RGB 정보를 포함하는 컬러 팔레트, 다양한 원소값(ex. 소프트, 다이내믹, 명도, 채도, 색상 등)에 따라 색상을 분류할 수 있는 컬러 이미지 스케일을 포함할 수 있다.
명령어 DB(119)는 프로세서(120)의 동작을 수행시킬 수 있는 명령어들을 저장할 수 있다. 예를 들어, 명령어 DB(119)는 후술할 프로세서(120)의 동작들과 대응되는 동작을 수행하도록 하는 컴퓨터 코드를 저장할 수 있다.
프로세서(120)는 이미지 데이터베이스 분석 기반 상품 추천 장치(100)가 포함하는 구성들, 메모리(110), 입력 인터페이스(130), 디스플레이부(140) 및 통신 인터페이스(150)의 전반적인 동작을 제어할 수 있다. 프로세서(120)는 레이블링 모듈(121), 증강 모듈(122), 학습 모듈(123), 색상 판별 모듈(124), 배색 판별 모듈(125), DB 생성 모듈(126) 및 제어 모듈(127)을 포함할 수 있다. 프로세서(120)는 메모리(110)에 저장된 명령어들을 실행해 레이블링 모듈(121), 증강 모듈(122), 학습 모듈(123), 색상 판별 모듈(124), 배색 판별 모듈(125), DB 생성 모듈(126) 및 제어 모듈(127)을 구동시킬 수 있고, 레이블링 모듈(121), 증강 모듈(122), 학습 모듈(123), 색상 판별 모듈(124), 배색 판별 모듈(125), DB 생성 모듈(126) 및 제어 모듈(127)에 의해 수행되는 동작은 프로세서(120)에 의해 수행되는 동작으로 이해될 수 있다.
레이블링 모듈(121)은 복수의 공간 이미지 각각의 이미지가 나타내는 공간의 용도(ex. 거실, 주방, 화장실, 침실 등), 사물의 종류(ex. 액자, 침대, 카펫, TV 등), 공간의 스타일(ex. 모던, 로맨틱, 클래식, 내추럴, 캐주얼, 북유럽, 빈티지 등)을 특정하는 클래스를 레이블링(매핑)하여 인공지능 모델의 학습에 사용될 학습 데이터를 생성하고 학습 데이터 DB(111)에 저장할 수 있다. 레이블링 모듈(121)은 외부 서버, 외부 DB를 통해 공간 이미지를 획득하거나 인터넷상의 공간 이미지를 획득할 수 있다. 공간 이미지에는 특정 정보를 특정하는 클래스가 기 레이블링 되어 있을 수 있다.
증강 모듈(122)은 학습 데이터 DB(111)에 저장된 공간 이미지(증강 모듈이 변형을 가하지 않은 공간 이미지를 이하, '제1 공간 이미지'로 지칭)가 포함하는 픽셀 정보를 소정 범위 내에서 변경한 공간 이미지(증강 모듈이 변형을 가한 공간 이미지를 이하, '제2 공간 이미지'로 지칭)를 생성하여 학습 데이터를 증강하고, 제2 공간 이미지를 학습 데이터 DB(111)에 추가하여 저장할 수 있다. 이때 레이블링 모듈(121)은 새롭게 생성되어 레이블링이 수행되기 전의 제2 공간 이미지에 대하여, 제1 공간 이미지에 레이블링된 클래스를 제2 공간 이미지에 레이블링하도록 하여, 증강된 학습 데이터에 대한 레이블링 과정을 자동화함으로써 레이블링 시간을 단축시킬 수 있다.
공간 이미지는 같은 공간이 촬영되는 것이라도 촬영에 사용되는 카메라의 특성, 촬영이 행해지는 시간, 촬영하는 사람의 습관 등 실제 공간 이미지가 생성되는 다양한 환경이나 상황에 의해, 동일한 공간을 촬영하는 경우라도 다양한 변수에 의해 이미지 파일에 포함되는 정보가 달라질 수 있다. 따라서, 인공지능 모델의 성능 향상을 위해서는 학습에 사용되는 데이터의 양과 질이 중요하다. 특히, 촬영에 사용되는 카메라의 특성, 촬영 시간, 촬영하는 사람의 습관에 따라 발생할 수 있는 변수들을 학습할 수 있도록, 증강 모듈(122)은 하나의 공간 이미지에 대하여 실제로 발생할 수 있는 변수를 반영하는 도 7 내지 도 10의 데이터 증강 알고리즘을 통해 학습 데이터의 수량을 증가시킬 수 있다.
학습 모듈(123)은 이미지 분류 알고리즘 기반으로 설계된 모델에 증강된 학습 데이터를 입력하여, 학습 데이터에 포함된 공간 이미지와 공간 이미지 각각에 레이블링된 클래스와의 상관관계를 도출하는 가중치를 학습시킴으로써, 가중치의 상관관계를 기초로 새롭게 입력되는 공간 이미지에 대한 클래스를 판별하는 인공지능 모델을 생성할 수 있다. 예를 들어, 학습 모듈(123)은 이미지 분류 알고리즘을 기초로 설계된 신경망의 입력 레이어에 학습 데이터에 포함된 공간 이미지가 입력되도록 설정하고, 출력 레이어에 공간 이미지 각각이 나타내는 스타일이 레이블링된 클래스가 입력되도록 설정하여, 학습 데이터에 포함된 공간 이미지와 공간 이미지 각각에 레이블링된 스타일 클래스와의 상관관계를 도출하도록 신경망의 가중치를 학습시켜 신경망을 생성할 수 있다.
이러한 이미지 분류 알고리즘은 인공 지능 분야에서 다루는 다양한 문제를 정의하고 그것을 해결하는 머신러닝 알고리즘을 포함한다. 본 발명의 실시예는 ResNet, LeNet-5, AlexNet, VGG-F, VGG-M, VGG-S, VGG-16, VGG-19, GoogLeNet, SENet, R-CNN, Fast R-CNN, Faster R-CNN, 또는 SSD의 알고리즘에 따라 설계된 인공지능 모델을 통해 학습을 진행할 수 있다.
인공지능 모델은 시냅스의 결합으로 네트워크를 형성한 노드들로 구성되는, 문제 해결 능력을 가지는 모델 전반을 의미할 수 있다. 인공지능 모델은 모델을 구성하는 레이어 사이의 가중치인, 모델 파라미터를 갱신하는 학습 과정, 출력값을 생성하는 활성화 함수(Activation Function)에 의해 정의될 수 있다.
모델 파라미터는 학습을 통해 결정되는 파라미터를 의미하며, 레이어 연결의 가중치와 뉴런의 편향 등이 포함된다. 그리고, 하이퍼 파라미터는 머신러닝 알고리즘에서 학습 전에 설정되어야 하는 파라미터를 의미하며, 네트워크 계층 수(num_layer), 학습 데이터 개수(num_training_samples), 클래스 개수(num_classes), 학습률(Learning Rate), 학습 횟수(epochs), 미니 배치 크기(mini_batch_size), 손실 함수(optimizer) 등이 포함된다.
본 발명의 일 실시예에 따른 제1 신경망 모델의 하이퍼 파라미터는 아래와 같은 설정값을 가질 수 있다. 예를 들어, 네트워크 계층 수는 이미지의 크기가 큰 학습 데이터일 경우 [18, 34, 50, 101, 152, 200] 사이에서 선택될 수 있다. 이때 네트워크 계층 수는 학습 시간을 고려하여 초깃값 18로 학습되다가 소정 개수의 학습 데이터가 학습된 이후에는 34 로 변경될 수 있고, 이에 따라 정확도가 향상될 수 있다. 학습 데이터 개수는 전체 이미지 데이터에서 평가 데이터의 개수를 뺀 값으로, 총 79,756장 중에서 63,806장이 학습 데이터로 사용될 수 있고, 나머지 16,625장은 평가 데이터로 사용될 수 있다. 클래스 개수는 거실/방/주방/욕실로 분류되는 4가지의 클래스를 포함할 수 있다. 미니 배치 크기는 크기값에 따라 수렴 속도 및 최종 loss 값에 차이가 있으므로 [32, 64, 128, 256] 등의 크기를 각각 시도하여 적절한 값을 선택할 수 있고, 바람직하게 128 또는 256의 크기가 설정될 수 있다. 학습 횟수는 10 내지 15 어느 하나의 값으로 설정될 수 있다. 학습률은 0.005 또는 0.01로 설정될 수 있다. 손실함수(목적함수)는 기본값인 SGD로 설정될 수 있고, 또는 이미지 분류에 적합한 Adam으로 설정될 수 있다. 다만, 상술한 설정값들은 일 예시일 뿐 실시예들이 위 수치에 한정되는 것은 아니다.
본 발명의 일 실시예에 따른 제3 신경망 모델의 하이퍼 파라미터는 아래와 같은 설정값을 가질 수 있다. 예를 들어, 네트워크 계층 수는 이미지의 크기가 큰 학습 데이터일 경우 [18, 34, 50, 101, 152, 200] 사이에서 선택될 수 있다. 이때 네트워크 계층 수는 학습 시간을 고려하여 초깃값 18로 학습되다가 소정 개수의 학습 데이터가 학습된 이후에는 34 로 변경될 수 있고, 이에 따라 정확도가 향상될 수 있다. 학습 데이터 개수는 전체 이미지 데이터에서 평가 데이터의 개수를 뺀 값으로, 총 83,134장 중에서 66,509장이 학습 데이터로 사용될 수 있고, 나머지 16,625장은 평가 데이터로 사용될 수 있다. 클래스 개수는 모던/로맨틱/클래식/내추럴/캐주얼/북유럽/빈티지로 분류되는 7가지의 클래스를 포함할 수 있다. 미니 배치 크기는 크기값에 따라 수렴 속도 및 최종 loss 값에 차이가 있으므로 [32, 64, 128, 256] 등의 크기를 각각 시도하여 적절한 값을 선택할 수 있고, 바람직하게 128 또는 256의 크기가 설정될 수 있다. 학습 횟수는 10 내지 15, 또는 30 중 어느 하나의 값으로 설정될 수 있다. 학습률은 0.005 또는 0.01로 설정될 수 있다. 손실함수(목적함수)는 기본값인 SGD로 설정될 수 있고, 또는 이미지 분류에 적합한 Adam으로 설정될 수 있다. 다만, 상술한 설정값들은 일 예시일 뿐 실시예들이 위 수치에 한정되는 것은 아니다.
인공지능 모델의 학습 목적은 손실 함수를 최소화하는 모델 파라미터를 결정하는 것으로 볼 수 있다. 손실 함수는 인공지능 모델의 학습 과정에서 최적의 모델 파라미터를 결정하기 위한 지표로 이용될 수 있다.
색상 판별 모듈(124)은 배색 추천을 위해 입력된 공간 이미지를 구성하는 색상의 종류를 판별할 수 있고, 공간 이미지를 구성하는 색상의 종류 각각이 사용된 비율을 판별할 수 있다. 예를 들어, 색상 판별 모듈(124)은 k-means clustering 알고리즘(참고문헌: https://en.wikipedia.org/wiki/K-means_clustering)을 이용하여 공간 이미지를 구성하는 색상의 종류 및 공간 이미지에서 색상의 종류 각각이 사용된 비율을 판별할 수 있으나, 본 발명의 실시예가 예시된 알고리즘에만 한정되는 것은 아니다.
배색 판별 모듈(125)은 선별된 제1 색상 각각이 가지는 RGB 정보를 기초로 소프트 및 다이내믹을 원소로 하는 소정의 컬러 이미지 스케일상의 제1 색상의 위치를 판별하여 제1 색상이 갖는 소프트(soft) 원소값 및 색상의 다이내믹(dynamic) 원소값을 판별할 수 있다.
DB 생성 모듈(126)은 웹상에서 주로 사용되는 색상들을 기준으로 컬러 이미지 스케일을 생성할 수 있다. 이 부분은 도 11 내지 도 14와 함께 후술하기로 한다.
입력 인터페이스(130)는 사용자의 입력을 수신할 수 있다. 예를 들면, 학습 데이터에 대한 클래스를 레이블링하는 경우 사용자의 입력을 수신할 수 있다.
디스플레이부(140)는 디스플레이 패널을 포함하여 화상을 출력하는 하드웨어 구성을 포함할 수 있다.
통신 인터페이스(150)는 외부 장치(ex. 외부 DB 서버, 사용자 단말 등)와 통신하여 정보를 송수신 할 수 있게 한다. 이를 위해, 통신 인터페이스(150)는 무선 통신 모듈 또는 유선 통신 모듈을 포함할 수 있다.
도 3은 본 발명의 일 실시예에 따른 이미지 데이터베이스 분석 기반 상품 추천 장치(100)의 동작 흐름도이다. 이미지 데이터베이스 분석 기반 상품 추천 장치(100)의 동작은 제어 모듈(127)의 제어에 따라 동작되는 것으로 이해될 수 있다.
도 3을 참조하면, 제어 모듈(127)은 소정의 공간에 배치된 상품에 대한 이미지 파일을 포함하는 이미지 데이터베이스를 획득할 수 있다(S210). 이미지 데이터베이스는 공간 이미지 DB(115) 또는 외부로부터 획득한 DB를 포함할 수 있다.
이후, 제어 모듈(127)은 이미지 데이터베이스의 이미지 파일에 포함된 공간에 대한 용도, 이미지 파일에 포함된 사물의 종류, 이미지 파일에 포함된 공간의 스타일 및 이미지 파일에 포함된 공간의 색상에 어울리는 배색을 특정하는 메타데이터를 추출하여, 이미지 파일 또는 상품의 상품 정보에 메타데이터를 매핑할 수 있다(S220). 제어 모듈(127)은 공간의 용도, 사물의 종류, 공간의 스타일 특정을 위해 신경망 모델(113)에 포함된 제1 내지 제3 신경망을 이용할 수 있다. 제어 모듈(127)은 배색 특정을 위해 색상 판별 모듈(124) 및 배색 판별 모듈(125)에 의한 배색 추천 알고리즘을 활용할 수 있다.
이후, 제어 모듈(127)은 소정의 상품을 선정하기 위한 카테고리 정보로서, 공간의 용도, 사물의 종류, 공간의 스타일 및 배색 중 적어도 어느 하나에 대한 카테고리를 결정할 수 있다(S230).
이후, 제어 모듈(127)은 결정된 카테고리와 대응되는 메타데이터와 매핑된 이미지 파일 또는 상품 정보를 이미지 데이터베이스에서 검색하여 추천할 수 있다(S240).
본 발명의 일 실시예에 따라 카테고리를 결정하는 동작은, 사용자의 공간을 촬영한 제1 이미지를 획득하는 동작, 제1 이미지에 포함된 공간의 용도, 사물의 종류, 공간의 스타일 및 배색을 특정하는 메타데이터를 추출하는 동작 및 제1 이미지에서 추출된 사물의 종류에 대한 메타데이터를 포함하지 않으면서, 샘플 이미지에서 추출된 공간의 용도, 공간의 스타일 및 배색에 대한 메타데이터를 포함하는 카테고리의 상품 선정을 결정하는 동작을 포함할 수 있다. 이에 따라, 사용자는 자신의 공간에 포함되지 않은 상품 중에서 자신의 공간에 어울리는 상품을 추천받을 수 있다.
본 발명의 일 실시예에 따라 카테고리를 결정하는 동작은, 사용자의 공간을 촬영한 제1 이미지를 획득하는 동작, 제1 이미지에 포함된 공간의 용도, 사물의 종류, 공간의 스타일 및 배색을 특정하는 메타데이터를 추출하는 동작 및 제1 이미지에서 추출된 사물의 종류에 대한 메타데이터 중 상기 사용자가 선택한 하나의 사물에 대한 메타데이터를 포함하면서, 제1 이미지에서 추출된 공간의 용도, 공간의 스타일 및 배색에 대한 메타데이터를 포함하는 카테고리의 상품 선정을 결정하는 동작을 포함할 수 있다. 이에 따라, 사용자는 자신의 공간에 대해 결정된 카테고리와 자신이 추가로 결정한 상품 카테고리를 기반으로 적합한 상품을 추천받을 수 있다.
이하, 이미지 데이터베이스 분석 기반 상품 추천 장치(100)가 이미지 데이터베이스에 포함된 이미지 파일에 메타 데이터를 매핑하기 위해 사용하는 제1 내지 제3 신경망 모델의 생성 동작을 각각 설명한다.
일 실시예에 따라 제1 신경망을 생성하는 동작은 다음의 동작을 포함할 수 있다.
먼저, 레이블링 모듈(121)은 복수의 공간 이미지를 획득하여 복수의 공간 이미지 각각에 해당하는 공간 정보를 특정하는 클래스를 레이블링하거나, 클래스가 레이블링된 복수의 공간 이미지를 획득하여 학습 데이터를 생성한다. 이후, 증강 모듈(122)은 복수의 공간 이미지 중 제1 공간 이미지가 포함하는 픽셀 정보의 일부 또는 전부를 변경한 제2 공간 이미지를 생성하여 학습 데이터를 증강시킨다. 다음으로, 레이블링 모듈(121)은 제1 공간 이미지에 레이블링된 클래스를 제2 공간 이미지에 레이블링한다. 이에 따라, 학습 모듈(123)는 소정의 이미지 분류 알고리즘 기반으로 설계된 모델에 증강된 학습 데이터를 입력하여, 학습 데이터에 포함된 공간 이미지와 공간 이미지 각각에 레이블링된 클래스와의 상관관계를 도출하는 모델의 가중치를 학습시킴으로써, 상관관계를 기초로 공간 이미지에 대한 클래스를 판별하는 모델을 생성할 수 있다.
도 4는 본 발명의 일 실시예에 따른 이미지 데이터베이스 분석 기반 상품 추천 장치(100)가 사물을 분류하는 제2 신경망 모델을 학습시키는 동작의 예시도이다.
도 4를 참조하면, 일 실시예에 따라 제2 신경망을 생성하는 동작은 다음의 동작을 포함할 수 있다.
증강 모듈(122)은 제1 사물 이미지를 포함하는 제1 공간 이미지를 획득하여, 제1 공간 이미지가 포함하는 픽셀 정보 중 일부 또는 전부를 변경한 제2 공간 이미지를 생성할 수 있다(S310). 레이블링 모듈(121)은 제1 공간 이미지 내의 제1 사물 이미지를 포함하는 영역에 바운딩 박스(bounding box)를 지정하고, 바운딩 박스에 제1 사물 이미지를 특정하는 제1 클래스를 제1 공간 이미지에 레이블링할 수 있다(S320). 학습 모듈(123)은 이미지 분류 알고리즘 기반으로 설계된 모델에 레이블링된 제1 공간 이미지를 입력하여, 제1 공간 이미지로부터 바운딩 박스 내 제1 사물 이미지의 위치와, 제1 공간 이미지로부터 제1 사물 이미지의 제1 클래스와의 상관관계를 도출하는 인공지능 모델의 가중치를 1차 학습시킴으로써 가중치에 학습된 상관관계를 기초로 공간 이미지에 포함된 사물 이미지의 위치를 특정하고 사물 이미지의 클래스를 판별하는 모델을 생성할 수 있다(S330). 이후, 레이블링 모듈(121)은 1차 학습된 모델에 제2 공간 이미지를 입력하여, 1차 학습된 인공지능 모델이 제2 공간 이미지 내의 제2 사물 이미지를 특정한 바운딩 박스와 1차 학습된 인공지능 모델이 제2 사물 이미지에 대해 판별한 제2 클래스를 제2 공간 이미지에 레이블링할 수 있다(S340). 이때 레이블링 모듈(121)은 1차 학습된 모델에 제2 공간 이미지를 입력하여, 인공지능 모델이 제2 사물 이미지에 대해 판별한 제2 클래스를 제1 클래스와 비교하여, 제2 클래스와 제1 클래스가 동일한 경우, 제2 클래스의 값을 유지하고, 제2 클래스와 제1 클래스가 상이한 경우, 제2 클래스의 값을 제1 클래스와 동일한 값으로 수정하는 동작을 수행하여, 1차 학습된 모델의 오류를 정정하여 레이블링할 수 있다(S345). 제2 공간 이미지가 제1 공간 이미지로부터 변형되더라도 각각의 이미지가 포함하는 사물의 클래스는 동일하기 때문에 위와 같은 방법으로 1차 학습된 모델의 오류를 정정하여 아웃라이어 데이터를 제거할 수 있다.
이에 따라, 학습 모듈(123)은 레이블링이 완료된 제2 공간 이미지를 기초로 1차 학습이 완료된 인공지능 모델의 재학습을 수행하여 인공지능 모델의 가중치를 2차 학습시킨 모델을 생성할 수 있다(S350). 구체적으로, 학습 모듈(123)은 2차 학습을 위해, 1차 학습이 수행된 인공지능 모델에 레이블링된 제2 공간 이미지를 입력하여, 제2 공간 이미지로부터 바운딩 박스 내 제2 사물 이미지의 위치와, 제2 공간 이미지로부터 제2 사물 이미지의 제2 클래스와의 상관관계를 도출하는 인공지능 모델의 가중치를 2차 학습시킴으로써 가중치에 학습된 상관관계를 기초로 공간 이미지에 포함된 사물 이미지의 위치를 특정하고 사물 이미지의 클래스를 판별하는 모델을 생성할 수 있다.
이때 레이블링 모듈(121)은 사물 정보를 특정하는 복수의 클래스(ex. book, sofa, photo frame, curtain, carpet 등)를 저장한 세트를 생성하여 학습 데이터 DB에 저장하고, S320 단계의 레이블링 시에 제1 공간 이미지 내의 제1 사물 이미지의 영역에 제1 사물 이미지를 특정하기 위한 바운딩 박스(bounding box)가 지정되면, 학습 데이터 DB에 저장된 세트를 출력하여 제1 사물 이미지를 특정하는 제1 클래스를 레이블링을 수행하는 사용자로부터 선택받아, 제1 사물 이미지를 포함하는 바운딩 박스 영역에 제1 클래스를 레이블링하여 사물 이미지가 특정된 학습 데이터를 생성할 수 있다. 이때 바운딩 박스는 하나의 바운딩 박스당 하나의 사물 이미지를 포함하되 바운딩 박스 내부에 사물 이미지의 테두리 영역이 모두 포함되도록 설정될 수 있다.
일 실시예에 따라 제3 신경망을 생성하는 동작은 다음의 동작을 포함할 수 있다.
레이블링 모듈(121)은 복수의 공간 이미지를 획득하여 복수의 공간 이미지 각각에 해당하는 스타일 정보를 특정하는 클래스를 레이블링하거나, 클래스가 레이블링된 복수의 공간 이미지를 획득하여 학습 데이터를 생성한다. 이후, 증강 모듈(122)은 복수의 공간 이미지 중 제1 공간 이미지가 포함하는 픽셀 정보를 소정의 범위 내로 변경한 제2 공간 이미지를 생성하여 학습 데이터를 증강시킨다. 다음으로, 레이블링 모듈(121)은 제1 공간 이미지에 레이블링된 클래스를 제2 공간 이미지에 레이블링한다. 이에 따라, 학습 모듈(123)는 소정의 이미지 분류 알고리즘 기반으로 설계된 모델에 증강된 학습 데이터를 입력하여, 학습 데이터에 포함된 공간 이미지와 공간 이미지 각각에 레이블링된 클래스와의 상관관계를 도출하는 모델의 가중치를 학습시킴으로써, 상관관계를 기초로 공간 이미지의 스타일에 대한 클래스를 판별하는 모델을 생성할 수 있다.
도 5는 본 발명의 일 실시예에 따라 공간에 대한 스타일을 분류하는 제3 신경망이 판별하는 클래스를 설명하기 위한 예시도이다.
도 5를 참조하면, 상술한 제3 신경망은 입력되는 공간 이미지가 나타내는 스타일을 구분하도록 학습되어 공간의 스타일에 대한 클래스를 판별할 수 있다. 예를 들어, 공간 이미지의 클래스는 모던 스타일, 로맨틱 스타일, 클래식 스타일, 내추럴 스타일, 캐주얼 스타일, 북유럽 스타일, 빈티지 스타일을 포함할 수 있다.
도 5(a)는 모던 스타일의 클래스로 분류되는 공간 이미지에 대한 예시이다. 모던 스타일은 심플하고 현대적인 인테리어 스타일로서 주로 2가지 이하 색상을 사용하는 것이 특징이다. 스테인리스, 유리, 스틸, 철, 가죽, 금속, 대리석 등 딱딱한 느낌을 주는 소재를 사용하거나, 모노톤 컬러(흰색, 검은색, 무채색, 선명한 색, 네이비색, 그레이색)의 색을 주로 사용하면서 회색이나 기타 어두운 톤의 색들이 첨가될 수 있다. 또한, 차가움, 반들반들, 매끈, 단단한 느낌을 주며, 무늬가 없이 광택이 나는 마감을 갖고, 직선이나 비정형의 형태를 보인다. 패턴을 사용할 경우, 스트라이프나 체크 등 기하학적인 디자인 패턴을 이용할 수 있고, 기능성과 실용성을 강조한다는 점에서 심플한 간결함을 추구하는 '미니멀 스타일 (Minimal Style)'을 포함할 수 있다. 이때 모던 스타일의 클래스는 "트렌디, 현대적, 실용성, 기능성, 모노톤, 기하학적 패턴, 차가운 소재"의 키워드를 갖는 상품과 매칭될 수 있다.
도 5(b)는 로맨틱 스타일의 클래스로 분류되는 공간 이미지에 대한 예시이다. 로맨틱 스타일은 포근한 느낌으로 여성들에게 인기 있는 인테리어로서 내추럴한 소재와 색채를 강조하는 것이 특징이다. 부드러운 직물과 포근하고 따뜻한 느낌의 소재(면직물, 나무, 벽돌, 실크, 린넨)를 사용하며, 하늘색과 녹색 톤의 파스텔 톤(옅은 핑크, 블루 등)과 함께 사용될 수 있고, 낭만적이고 동화적 느낌을 주는 인테리어이며 차분하고 고급스러워 보이는 분위기이다. 또한, 우아한 곡선과 식물, 꽃무늬 등의 패턴을 활용하며, 은은한 조명을 사용하여 전체적으로 섬세하면서도 감성적인 분위기를 조성하는 스타일로서 투박하지만 품격 있는 '프로방스 스타일 (Provence Style)'을 포함할 수 있다. 이때 로맨틱 스타일의 클래스는 "로맨틱, 감성적, 낭만적, 파스텔톤, 소프트한 소재, 곡선, 은은한 조명"의 키워드를 갖는 상품과 매칭될 수 있다.
도 5(c)는 클래식 스타일의 클래스로 분류되는 공간 이미지에 대한 예시이다. 클래식 스타일은 중세 이후 유럽의 전통적인 건축 양식과 장식 양식을 바탕으로 한 격식 있는 인테리어로서 가죽, 패브릭, 금속, 천연목, 대리석 등 오래되고 고급스러운 소재를 사용하는 것이 특징이다. 또한, 나무와 가죽의 컬러를 기본으로 하면서, 갈색 또는 검은색 같은 선명하고 톤 다운된 차분하고 짙은 컬러를 사용한다. 고풍스럽고 고상한 분위기이며 공간이 넓을 때 더 어울리는 스타일이다. 또한, 유럽풍의 클래식한 가구들을 활용하여 화려하고 장식적인 모양을 가지며, 고풍스러운 느낌의 '앤티크 스타일 (Antique Style)'이나 화려함과 곡선미를 강조한 '아르누보 스타일 (Art Nouveau Style)'을 포함할 수 있다. 이때 클래식 스타일의 클래스는 "웅장함, 고풍스러움, 화려한 장식, 조형미, 차분한 컬러, 화려한 컬러, 묵직한 컬러, 나무, 직물"의 키워드를 갖는 상품과 매칭될 수 있다.
도 5(d)는 내추럴 스타일의 클래스로 분류되는 공간 이미지에 대한 예시이다. 내추럴 스타일은 자연 친화적인 소재를 이용한 소박한 스타일로서 따뜻한 색감의 인테리어로 이루어진 가구가 사용되는 것이 특징이다. 또한, 나무, 흙, 가죽 면, 마 같이 자연적인 소재가 활용되면서 흰색, 크림색, 녹색, 갈색 같은 목재색이 주로 사용되고, 파스텔보다는 우드톤이 더 활용될 수 있다. 또한, 무광 또는 광택이 자연스러운 느낌 또는 자연 소재를 연상시키는 질감의 소재를 강조한 단순한 디자인으로 화이트 배경에 원목 가구들이 주로 배치될 수 있다. 따라서, 식물로 자연을 연출하는 '플랜테리어(Planterior)'나 '보태닉 스타일 (Botanic Style)'도 내추럴 스타일에 포함될 수 있다. 이때 내추럴 스타일의 클래스는 "오가닉, 자연스러움, 천연 소재, 나무, 화이트, 브라운"의 키워드를 갖는 상품과 매칭될 수 있다.
도 5(e)는 캐주얼 스타일의 클래스로 분류되는 공간 이미지에 대한 예시이다. 캐주얼 스타일은 자유롭고 편한 이미지와 젊고 운동감 넘치는 개성 있고 경쾌한 인테리어로서 밝은 색조의 나무와 금속, 유리, 플라스틱 등 자연재와 인공재의 혼용재를 많이 사용하는 것이 특징이다. 또한, 흰색과 회색 등의 기본 색상에 밝고 화려하고 산뜻한 색채를 포인트 컬러로 사용하여 생동감 나는 재질감과 함께 강한 색채의 대비로 리듬감을 부여할 수 있고, 격식을 차리지 않는 자유로운 분위기로서 기능적이고 가벼운 감각의 디자인 요소가 중심이다. 또한, 체크와 가로형 스트라이프, 물방울무늬가 대표적 패턴으로 사용(기하학적 무늬나 추상적 무늬도 사용)될 수 있다. 이때 캐주얼 스타일의 클래스는 "독특함, 장식적, 화려함, 도시적, 혼란함, 세련된 밝음, 컬러풀함, 자유로움"의 키워드를 갖는 상품과 매칭될 수 있다.
도 5(f)는 북유럽 스타일의 클래스로 분류되는 공간 이미지에 대한 예시이다. 북유럽 스타일은 밝고 편안한 색채의 마감재가 공간을 채운 인테리어로서 다양한 소품과 패브릭의 활용이 포인트이다. 또한, 천연목, 타일, 스테인리스 등 다양한 소재가 사용되고 기본적으로 흰색과 베이지색, 우드톤이 사용되면서 부드러운 파스텔톤으로 포인트를 줄 수 있다. 또한, 단조로운 디자인의 가구와 소품들을 사용하고, 소재 본래의 질감과 매끄러운 마감이 가미되어 기능적이고 단순하면서 따뜻함을 추구한다. 이때 북유럽 스타일의 클래스는 "깨끗함, 깔끔함, 산뜻함, 심플함, 단순함, 매끄러움, 부드러움, 여유로움, 안락함, 포근함, 따뜻함"의 키워드를 갖는 상품과 매칭될 수 있다.
도 5(g)는 빈티지 스타일의 클래스로 분류되는 공간 이미지에 대한 예시이다. 빈티지 스타일은 추억이나 향수를 불러일으키는 과거의 흔적이 자연스럽게 배어나는 스타일로서 거친 금속제품, 낡은 우드, 노출 콘크리트, 철제, 벽돌 등 다듬어지지 않은 소재를 사용하는 것이 특징이다. 또한, 진한 갈색이나 검은색, 회색을 활용하여 바래거나 벗겨진 듯한 컬러를 연출하고 거칠고 투박한 느낌을 준다. 또한, 편안하고 자연스러운 모양으로 천장, 벽 등을 그대로 노출하여 '인더스트리얼 스타일(Industrial Style)'을 포함할 수 있다. 이때 빈티지 스타일의 클래스는 "산업화, 기계적, 공장, 창고, 금속, 폐원목, 벽돌, 노출 콘크리트"의 키워드를 갖는 상품과 매칭될 수 있다.
한편, 상술한 공간의 스타일 분류는 예시일 뿐으로 실시예의 변형에 따라 다양한 스타일의 공간을 판별할 수 있도록 학습될 수 있다.
이하, 이미지 데이터베이스 분석 기반 상품 추천 장치(100)가 학습에 사용될 데이터의 증강을 위해 제1 공간 이미지로부터 제2 공간 이미지를 생성하는 동작을 도 6 내지 도 10과 함께 구체적으로 설명한다.
도 6은 제1 공간 이미지에 포함된 픽셀 정보를 변경하여 데이터를 증강하는 실시예에 따라 생성된 제2 공간 이미지의 예시도이다.
증강 모듈(122)은 제1 공간 이미지의 픽셀 중에서 밝은 부분을 더 밝게 하고 어두운 부분을 더 어둡게 하여 대비를 증가시키도록 변형하거나, 또는 제1 공간 이미지의 픽셀 중에서 밝은 부분을 덜 밝게 하고 어두운 부분을 덜 어둡게 하여 대비를 감소시키도록 변형하여, 카메라의 성능이나 기종에 따라 하나의 공간에 대한 이미지가 다르게 생성될 수 있는 변수까지 학습되도록 하는 제2 공간 이미지를 생성할 수 있다.
이를 위해, 증강 모듈(122)은 제1 공간 이미지에 포함된 픽셀 정보의 RGB 정보를 구성하는 (x, y, z) 원소값에 대하여, 소정의 기준값보다 큰 값을 가지는 원소값이 더 큰 값을 갖도록 변경하고, 기준값보다 작은 값을 가지는 원소값이 더 작은 원소값을 갖도록 변경하여 제2 공간 이미지를 생성할 수 있다.
예를 들어, 증강 모듈(122)은 제1 공간 이미지가 갖는 모든 픽셀이 갖는 픽셀 정보에 대해, 하기 수학식 1을 적용하여 픽셀 정보가 변경된 제2 공간 이미지를 생성할 수 있다.
[수학식 1]
Figure PCTKR2021009473-appb-img-000009
(src(I): 픽셀 정보의 변경 전 원소값 (x, y, z), α: 상수, β: 상수, dst(I): 픽셀 정보의 변경 후 원소값 (x', y', z'))
수학식 1에 따르면, α가 1보다 큰 값을 갖도록 설정하는 경우, 제1 공간 이미지의 픽셀 중에서 밝은 부분을 더 밝게 하고 어두운 부분을 더 어둡게 하여 대비를 증가시킬 수 있고, α가 0보다 크고 1보다 작은 값을 갖도록 설정하는 경우, 제1 공간 이미지의 픽셀 중에서 밝은 부분을 덜 밝게 하고 어두운 부분을 덜 어둡게 하여 대비를 감소시킬 수 있다.
또한, R, G, B의 원소값은 일반적으로 0부터 255 사이의 값을 가지기 때문에, α에 의해 출력되는 원소값이 255보다 지나치게 커지지 않도록 β를 설정할 수 있고, min함수를 사용하여 최댓값이 255보다 커지지 않도록 설정할 수 있다.
또한, R, G, B의 원소값은 일반적으로 0부터 255 사이의 값을 가지기 때문에, max 함수를 사용하여 β에 의해 출력되는 원소값이 0보다 작아지지 않도록 max 함수를 사용하여 할 수 있다.
더하여, α 가 소수점을 갖는 값으로 설정될 경우, 변경된 픽셀 정보의 원소값이 정수가 되도록 round 함수를 사용할 수 있다.
도 6A를 참조하면, 좌측은 제1 공간 이미지이고, 우측은 α:2.5, β:330 을 설정하여 수학식 1을 적용한 경우의 제2 공간 이미지이다. 도 6A의 우측 제2 공간 이미지는 제1 공간 이미지에 비해, 밝은 부분이 더 밝게 변하고 어두운 부분이 더 어둡게 변하여 대비가 증가된 새로운 학습 데이터가 생성됨을 확인할 수 있다.
도 6B를 참조하면, 좌측은 제1 공간 이미지이고, 우측은 α:0.8, β:50 을 설정하여 수학식 1을 적용한 경우의 제2 공간 이미지이다. 도 6B의 우측 제2 공간 이미지는 제1 공간 이미지에 비해, 밝은 부분이 덜 밝게 변하고 어두운 부분이 덜 어둡게 변하여 대비가 감소된 새로운 학습 데이터가 생성됨을 확인할 수 있다.
도 6C를 참조하면, 좌측은 하나의 색 (R, G, B) = (183, 191, 194)으로 통일된 제1 공간 이미지이고, 우측은 α:2.5, β:330 을 설정하여 수학식 1을 적용한 경우의 제2 공간 이미지이다. 도 6C를 통해 하나의 픽셀 정보가 수학식 1에 따라 변하는 정도를 확인할 수 있다.
도 7은 이미지 데이터베이스 분석 기반 상품 추천 장치가 제1 공간 이미지(a)의 픽셀 정보를 소정 범위 내로 변경시킨 제2 공간 이미지(b)의 예시도이다.
공간 이미지의 색감 또는 색상은 공간의 스타일을 결정하는 중요한 요소 중 하나이다. 따라서, 증강 모듈(122)이 데이터 증강을 위해 RGB 정보를 상대적으로 큰 폭으로 변경하는 경우에 생성되는 제2 공간 이미지는 원본인 제1 공간 이미지와는 다른 색상을 가질 가능성이 높아, 제2 공간 이미지가 나타내는 공간의 스타일 자체가 제1 공간 이미지와 상이할 수 있다. 이러한 경우, 원본인 제1 공간 이미지와 새롭게 생성된 제2 공간 이미지는 서로 스타일 자체가 달라져, 증강된 학습 데이터인 제2 공간 이미지에 대한 레이블링 작업 시, 원본인 제1 공간 이미지와 변경된 제2 공간 이미지는 서로 다른 스타일 클래스를 레이블링해야 할 필요가 있다. 이러한 경우, 색상의 지나친 변경은 현실감과 동떨어진 데이터를 생성하면서, 제2 공간 이미지에 대해 제1 공간 이미지의 클래스와 상이한 클래스를 다시 레이블링해야 하는 작업을 발생시킬 수 있다.
이러한 작업이 발생하는 것을 방지하기 위해, 본 발명의 실시예는 도 7의 예시와 같이 공간의 스타일 변화가 없는 정도의 범위 내에서 제1 공간 이미지(도 7(a))의 RGB 정보를 변경하여 제2 공간 이미지(도 7(b))를 생성하고, 레이블링 모듈(121)은 새롭게 생성된 레이블링이 수행되기 전의 제2 공간 이미지에 대하여, 제1 공간 이미지에 레이블링된 클래스를 제2 공간 이미지에 동일하게 레이블링을 수행하여, 학습 데이터의 수량을 증가시키면서 증강된 학습 데이터에 대한 레이블링을 자동화하여 성능이 향상된 이미지 분류 모델을 제공할 수 있다.
이를 위해, 증강 모듈(122)은 아래 수학식 2를 통해 제1 공간 이미지가 포함하는 픽셀 정보를 소정 범위 내에서 변경한 제2 공간 이미지를 생성할 수 있다.
[수학식 2]
Figure PCTKR2021009473-appb-img-000010
(src(I): 픽셀 정보의 변경 전 원소값 (x, y, z), γ: 기 설정된 값인 n 이하의 난수, dst(I): 픽셀 정보의 변경 후 원소값 (x', y', z'))
수학식 2에 따르면, γ는 기 설정된 값인 n보다 작은 값을 갖는 난수이다. 따라서, 증강 모듈(122)은 제1 공간 이미지가 포함하는 픽셀 중 어느 하나의 값인 (x, y, z) 원소값을 변경시키기 위해 난수 γr, γg, γb를 발생시켜, 해당 픽셀의 원소값을
Figure PCTKR2021009473-appb-img-000011
으로 변경할 수 있고, 이러한 연산은 제1 공간 이미지가 포함하는 모든 픽셀 또는 선택된 일부 픽셀에 대해 적용되는 방식으로 제2 공간 이미지를 생성할 수 있다. 이에 따라, 빛이 공간에 들어오거나 들어오지 않음에 따라, 또는 시간에 따라 촬영되는 이미지의 색상이 어느 정도 변경될 수 있다는 변수를 학습에 반영하도록, 수학식 2에 따른 방식으로 데이터를 새롭게 생성하여 해당 변수를 학습시킬 수 있다.
도 8A는 제1 공간 이미지에 포함된 픽셀 정보에 그레이 스케일을 적용하여 데이터를 증강하는 실시예에 따라 생성된 제2 공간 이미지의 예시도이다.
공간 이미지에 대한 클래스 판별은 사물의 배치나, 사물의 패턴에 큰 영향을 받기 때문에, 증강 모듈(122)은 색상을 단조롭게 변환시킨 후 사물의 배치와 사물의 패턴을 보다 잘 학습되도록 변수를 반영한 학습 데이터를 생성할 수 있다.
이를 위해, 증강 모듈(122)은 도 8A의 좌측 이미지와 같이, 제1 공간 이미지가 갖는 모든 픽셀 정보에 대해, 하기 수학식 3을 적용하여 픽셀 정보가 단조로운 색상을 가지면서 배치와 패턴이 드러나는 제2 공간 이미지를 생성할 수 있다.
[수학식 3]
Figure PCTKR2021009473-appb-img-000012
(R: 픽셀 정보의 RGB 정보 (x, y, z) 중 x, G: 픽셀 정보의 RGB 정보 (x, y, z) 중 y, B: 픽셀 정보의 RGB 정보 (x, y, z) 중 z, Y: 픽셀 정보의 변경 후 원소값 (x', y', z'))
더하여, 증강 모듈(122)은 도 8A의 우측 이미지와 같이, 하기 수학식 4를 통해 제1 공간 이미지의 대비를 증가시킨 후 도출된 원소값에, 하기 수학식 5를 적용하여, 제1 공간 이미지에 포함된 사물의 배치와 패턴이 보다 극명하게 드러나는 제2 공간 이미지를 생성할 수 있다.
[수학식 4]
Figure PCTKR2021009473-appb-img-000013
(src(I): 픽셀 정보의 변경 전 원소값 (x, y, z), α: 상수, β: 상수, dst(I): 픽셀 정보의 변경 후 원소값 (x', y', z'))
[수학식 5]
Figure PCTKR2021009473-appb-img-000014
(R: 수학식 4에서 구해진 dst(I)의 (x', y', z') 중 x', G: 수학식 4에서 구해진 dst(I)의 (x', y', z') 중 y', B: 수학식 4에서 구해진 dst(I)의 (x', y', z') 중 z', Y: 픽셀 정보의 변경 후 원소값 (x'', y'', z'')
또한, 증강 모듈(122)은 수학식 4와 5를 사용하는 위 실시예에서 수학식 4 대신, 수학식 2를 적용하고 수학식 5를 적용하는 방식을 통해, 소정 범위 내로 변경된 픽셀 정보의 패턴이 극명하게 나타나도록 변경된 제2 공간 이미지를 생성할 수도 있다.
도 8B는 제1 공간 이미지에 포함된 픽셀 정보의 일부에 노이즈를 추가하여 데이터를 증강하는 실시예에 따라 생성된 제2 공간 이미지의 예시도이다.
증강 모듈(122)은 카메라를 확대하여 촬영하는 경우 이미지에 노이즈가 발생하는 경우를 학습하기 위한 학습 데이터를 생성할 수 있다. 이를 위해, 증강 모듈(122)은 제1 공간 이미지에 포함된 픽셀 정보의 일부에 노이즈 정보를 추가하여 제2 공간 이미지를 생성할 수 있다. 예를 들어, 증강 모듈(122)은 난수 발생 알고리즘을 통해 임의의 좌표 정보를 생성하여, 제1 공간 이미지에 포함된 픽셀 중 일부의 좌표를 선택하고, 선택된 좌표의 픽셀이 갖는 원소값에 대해 하기 수학식 6을 이용하여, 픽셀 정보에 난수 발생 알고리즘을 이용해 산출되는 난수를 부가하여 노이즈 정보가 추가된 제2 공간 이미지를 생성할 수 있다.
[수학식6]
Figure PCTKR2021009473-appb-img-000015
(src(I): 픽셀 정보의 변경 전 원소값 (x, y, z), N: 난수, dst(I): 픽셀 정보의 변경 후 원소값 (x', y', z'))
도 8B를 참조하면, 좌측은 제1 공간 이미지이고, 우측은 수학식 6을 적용하여 노이즈를 추가한 경우의 제2 공간 이미지를 확인할 수 있다.
도 9는 제1 공간 이미지에 포함된 사물의 테두리 영역을 구분하고, 테두리가 아닌 영역에 블러를 적용하여 제2 공간 이미지를 생성하는 방법을 설명하기 위한 예시도이다.
증강 모듈(121)은 카메라의 초점이 잘 맞지 않는 상태에서 촬영된 이미지를 학습하도록 다음의 실시예를 통해 사물의 가장자리가 뭉개진 듯한 제2 공간 이미지를 생성할 수 있다.
도 9A은 설명의 편의를 위해, 가로 5개 x 세로 5개 행렬 형태의 25개 픽셀을 포함하는 제1 공간 이미지를 가정하여 각 픽셀 영역을 구분한 예시이다. 이때 각 픽셀은 R, G, B의 원소값을 갖지만, R (Red)의 원소값을 기준으로 실시예를 설명한다. 도 9A의 각 픽셀 영역에 도시된 숫자는 R의 원소값을 의미한다.
도 9A의 경우, 모든 픽셀에 후술할 방식의 연산이 수행되지만 설명의 편의를 위해 정중앙의 픽셀을 기준으로 연산을 설명한다. 도 5A의 경우 증강 모듈(121)은 연산이 수행되는 픽셀을 중앙으로 하는 NxN 영역(도 9A에서 N은 3을 가정)에 포함된 픽셀 중 R 원소값의 최댓값(R_max = 130) 과 R 원소값의 평균값(R_avg = 120)의 차이(R_max - R_avg = 10)를 계산하여, 도출되는 값이 기 설정된 값 n보다 작은 경우의 픽셀(사물의 안쪽 영역에 존재하는 픽셀로 판별)과 기 설정된 값 n보다 큰 경우의 픽셀(사물의 테두리 영역에 존재하는 픽셀로 판별)을 구분하여, 도 9B의 우측과 같이 제1 공간 이미지에 포함된 사물의 테두리를 판별할 수 있다. 여기서, 증강 모듈(121)은 테두리 영역을 제외한 영역의 픽셀에 대해서만 가우시안 블러 알고리즘을 적용하여 도 9C의 우측 이미지와 같은 이미지를 생성할 수 있다. 한편, 연산이 수행되는 픽셀을 기준으로 하는 NxN 영역에 픽셀이 존재하지 않는 영역(ex. 이미지의 가장자리 쪽)이 존재한다면, 해당 픽셀에 대해서는 상술한 연산을 생략하고 블러 처리를 할 수 있다.
이처럼, 증강 모듈(121)은 제1 공간 이미지가 포함하는 모든 픽셀 각각에 대하여 위의 연산을 수행할 수 있다. 연산이 수행되는 픽셀의 경우, 해당 픽셀을 중앙에 포함하는 NxN (N은 3 이상의 홀수) 행렬 크기에 포함되는 복수의 픽셀을 커널 영역으로 선택하고, 커널 영역에 포함된 복수의 픽셀의 R, G, B 각각의 원소값 중 최대 원소값인 (R_max, G_max, B_max)에서, 커널 영역에 포함된 복수의 픽셀의 R, G, B 각각의 원소 평균값인 (R_avg, G_avg, B_avg)을 뺀 값인 (R_max-R_avg, G_max-G_avg, B_max-B_avg)을 구하고, (R_max-R_avg, G_max-G_avg, B_max-B_avg) 중 적어도 어느 하나의 원소값이 기 설정된 값 n보다 작으면 해당 픽셀에 가우시안 블러 알고리즘을 적용하여 제2 공간 이미지를 생성할 수 있다.
이와 같은 연산을 제1 공간 이미지에 포함된 모든 픽셀에 대해 수행하면, 색상 차이가 크게 벌어지는 테두리 영역의 픽셀만이 픽셀 정보를 그대로 가지고, 색상 차이가 없는 영역의 픽셀은 블러 처리되어, 카메라의 초점이 잘 맞지 않는 상태에서 촬영된 이미지를 학습할 수 있는 제2 공간 이미지를 생성할 수 있다. 이때 블러 처리는 가우시안 블러 알고리즘을 적용할 수 있으나 이에 한정되지 않고 다양한 블러 필터를 사용할 수 있다.
도 9B를 참조하면, 좌측은 제1 공간 이미지이고, 우측은 도 9을 통해 설명한 실시예에서 기 설정된 값 n보다 큰 경우와 n보다 작은 경우의 픽셀을 구분하여 생성된 이미지이다. 도 9B의 우측 이미지 역시 사물의 테두리를 극명하게 나타내기 때문에, 사물의 배치와 패턴을 명확하게 인식시키기 위한 목적으로 학습 데이터에 추가하여 사용할 수 있다.
도 9C를 참조하면, 좌측은 제1 공간 이미지이고, 우측은 상술한 도 9의 실시예에서 N = 7, n = 20을 적용한 실시예로, 테두리 이외의 영역이 블러 처리된 제2 공간 이미지를 확인할 수 있다.
더하여, 도 9를 통해 설명한 실시예에서 기 설정된 값 n보다 큰 경우의 픽셀을 블러 처리하여 상술한 실시예와 반대의 효과를 발생시킨 제2 공간 이미지를 추가적으로 학습 데이터 DB(111)에 추가할 수도 있다.
도 10은 제1 공간 이미지에 가우시안 정규 분포에 따른 노이즈 정보를 추가하여 데이터를 증강하는 실시예에 따라 생성된 제2 공간 이미지의 예시도이다.
증강 모듈(121)은 이미지의 특정 부분에 초점이 맞지 않는 경우를 학습하기 위한 학습 데이터를 생성할 수 있다. 이를 위해, 증강 모듈(121)은 제1 공간 이미지가 포함하는 모든 픽셀의 개수만큼, 평균 0 및 표준편차 100의 표준 가우시안 정규 분포를 따르는 난수 정보를 생성하고, 모든 픽셀의 각각에 난수 정보 각각을 합산하여 노이즈 정보가 삽입된 제2 공간 이미지를 생성할 수 있다.
레이블링 모듈(121)은 도 5 내지 도 8을 통해 생성된 제2 공간 데이터에 대하여, 변형 전의 원본인 제1 공간 이미지에 레이블링된 클래스를, 변형 후의 제2 공간 이미지에 동일하게 레이블링하여, 증강된 학습 데이터에 대한 레이블링 과정을 자동화하여 레이블링 시간을 단축시킬 수 있다.
이후, 학습 모듈(125)은 이미지 분류 알고리즘 기반으로 설계된 모델에 원본 학습 데이터(제1 공간 이미지)와 도 6 내지 도 10의 실시예들을 통해 증강된 학습 데이터(제2 공간 이미지)를 입력하여, 학습 데이터에 포함된 공간 이미지와 공간 이미지 각각에 레이블링된 스타일 클래스와의 상관관계를 도출하는 모델의 가중치를 학습시킴으로써, 상관관계를 기초로 공간 이미지에 대한 클래스를 판별하는 모델을 생성할 수 있다.
이하, 도 11 내지 도 14를 통해 배색 추천 알고리즘에 관해 설명한다.
도 11은 본 발명의 일 실시예에 따른 이미지 데이터베이스 기반 상품 추천 장치(100)가 공간 이미지에 주로 사용된 5가지 색상과 사용 비율을 추출하는 동작을 설명하기 위한 예시도이다.
공간 이미지를 구성하는 색상이 매우 많은 경우, 공간 이미지를 구성하는 모든 색상의 종류와 어울리는 배색을 판별하도록 연산한다면 모든 색상에 대해 연산이 필요하여 오랜 시간이 걸릴 수 있고, 이미지 내에 매우 낮은 비율로 포함된 색상에 대해서도 연산이 수행되기 때문에 비효율적일 수 있다. 따라서, 색상 판별 모듈(124)은 배색 추천에 사용될 주요 색상을 선별하기 위해, 공간 이미지에 사용된 색상의 비율이 높은 순서로 공간 이미지를 구성하는 색상 중 일부를 연산에 사용될 주요 색상(이하, '제1 색상'으로 지칭)으로 선별할 수 있다.
도 11을 참조하면, 색상 판별 모듈(124)은 공간 이미지에 사용된 색상의 비율이 높은 순서로 공간 이미지를 구성하는 n가지의 색상을 선별할 수 있다. 도 11의 경우 n = 5인 예시로서, 색상 판별 모듈(124)은 5가지의 색상 각각이 공간 이미지에서 사용된 비율의 합을 100%로 환산할 수 있다. (도 3의 경우, C1 색: 30%, C2 색: 25%, C3 색: 20%, C4 색: 15%, C5 색: 10%)
이때 색상 판별 모듈(124)은 C1 내지 C5의 5가지 색상 중 상기 비율이 높은 순서로 상기 비율을 누적하여 합하였을 때 a%(a는 100 이하의 자연수)를 초과할 때까지의 색상을 제1 색상으로 선별할 수 있다. 예를 들어, a%가 70%인 경우, C1, C2, C3 각각의 색상이 사용된 비율을 합산하였을 때, 70%를 초과하게 되므로, 제1 색상을 C1, C2, C3로 선별할 수 있다.
배색 판별 모듈(125)은 선별된 제1 색상 각각이 가지는 RGB 정보를 기초로 소프트 및 다이내믹을 원소로 하는 소정의 컬러 이미지 스케일상의 제1 색상의 위치를 판별하여 제1 색상이 갖는 소프트(soft) 원소값 및 색상의 다이내믹(dynamic) 원소값을 판별할 수 있다.
도 12는 색상들을 소프트 및 다이내믹을 축으로 하는 2차원 좌표 평면에 배치한 컬러 이미지 스케일의 예시도이다.
컬러 이미지 스케일은 어울리는 배색을 가진 색상들이 가깝게 위치하도록 표현하기 위한 그래프로서, 색상이 동적인가-정적인가에 따른 척도를 나타내는 다이내믹(dynamic) 값, 색상이 부드러운가-딱딱한가에 대한 척도를 나타내는 소프트(soft) 값을 기준으로 색상들을 분류한 그래프이다. 배색 판별 모듈(125)은 제1 색상의 RGB 정보를 기초로 컬러 이미지 스케일 상에서 제1 색상과 가장 가까운 수치의 RGB 정보를 갖는 색상이 위치하는 좌표를 판별하여, 제1 색상의 소프트(soft) 원소값 및 색상의 다이내믹(dynamic) 원소값을 결정할 수 있다. 본 발명의 실시예는 다양한 컬러 이미지 스케일을 사용할 수 있으나, DB 생성 모듈(126)에 대해 후술하는 부분에서 본 발명의 실시예는 웹(Web)상에서 주로 사용되는 색상을 기반으로 컬러 이미지 스케일을 생성하는 방법을 제시한다.
제어 모듈(127)은 제1 색상 각각이 갖는 컬러 이미지 스케일상의 원소값을 기준으로, 공간 이미지에 가장 잘 어울리는 배색이 컬러 이미지 스케일 상에서 위치하는 좌표인 배색 원소값을 계산할 수 있다.
이때 제어 모듈(127)은 제1 색상 각각이 공간 이미지에서 사용된 비율을 가중치로 하여, 제1 색상 각각의 원소값에 가중치를 가하여 조합한 배색 원소값을 계산할 수 있다. 각 원소값에 가중치를 가하여 조합하는 실시예는 중앙값, 평균값, 벡터합 등 다양한 방법을 실현할 수 있으며, 가령 가중 산술 평균을 적용할 수 있다.
예를 들어, 제어 모듈(127)은 제1 색상 각각이 공간 이미지에서 사용된 비율의 합을 100%로 환산하고 도출된 각각의 비율을 제1 색상 각각의 가중치로 하여, 제1 색상 각각의 2차원 원소값에 하기 수학식 7과 같이 가중 산술 평균을 적용하여 배색 원소값을 계산할 수 있다.
[수학식 7]
Figure PCTKR2021009473-appb-img-000016
Figure PCTKR2021009473-appb-img-000017
(N = 제1 색상의 개수, a = 공간 이미지에서 N 개의 제1 색상들이 사용된 비율의 합을 100%로 환산하였을 때 특정 제1 색상이 사용된 비율, S: 소프트 원소값, D: 다이내믹 원소값, Sav: 제1 색상들의 소프트 값에 대한 가중 산술 평균 원소값, Dav: 제1 색상들의 다이내믹 값에 대한 가중 산술 평균 원소값)
도 11의 예시에 수학식 7을 적용하는 예시를 설명한다. 도 11에서 제1 색상으로 선별된 C1, C2, C3가 공간 이미지에서 사용된 비율은 C1: 30%, C2: 25%, C3: 20% 이다. 이때 각 비율의 합이 100%가 되게 환산한다면,
Figure PCTKR2021009473-appb-img-000018
Figure PCTKR2021009473-appb-img-000019
Figure PCTKR2021009473-appb-img-000020
와 같다. 이때 컬러 이미지 스케일(S축, D축) 상에서 C1의 좌표는 (S1, D1) = (0.5, 0.4), C2의 좌표는 (S2, D2) = (0.4, 0.3), C3의 좌표는 (S3, D3) = (0.3, 0.2) 이라고 가정한다.
이때 배색 원소값 (Sav, Dav)은 수학식 7을 적용할 경우 아래와 같이 (0.4133, 0.3133)으로 계산될 수 있다.
Figure PCTKR2021009473-appb-img-000021
Figure PCTKR2021009473-appb-img-000022
제어 모듈(127)은 컬러 이미지 스케일에 계산된 배색 원소값을 포함하는 배색군을 공간 이미지에 어울리는 배색으로 추천할 수 있다.
도 13은 컬러 이미지 스케일상의 색상들에 대해서 소프트 값 및 다이내믹 값의 범위를 기준으로 분류한 그룹들의 예시도이다.
도 13을 참조하여, 도 11의 예시를 적용하는 경우 도 11에 대하여 배색 원소값 (0.4133, 0.3133)은 소프트 범위 0.4 ~ 0.6, 다이내믹 범위 0.0 ~ 0.4에 위치하는 "심플한"이라는 배색군에 위치한다. 이에 따라, 제어 모듈(127)은 컬러 이미지 스케일에서"심플한" 이라는 배색군에 속한 색상을 공간 이미지에 어울리는 배색으로 추천할 수 있다.
DB 생성 모듈(126)은 웹상에서 주로 사용되는 색상들을 기준으로 컬러 이미지 스케일을 생성할 수 있다. 예를 들어, DB 생성 모듈(126)은 275 가지 색상을 포함하는 컬러 팔레트를 획득할 수 있다. DB 생성 모듈(126)은 웹상에서 자주 사용되는 색상을 사용하기 위해 HTML 컬러 팔레트 또는 자바스크립트 컬러 팔레트를 사용할 수 있다.
이후, DB 생성 모듈(126)은 275가지 색상에 대해 소프트 및 다이내믹 값을 결정해야 하는데, 값의 연산을 효율적으로 하기 위하여, 먼저275가지 색상의 RGB 정보를 기준으로 색상들을 분류하여 32개의 그룹으로 군집시킬 수 있다. DB 생성 모듈(126)은 275가지 색상의 RGB 정보를 기준으로 도 14와 같이 RGB 3차원 좌표 평면에 배치할 수 있고, 3차원 공간상에 위치하는 색상 간의 거리를 기준으로 가까운 색상끼리 32개의 그룹으로 분류할 수 있다.
다음으로, DB 생성 모듈(126)은 그룹에 포함된 색상들의 RGB 정보를 기초로 RGB 정보의 중앙값 또는 평균값을 계산하여, 그룹에 포함된 색상 중의 RGB 정보가 중앙값 또는 평균값에 가장 가까운 색상을 각 그룹의 리더 색상으로 선별할 수 있다.
이에 따라, DB 생성 모듈(126)은 각 그룹의 리더 색상에 대해서만 RGB 정보를 기초로 리더 색상의 소프트 값 및 다이내믹 값을 결정할 수 있다. 결정 이후, DB 생성 모듈(126)은 리더 색상과 리더 색상과 같은 그룹에 속한 다른 색상들의 RGB 정보의 차잇값을 기반으로, 리더 색상의 소프트 값 및 다이내믹 값에 기 설정된 수치를 가산하거나 감산하여 리더 색상과 같은 그룹인 색상들의 소프트 값 및 다이내믹 값을 결정할 수 있다.
이에 따라, DB 생성 모듈(126)은 275가지의 색상에 대해 결정된 소프트 값 및 다이내믹 값을 기준으로, 소프트 및 다이내믹을 축에 배치하여 웹상에서 주로 사용되는 색상 기반의 컬러 이미지 스케일을 생성할 수 있고, 소프트 값 및 다이내믹 값을 소정의 범위에 따라 분류하여 도 4와 같은 배색군을 생성할 수 있다. 한편, 위에 예시된 275의 색상과 32개의 그룹은 예시일 뿐, 실시하는 방안에 따라 다양한 색상을 사용할 수 있고, 사용되는 색상 보다 작은 수로 그룹으로 분류하여 실시예를 구현할 수 있다.
입력 인터페이스(130)는 사용자가 입력하는 데이터 또는 웹상의 데이터를 획득하고, 프로세서(120)의 연산을 위해 공간 이미지를 입력 받을 수 있다. 데이터는 소정의 공간에 배치된 객체들에 대한 이미지와, 이미지를 구성하는 픽셀의 RGB 정보를 포함하는 공간 이미지, 복수의 색상에 대한 RGB 정보를 포함하는 컬러 팔레트, 소정의 원소값(ex. 소프트, 다이내믹, 명도, 채도, 색상 등)에 따라 색상을 분류할 수 있는 복수의 컬러 이미지 스케일을 포함할 수 있다.
상술한 본 발명의 실시예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다.
하드웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서, 컨트롤러, 마이크로 컨트롤러, 마이크로프로세서 등에 의해 구현될 수 있다.
펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차 또는 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드 등이 기록된 컴퓨터 프로그램은 컴퓨터 판독 가능 기록 매체 또는 메모리 유닛에 저장되어 프로세서에 의해 구동될 수 있다. 메모리 유닛은 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 프로세서와 데이터를 주고받을 수 있다.
또한 본 발명에 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 인코딩 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 인코딩 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방법으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
더불어 각 블록 또는 각 단계는 특정된 논리적 기능을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또한 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
이와 같이, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (26)

  1. 이미지 데이터베이스 분석 기반 상품 추천 장치에 있어서,
    소정의 동작을 수행하도록 하는 명령어들을 저장하는 하나 이상의 메모리; 및 상기 하나 이상의 메모리와 동작할 수 있도록 연결되어 상기 명령어들을 실행하도록 설정된 하나 이상의 프로세서를 포함하고,
    상기 프로세서가 수행하는 동작은,
    소정의 공간에 배치된 상품에 대한 이미지 파일을 포함하는 이미지 데이터베이스를 획득하는 동작;
    상기 이미지 파일에 포함된 공간의 용도, 사물의 종류, 공간의 스타일 및 색상에 어울리는 배색을 특정하는 메타데이터를 추출하여, 상기 이미지 파일 또는 상기 상품의 상품 정보에 상기 메타데이터를 매핑하는 동작;
    소정의 상품을 선정하기 위한 카테고리 정보로서, 공간의 용도, 사물의 종류, 공간의 스타일 및 배색 중 적어도 어느 하나에 대한 카테고리를 결정하는 동작; 및
    상기 결정된 카테고리와 대응되는 메타데이터와 매핑된 이미지 파일 또는 상품 정보를 상기 이미지 데이터베이스에서 검색하여 추천하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  2. 제1항에 있어서,
    상기 카테고리를 결정하는 동작은,
    사용자의 공간을 촬영한 제1 이미지를 획득하는 동작;
    상기 제1 이미지에 포함된 공간의 용도, 사물의 종류, 공간의 스타일 및 배색을 특정하는 메타데이터를 추출하는 동작; 및
    상기 제1 이미지에서 추출된 사물의 종류에 대한 메타데이터를 포함하지 않으면서, 상기 샘플 이미지에서 추출된 공간의 용도, 공간의 스타일 및 배색에 대한 메타데이터를 포함하는 카테고리의 상품 선정을 결정하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  3. 제1항에 있어서,
    상기 카테고리를 결정하는 동작은,
    사용자의 공간을 촬영한 제1 이미지를 획득하는 동작;
    상기 제1 이미지에 포함된 공간의 용도, 사물의 종류, 공간의 스타일 및 배색을 특정하는 메타데이터를 추출하는 동작; 및
    상기 제1 이미지에서 추출된 사물의 종류에 대한 메타데이터 중 상기 사용자가 선택한 하나의 사물에 대한 메타데이터를 포함하면서, 상기 제1 이미지에서 추출된 공간의 용도, 공간의 스타일 및 배색에 대한 메타데이터를 포함하는 카테고리의 상품 선정을 결정하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  4. 제1항에 있어서,
    상기 메타데이터를 매핑하는 동작은,
    공간 이미지에 포함된 공간의 용도를 특정하는 제1 신경망 모델을 이용하여 상기 메타데이터를 추출하는 동작을 더 포함하고,
    상기 제1 신경망 모델은 프로세서가,
    복수의 공간 이미지를 획득하여 상기 복수의 공간 이미지 각각에 해당하는 공간 정보를 특정하는 클래스를 레이블링하거나, 상기 클래스가 레이블링된 복수의 공간 이미지를 획득하여 학습 데이터를 생성하는 동작;
    상기 복수의 공간 이미지 중 제1 공간 이미지가 포함하는 픽셀 정보의 일부 또는 전부를 변경한 제2 공간 이미지를 생성하여 상기 학습 데이터를 증강하는 동작;
    상기 제1 공간 이미지에 레이블링된 클래스를 상기 제2 공간 이미지에 레이블링하는 동작; 및
    소정의 이미지 분류 알고리즘 기반으로 설계된 모델에 상기 증강된 학습 데이터를 입력하고, 상기 학습 데이터에 포함된 공간 이미지와 상기 공간 이미지 각각에 레이블링된 클래스와의 상관관계를 도출하는 상기 모델의 가중치를 학습시킴으로써, 상기 상관관계를 기초로 공간 이미지에 대한 클래스를 판별하는 모델을 생성하는 동작을 수행하여 생성되는,
    이미지 데이터베이스 분석 기반 상품 추천 장치
  5. 제1항에 있어서,
    상기 메타데이터를 매핑하는 동작은,
    공간 이미지에 포함된 사물의 종류를 특정하는 제2 신경망 모델을 이용하여 상기 메타데이터를 추출하는 동작을 더 포함하고,
    상기 제2 신경망 모델은 프로세서가,
    제1 사물 이미지를 포함하는 제1 공간 이미지를 획득하여, 상기 제1 공간 이미지가 포함하는 픽셀 정보를 변경한 제2 공간 이미지를 생성하는 동작;
    상기 제1 공간 이미지 내의 상기 제1 사물 이미지를 포함하는 영역에 바운딩 박스(bounding box)를 지정하고, 상기 바운딩 박스에 상기 제1 사물 이미지를 특정하는 제1 클래스를 레이블링하는 동작;
    소정의 이미지 분류 알고리즘 기반으로 설계된 모델에 상기 제1 공간 이미지를 입력하여, 상기 바운딩 박스 내 상기 제1 사물 이미지와 상기 제1 클래스와의 상관관계를 도출하는 상기 모델의 가중치를 1차 학습시킴으로써, 상기 상관관계를 기초로 공간 이미지에 포함된 사물 이미지를 특정하고 클래스를 판별하는 모델을 생성하는 동작;
    상기 1차 학습된 모델에 상기 제2 공간 이미지를 입력하여, 상기 모델이 상기 제2 공간 이미지 내의 제2 사물 이미지를 특정한 바운딩 박스와, 상기 모델이 상기 제2 사물 이미지에 대해 판별한 제2 클래스를 상기 제2 공간 이미지에 레이블링하는 동작; 및
    상기 제2 공간 이미지를 기초로 상기 모델의 가중치를 2차 학습시킨 모델을 생성하는 동작을 수행하여 생성되는,
    이미지 데이터베이스 분석 기반 상품 추천 장치
  6. 제1항에 있어서,
    상기 메타데이터를 매핑하는 동작은,
    공간 이미지에 포함된 공간의 스타일을 특정하는 제3 신경망 모델을 이용하여 상기 메타데이터를 추출하는 동작을 더 포함하고,
    상기 제3 신경망 모델은 프로세서가,
    복수의 공간 이미지를 획득하여 상기 복수의 공간 이미지 각각에 해당하는 스타일 정보를 특정하는 클래스를 레이블링하거나, 상기 클래스가 레이블링된 복수의 공간 이미지를 획득하여 학습 데이터를 생성하는 동작;
    상기 복수의 공간 이미지 중 제1 공간 이미지가 포함하는 픽셀 정보를 소정의 범위 내에서 변경한 제2 공간 이미지를 생성하여 상기 학습 데이터를 증강하는 동작;
    상기 제1 공간 이미지에 레이블링된 클래스를 상기 제2 공간 이미지에 레이블링하는 동작; 및
    소정의 이미지 분류 알고리즘 기반으로 설계된 모델에 상기 증강된 학습 데이터를 입력하고, 상기 학습 데이터에 포함된 공간 이미지와 상기 공간 이미지 각각에 레이블링된 클래스와의 상관관계를 도출하는 상기 모델의 가중치를 학습시킴으로써, 상기 상관관계를 기초로 공간 이미지의 스타일에 대한 클래스를 판별하는 모델을 생성하는 동작을 수행하여 생성되는,
    이미지 데이터베이스 분석 기반 상품 추천 장치
  7. 제4항, 제5항 또는 제6항에 있어서,
    상기 제2 공간 이미지를 생성하는 동작은,
    상기 제1 공간 이미지에 포함된 픽셀 정보의 RGB 정보를 구성하는 (x, y, z) 원소값에 대하여, 소정의 기준값보다 큰 값을 가지는 원소값이 더 큰 값을 갖도록 변경하고, 상기 기준값보다 작은 값을 가지는 원소값이 더 작은 원소값을 갖도록 변경하여 상기 제2 공간 이미지를 생성하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  8. 제7항에 있어서,
    상기 제2 공간 이미지를 생성하는 동작은,
    [수학식 1]
    Figure PCTKR2021009473-appb-img-000023
    (src(I): 픽셀 정보의 변경 전 원소값 (x, y, z), α: 상수, β: 상수, dst(I): 픽셀 정보의 변경 후 원소값 (x', y', z'))
    상기 수학식 1을 기초로 상기 제1 공간 이미지로부터 상기 제2 공간 이미지를 생성하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  9. 제4항, 제5항 또는 제6항에 있어서,
    상기 제2 공간 이미지를 생성하는 동작은,
    [수학식 2]
    Figure PCTKR2021009473-appb-img-000024
    (src(I): 픽셀 정보의 변경 전 원소값 (x, y, z), γ: 기 설정된 값인 n 이하의 난수, dst(I): 픽셀 정보의 변경 후 원소값 (x', y', z'))
    상기 수학식 2를 기초로 상기 제1 공간 이미지로부터 상기 제2 공간 이미지를 생성하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  10. 제4항, 제5항 또는 제6항에 있어서,
    상기 제2 공간 이미지를 생성하는 동작은,
    [수학식 3]
    Figure PCTKR2021009473-appb-img-000025
    (R: 픽셀 정보의 RGB 정보 (x, y, z) 중 x, G: 픽셀 정보의 RGB 정보 (x, y, z) 중 y, B: 픽셀 정보의 RGB 정보 (x, y, z) 중 z, Y: 픽셀 정보의 변경 후 원소값 (x', y', z'))
    상기 수학식 3을 기초로 상기 제1 공간 이미지로부터 상기 제2 공간 이미지를 생성하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  11. 제4항, 제5항 또는 제6항에 있어서,
    상기 제2 공간 이미지를 생성하는 동작은,
    [수학식 4]
    Figure PCTKR2021009473-appb-img-000026
    (src(I): 픽셀 정보의 변경 전 원소값 (x, y, z), α: 상수, β: 상수, dst(I): 픽셀 정보의 변경 후 원소값 (x', y', z'))
    [수학식 5]
    Figure PCTKR2021009473-appb-img-000027
    (R: 상기 dst(I)의 (x', y', z') 중 x', G: 상기 dst(I)의 (x', y', z') 중 y', B: 상기 dst(I)의 (x', y', z') 중 z', Y: 픽셀 정보의 변경 후 원소값 (x'', y'', z''))
    상기 수학식 4 및 5를 기초로 상기 제1 공간 이미지로부터 상기 제2 공간 이미지를 생성하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  12. 제4항, 제5항 또는 제6항에 있어서,
    상기 제2 공간 이미지를 생성하는 동작은,
    상기 제1 공간 이미지에 포함된 픽셀 정보의 일부에 노이즈 정보를 추가하여 상기 제2 공간 이미지를 생성하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  13. 제12항에 있어서,
    상기 제2 공간 이미지를 생성하는 동작은,
    [수학식 6]
    Figure PCTKR2021009473-appb-img-000028
    (src(I): 픽셀 정보의 변경 전 원소값 (x, y, z), N: 난수, dst(I): 픽셀 정보의 변경 후 원소값 (x', y', z'))
    상기 수학식 6을 기초로 상기 제1 공간 이미지의 픽셀 정보에 노이즈 정보를 부가하여 상기 제2 공간 이미지를 생성하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  14. 제4항, 제5항 또는 제6항에 있어서,
    상기 제2 공간 이미지를 생성하는 동작은,
    상기 제1 공간 이미지가 포함하는 픽셀 중 제1 픽셀을 정중앙에 포함하는 NxN (N은 3 이상의 자연수) 행렬 크기에 포함된 복수의 픽셀의 R, G, B 각각의 원소값 중 최대 원소값인 (R_max, G_max, B_max)에서 상기 복수의 픽셀의 R, G, B 각각의 원소 평균값인 (R_avg, G_avg, B_avg)을 뺀 값인 (R_max-R_avg, G_max-G_avg, B_max-B_avg)을 구하고, 상기 (R_max-R_avg, G_max-G_avg, B_max-B_avg)의 원소값 중 어느 하나가 기 설정된 값보다 작은 경우, 상기 제1 픽셀을 블러 처리를 하는 연산을 수행하여 상기 제2 공간 이미지를 생성하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  15. 제4항, 제5항 또는 제6항에 있어서,
    상기 제2 공간 이미지를 생성하는 동작은,
    상기 제1 공간 이미지가 포함하는 모든 픽셀의 개수만큼, 평균 0 및 표준편차 100의 표준 가우시안 정규 분포를 따르는 난수 정보를 생성하고, 상기 모든 픽셀의 각각에 상기 난수 정보 각각을 합산하여 노이즈가 삽입된 상기 제2 공간 이미지를 생성하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  16. 제5항에 있어서,
    상기 2차 학습시킨 모델을 생성하는 동작은,
    상기 1차 학습된 모델에 상기 제2 공간 이미지를 입력하여, 상기 제2 사물 이미지와 상기 제2 클래스와의 상관관계를 도출하는 모델의 가중치를 2차 학습시킴으로써, 상기 상관관계를 기초로 공간 이미지에 포함된 사물 이미지를 특정하고 클래스를 판별하는 모델을 생성하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  17. 제5항에 있어서,
    상기 제2 공간 이미지에 레이블링하는 동작은,
    상기 1차 학습된 모델에 상기 제2 공간 이미지를 입력하여, 상기 모델이 상기 제2 사물 이미지에 대해 판별한 제2 클래스를 상기 제1 클래스와 비교하여, 상기 제2 클래스와 상기 제1 클래스가 동일한 경우, 상기 제2 클래스의 값을 유지하고, 상기 제2 클래스와 상기 제1 클래스가 상이한 경우, 상기 제2 클래스의 값을 상기 제1 클래스와 동일한 값으로 수정하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  18. 제5항에 있어서,
    상기 바운딩 박스는,
    하나의 바운딩 박스당 하나의 사물 이미지를 포함하되 바운딩 박스 내부에 사물 이미지의 테두리 영역이 모두 포함되도록 설정되는 것을 특징으로 하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  19. 제1항에 있어서,
    상기 메타데이터를 매핑하는 동작의 상기 배색을 특정하는 동작은,
    상기 이미지 파일에 포함된 공간 이미지를 입력받는 동작;
    상기 공간 이미지를 구성하는 색상의 종류 및 상기 공간 이미지에서 상기 색상의 종류 각각이 사용된 비율을 판별하는 동작;
    상기 공간 이미지에 사용된 색상의 비율이 높은 순서로, 상기 공간 이미지를 구성하는 상기 색상 중 일부인 제1 색상을 선별하는 동작;
    소프트 및 다이내믹을 원소로 하는 소정의 컬러 이미지 스케일 상에 상기 제1 색상 각각이 위치하는 원소값을 판별하는 동작;
    상기 제1 색상 각각이 상기 공간 이미지에서 사용된 비율을 가중치로 하여, 상기 제1 색상 각각의 상기 원소값에 상기 가중치를 가하여 조합한 배색 원소값을 계산하는 동작; 및
    상기 컬러 이미지 스케일에 상기 배색 원소값을 포함하는 배색군을 상기 공간 이미지에 어울리는 배색으로 추천하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  20. 제19항에 있어서,
    상기 비율을 판별하는 동작은,
    k-means clustering 알고리즘을 기초로 상기 공간 이미지를 분석하여 상기 공간 이미지를 구성하는 색상의 종류 및 상기 공간 이미지에서 상기 색상의 종류 각각이 사용된 비율을 판별하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  21. 제19항에 있어서,
    상기 제1 색상을 선별하는 동작은,
    상기 공간 이미지에 사용된 색상의 비율이 높은 순서로 상기 공간 이미지를 구성하는 n가지(n은 자연수)의 색상을 선별하는 동작; 및
    상기 n가지의 색상이 상기 공간 이미지에서 사용된 비율의 합을 100%로 환산하여, 상기 n가지 색상 중 상기 비율이 높은 순서로 상기 비율을 누적하여 합하였을 때 a%(a는 100 이하의 자연수)를 초과할 때까지의 색상을 상기 제1 색상으로 선별하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  22. 제19항에 있어서,
    상기 배색 원소값을 계산하는 동작은,
    상기 제1 색상 각각이 상기 공간 이미지에서 사용된 비율을 가중치로 하여, 상기 제1 색상 각각의 상기 원소값에 가중 산술 평균을 적용하여 상기 배색 원소값을 계산하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  23. 제22항에 있어서,
    상기 배색 원소값을 계산하는 동작은,
    상기 제1 색상 각각이 상기 공간 이미지에서 사용된 비율의 합을 100%로 환산하여 도출된 각각의 비율을 상기 제1 색상 각각의 가중치로 하여, 상기 제1 색상 각각의 상기 2차원 원소값에 가중 산술 평균을 적용하여 상기 배색 원소값을 계산하는 동작을 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  24. 제23항에 있어서,
    상기 배색 원소값을 계산하는 동작은,
    하기 수학식 7을 기초로 계산되는,
    [수학식 7]
    Figure PCTKR2021009473-appb-img-000029
    Figure PCTKR2021009473-appb-img-000030
    (N = 제1 색상의 개수, a = 공간 이미지에서 N 개의 제1 색상들이 사용된 비율의 합을 100%로 환산하였을 때 어느 하나의 제1 색상이 사용된 비율, S: 소프트 원소값, D: 다이내믹 원소값, Sav: 제1 색상들의 소프트 값에 대한 가중 산술 평균 원소값, Dav: 제1 색상들의 다이내믹 값에 대한 가중 산술 평균 원소값)
    이미지 데이터베이스 분석 기반 상품 추천 장치.
  25. 이미지 데이터베이스 분석 기반 상품 추천 장치가 수행하는 이미지 데이터베이스 분석 기반 상품 추천 방법에 있어서,
    소정의 공간에 배치된 상품에 대한 이미지 파일을 포함하는 이미지 데이터베이스를 획득하는 단계;
    상기 이미지 파일에 포함된 공간의 용도, 사물의 종류, 공간의 스타일 및 색상에 어울리는 배색을 특정하는 메타데이터를 추출하여, 상기 이미지 파일 또는 상기 상품의 상품 정보에 상기 메타데이터를 매핑하는 단계;
    소정의 상품을 선정하기 위한 카테고리 정보로서, 공간의 용도, 사물의 종류, 공간의 스타일 및 배색 중 적어도 어느 하나에 대한 카테고리를 결정하는 단계; 및
    상기 결정된 카테고리와 대응되는 메타데이터와 매핑된 이미지 파일 또는 상품 정보를 상기 이미지 데이터베이스에서 검색하여 추천하는 단계를 포함하는,
    이미지 데이터베이스 분석 기반 상품 추천 방법.
  26. 제25항의 방법을 프로세서가 수행하도록 하는 컴퓨터 판독 가능 기록매체에 저장된 컴퓨터 프로그램.
PCT/KR2021/009473 2020-07-23 2021-07-22 이미지 데이터베이스 분석 기반 상품 추천 장치 및 방법 WO2022019670A1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202180060892.2A CN116420155A (zh) 2020-07-23 2021-07-22 基于图像数据库分析的商品推荐装置及方法
JP2023504704A JP2023537268A (ja) 2020-07-23 2021-07-22 イメージデータベース分析基盤商品推薦装置及び方法
EP21847334.6A EP4184414A1 (en) 2020-07-23 2021-07-22 Product recommendation device and method based on image database analysis
US18/156,808 US20230153889A1 (en) 2020-07-23 2023-01-19 Product recommendation device and method based on image database analysis

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200091775A KR102234609B1 (ko) 2020-07-23 2020-07-23 이미지 데이터베이스 분석 기반 상품 추천 장치
KR10-2020-0091775 2020-07-23

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/156,808 Continuation US20230153889A1 (en) 2020-07-23 2023-01-19 Product recommendation device and method based on image database analysis

Publications (1)

Publication Number Publication Date
WO2022019670A1 true WO2022019670A1 (ko) 2022-01-27

Family

ID=75466438

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/009473 WO2022019670A1 (ko) 2020-07-23 2021-07-22 이미지 데이터베이스 분석 기반 상품 추천 장치 및 방법

Country Status (6)

Country Link
US (1) US20230153889A1 (ko)
EP (1) EP4184414A1 (ko)
JP (1) JP2023537268A (ko)
KR (2) KR102234609B1 (ko)
CN (1) CN116420155A (ko)
WO (1) WO2022019670A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102234609B1 (ko) * 2020-07-23 2021-04-02 주식회사 어반베이스 이미지 데이터베이스 분석 기반 상품 추천 장치
KR102606918B1 (ko) * 2021-04-28 2023-11-29 이지현 디자인 가이드 장치
KR102507130B1 (ko) * 2021-11-01 2023-03-07 케일리웍스 주식회사 맞춤 액자 제작 서비스 제공 방법 및 장치
KR102391255B1 (ko) * 2021-11-22 2022-04-26 조병현 관심 상품 제공 방법 및 시스템
WO2023128353A1 (ko) * 2021-12-28 2023-07-06 삼성전자 주식회사 공간에 대한 색상 추천 정보를 제공하는 전자 장치 및 방법
KR102443797B1 (ko) * 2022-03-30 2022-09-16 쉐어잇 주식회사 시선 추적을 통한 공간 이미지 추천 장치 및 방법
KR102486510B1 (ko) * 2022-06-03 2023-01-10 주식회사 넘버제로 사용자 맞춤형 악세사리 주문 제작 플랫폼 서비스 제공 방법, 장치 및 시스템
KR20240020372A (ko) 2022-08-08 2024-02-15 조혜령 확장현실에 기반하여 웹브라우저 상에서 오브젝트를 배치하는 방법
KR102596670B1 (ko) * 2022-10-06 2023-10-31 임진희 Ar 마커가 인쇄된 제품을 이용한 증강 현실 컨텐츠 제공 시스템
KR102621076B1 (ko) * 2022-10-20 2024-01-03 황지혜 인공지능 모델을 이용한 공간인식 기반 화훼상품 추천 관리장치 및 그 방법
CN116630304B (zh) * 2023-07-18 2023-09-19 东莞市京品精密模具有限公司 一种基于人工智能的锂电池模具加工检测方法及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011043872A (ja) * 2009-08-19 2011-03-03 Yahoo Japan Corp カラーヒストグラム生成装置、カラーヒストグラム生成方法及びプログラム
KR101657583B1 (ko) * 2015-11-13 2016-09-19 (주)제이케이소프트 모바일 애플리케이션을 이용한 상품 이미지의 해시 태그 추출 시스템 및 방법
KR20180040865A (ko) * 2016-10-13 2018-04-23 엘지전자 주식회사 증강 현실을 이용한 가전 기기 배치 방법, 그를 수행하는 이동 단말기 및 서버
JP2018169672A (ja) * 2017-03-29 2018-11-01 三菱電機インフォメーションシステムズ株式会社 教師画像を生成する方法、コンピュータおよびプログラム
JP6612487B1 (ja) * 2019-05-31 2019-11-27 楽天株式会社 学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラム
KR102104312B1 (ko) * 2018-03-05 2020-04-24 한남대학교산학협력단 드론 플랫폼 기반 멀티 스펙트럼 영상의 인공 지능 분류 및 검색 장치
KR20200078214A (ko) * 2018-12-21 2020-07-01 삼성전자주식회사 스타일 변환을 위한 영상 처리 장치 및 방법
KR102234609B1 (ko) * 2020-07-23 2021-04-02 주식회사 어반베이스 이미지 데이터베이스 분석 기반 상품 추천 장치

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58220524A (ja) * 1982-06-16 1983-12-22 Mitsubishi Electric Corp 信号切換装置
KR20100102772A (ko) 2009-03-12 2010-09-27 주식회사 퍼시스 실내환경 분석 시스템 및 그 방법

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011043872A (ja) * 2009-08-19 2011-03-03 Yahoo Japan Corp カラーヒストグラム生成装置、カラーヒストグラム生成方法及びプログラム
KR101657583B1 (ko) * 2015-11-13 2016-09-19 (주)제이케이소프트 모바일 애플리케이션을 이용한 상품 이미지의 해시 태그 추출 시스템 및 방법
KR20180040865A (ko) * 2016-10-13 2018-04-23 엘지전자 주식회사 증강 현실을 이용한 가전 기기 배치 방법, 그를 수행하는 이동 단말기 및 서버
JP2018169672A (ja) * 2017-03-29 2018-11-01 三菱電機インフォメーションシステムズ株式会社 教師画像を生成する方法、コンピュータおよびプログラム
KR102104312B1 (ko) * 2018-03-05 2020-04-24 한남대학교산학협력단 드론 플랫폼 기반 멀티 스펙트럼 영상의 인공 지능 분류 및 검색 장치
KR20200078214A (ko) * 2018-12-21 2020-07-01 삼성전자주식회사 스타일 변환을 위한 영상 처리 장치 및 방법
JP6612487B1 (ja) * 2019-05-31 2019-11-27 楽天株式会社 学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラム
KR102234609B1 (ko) * 2020-07-23 2021-04-02 주식회사 어반베이스 이미지 데이터베이스 분석 기반 상품 추천 장치

Also Published As

Publication number Publication date
KR102234609B1 (ko) 2021-04-02
US20230153889A1 (en) 2023-05-18
CN116420155A (zh) 2023-07-11
EP4184414A1 (en) 2023-05-24
JP2023537268A (ja) 2023-08-31
KR20220012787A (ko) 2022-02-04
KR102485503B1 (ko) 2023-01-05

Similar Documents

Publication Publication Date Title
WO2022019670A1 (ko) 이미지 데이터베이스 분석 기반 상품 추천 장치 및 방법
Chang et al. Palette-based photo recoloring.
WO2021251689A1 (en) Electronic device and controlling method of electronic device
WO2021177758A1 (en) Methods and systems for denoising media using contextual information of the media
WO2022019391A1 (ko) 데이터 증강 기반 스타일 분석 모델 학습 장치 및 방법
WO2019135475A1 (en) Electronic apparatus and control method thereof
WO2021150033A1 (en) Electronic device and controlling method of electronic device
WO2022039450A1 (ko) 가상 피팅 서비스 제공 방법, 장치 및 그 시스템
WO2021006482A1 (en) Apparatus and method for generating image
WO2022019390A1 (ko) 데이터 증강 기반 사물 분석 모델 학습 장치 및 방법
WO2022019389A1 (ko) 데이터 증강 기반 공간 분석 모델 학습 장치 및 방법
WO2021221394A1 (ko) 이미지 증강을 위한 방법 및 전자 장치
WO2021040256A1 (ko) 전자 장치 및 이의 의류 추천 방법
WO2020141770A1 (en) Clothing management apparatus and method for controlling thereof
WO2024075972A1 (ko) 3차원(3d) 모델을 생성하는 방법 및 전자 장치
Cheng et al. Chromirror: a real-time interactive mirror for chromatic and color-harmonic dressing
CN114402349A (zh) 用于推荐化妆调色板或头发着色方案中的至少一个的计算设备、方法和装置
WO2019083234A1 (ko) 공간 콘텐츠 체험 정보의 시각화 및 보상 시스템
WO2022124643A1 (en) Method and electronic device for managing artifacts of image
WO2021221200A1 (ko) 게이팅 설계 방법 및 시스템
WO2024048960A1 (ko) 사용자 얼굴에 기초한 아바타를 제공하는 전자 장치 및 그 동작 방법
US11682151B2 (en) System and method for a personalized and accurate virtual make-up try-on
WO2019035536A1 (ko) 전자 장치 및 그의 제어 방법
WO2023132534A1 (ko) 전자 장치 및 그 동작 방법
WO2023101416A1 (en) Method and electronic device for digital image enhancement on display

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: 21847334

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2023504704

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2021847334

Country of ref document: EP

Effective date: 20230216