CN114445286A - 移动设备上的图像清理 - Google Patents
移动设备上的图像清理 Download PDFInfo
- Publication number
- CN114445286A CN114445286A CN202111267747.XA CN202111267747A CN114445286A CN 114445286 A CN114445286 A CN 114445286A CN 202111267747 A CN202111267747 A CN 202111267747A CN 114445286 A CN114445286 A CN 114445286A
- Authority
- CN
- China
- Prior art keywords
- image
- foreground
- user device
- mask
- background
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004140 cleaning Methods 0.000 title abstract description 37
- 238000000034 method Methods 0.000 claims abstract description 55
- 238000010801 machine learning Methods 0.000 claims abstract description 28
- 238000005070 sampling Methods 0.000 claims abstract description 12
- 238000010422 painting Methods 0.000 claims description 22
- 230000015654 memory Effects 0.000 claims description 17
- 238000013528 artificial neural network Methods 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 7
- 238000009499 grossing Methods 0.000 claims description 6
- 239000000203 mixture Substances 0.000 claims description 3
- 238000004590 computer program Methods 0.000 abstract description 7
- 238000004519 manufacturing process Methods 0.000 abstract description 5
- 230000008569 process Effects 0.000 description 19
- 238000012545 processing Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 13
- 239000003973 paint Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 238000009966 trimming Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000010339 dilation Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/77—Retouching; Inpainting; Scratch removal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4084—Scaling of whole images or parts thereof, e.g. expanding or contracting in the transform domain, e.g. fast Fourier transform [FFT] domain scaling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/194—Segmentation; Edge detection involving foreground-background segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/52—Scale-space analysis, e.g. wavelet analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20072—Graph-based image processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20092—Interactive image processing based on input by user
- G06T2207/20096—Interactive definition of curve of interest
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种移动设备上的图像清理。提供了用于图像清理的方法、系统和包括计算机程序产品的制品。在一些实施例中,提供了一种方法,所述方法可以包括将第一图像子采样为多尺度变换的第一级图像;基于机器学习模型执行所述第一级图像的前景部分和所述第一级图像的背景部分的识别;基于所述前景部分和所述背景部分的识别生成第一掩模;将所述第一掩模放大为与描绘前景项的所述第一图像相对应的分辨率;对所述第一图像应用经放大的第一掩模,以形成描绘所述前景项的第二图像;以及向发布系统提供描绘所述前景项的所述第二图像。还提供了相关的系统和包括计算机程序产品的制品。
Description
技术领域
本发明涉及移动设备上的图像清理。
背景技术
计算机图像处理可以包括使用数字图像处理技术从图像(例如数字图像)自动提取有意义的信息。这样的图像处理的一些实例涉及照片或图片中的前景对象和背景对象的自动识别。前景对象和背景对象的分割可以用作用于在发布或发起搜索(例如图像搜索)之前清理图像的过程的一部分。
发明内容
提供了用于图像清理的方法、系统和包括计算机程序产品的制品。在一些实施例中,提供了一种方法。该方法可以包括:在用户设备处获得描绘至少一个前景项的第一图像;在所述用户设备处将所述第一图像子采样为多尺度变换的第一级图像;在所述用户设备处并且基于机器学习模型执行所述第一级图像的前景部分和所述第一级图像的背景部分的识别;在所述用户设备处并且基于所述前景部分和所述背景部分的识别生成第一掩模;在所述用户设备处将所述第一掩模放大为与描绘所述前景项的所述第一图像相对应的分辨率;在所述用户设备处对所述第一图像应用经放大的第一掩模以形成第二图像,所述第二图像描绘去除了所述第二图像中的所述背景部分的至少一部分的所述前景项;和/或在所述用户设备处向发布系统提供描绘所述前景项的所述第二图像。
在一些变体中,可以可选地以任意可行的组合包括本文公开的包括以下特征的特征中的一个或多个特征。所述放大还可以包括:应用域变换以放大和平滑所述第一掩模。可以指定环绕所述第一级图像的至少一部分的第一像素边界,以初始化所述机器学习模型以将该部分分类为纯背景。基于所述机器学习模型和作为所述纯背景的已指定的第一边界,所述第一级图像的像素可以被分类为可能前景部分或可能背景部分,其中基于已分类的像素生成所述第一掩模。所述机器学习模型可以包括高斯混合模型、GrabCut和/或神经网络。所述第一像素边界可以包括环绕所述第一级图像的至少一部分的已设置的量的像素。所述已设置的量可以是5。所述已设置的量可以提供所述机器学习模型的初始状态,以实现将第一级图像的一个或多个像素分类为纯背景、可能背景、纯前景或可能前景。所述子采样还可以包括平滑所述第一图像以形成所述第一级图像。所述应用可以包括:引起所述第二图像的显示;接收在所述第二图像上的涂画的指示;基于所述涂画或扩大的涂画,通过至少添加或去除所述第一掩模的一个或多个像素修改所述第一掩模;以及对所述第二图像应用经修改的第一掩模。所述第一掩模可以在应用之前被平滑。所述用户设备可以通过以下来获得所述第一图像:从所述用户设备的图像传感器捕获图像、下载所述第一图像、从第三方网站下载所述第一图像和/或从所述用户设备的显示器捕获作为截屏的所述第一图像。所述第一级图像的前景部分和所述第一级图像的背景部分可以与所述第一图像的所述背景部分和所述前景部分的经子采样和经平滑的版本相对应。可以使所述第二图像被显示为所述发布系统的列表。
当前主题的实施方式可以包括与本文提供的描述一致的方法以及包括可操作地使一个或多个机器(例如计算机等)产生实现所描述的特征中的一个或多个特征的操作的有形地体现的机器可读介质的制品。类似地,计算机系统也被描述为可以包括一个或多个处理器和耦接至所述一个或多个处理器的一个或多个存储器。存储器可以包括非暂时性计算机可读或机器可读存储介质,可以包括、编码、存储一个或多个程序等,所述一个或多个程序使一个或多个处理器执行本文描述的操作中的一个或多个操作。与当前主题的一个或多个实施方式一致的计算机实现的方法可以由驻留在单个计算系统或多个计算系统中的一个或多个数据处理器实现。这样的多个计算系统可以经由多个计算系统中的一个或多个计算系统之间的直接连接等进行连接并且可以经由包括例如到网络(例如互联网、无线广域网、局域网、广域网、有线网等)上的连接的一个或多个连接交换数据和/或命令或其他指令等。
本文描述的主题的一种或多种变体的细节在下文的附图和描述中阐述。本文描述的主题的其他特征和优点将通过说明书和附图以及权利要求而显而易见。虽然为了与配置数据的虚拟化有关的说明目的描述了当前公开的主题的某些特征,但是容易理解的是这样的特征不旨在是限制性的。遵循本公开的权利要求旨在限定所保护的主题的范围。
附图说明
本说明书中包括并且构成其一部分的附图示出了本文公开的主题的某些方面,并且与说明书一起帮助说明与所公开的实施方式相关联的一些原理。在附图中,
图1是根据一些示例实施例的适用于图像清理的系统的示例的图;
图2是示出根据一些示例实施例的用户设备的示例的图;
图3描绘了根据一些示例实施例的被配置为清理图像的图像清理系统的框图;
图4描绘了根据一些示例实施例的用于图像清理的过程的示例;
图5描绘了根据一些示例实施例的用于图像清理的过程的另一个示例;
图6描绘了根据一些示例实施例的用于进行子采样的多尺度方法的示例;
图7描绘了根据一些实施例的用于图像修整的过程的示例;以及
图8描绘了根据一些实施例的用于图像修整的过程的另一个示例。
实际上,相似的附图标记用于指代附图中相同或类似的项。
具体实施方式
图像清理可以包括图像的背景部分的去除,以使图像主要包括感兴趣的一个或多个前景项。使图像的前景部分与背景准确地分离可以提高图像的质量和/或提高系统(例如图像搜索系统、发布系统等)的用于自动识别图像中的前景项的能力。通过另一个示例进行说明,如果用户在移动设备处寻求在发布系统上发布项目,则去除图像的背景部分可以使其他移动设备上的其他用户访问正在发布的实际项目而没有来自背景的干扰。同样,图像搜索可以将图像搜索聚焦在图像中感兴趣的前景项而不是背景上(对其不感兴趣)。已去除的背景可以被替换为纯背景,例如白色或其他颜色背景,或者可以应用散景(bokeh)效果以进一步强调前景项。包括感兴趣的前景项(无背景)的经清理的图像可以如所提及地用于增强的图像搜索、增强的发布、和/或增强的对其他媒体的插入。
虽然所提及的用于去除背景部分的图像清理可能是希望的,但是这个图像清理可能需要相当多的数量的计算机处理器和存储器资源。不是在发布系统的后端服务器系统而是在用户的移动设备实现图像清理(例如实现所提及的图像清理)可以将负担从后端服务器系统分布至移动设备,例如与用户(例如终端用户)相关联的智能电话、平板计算机或其他基于处理器的设备(本文统称为用户设备)。因为用户设备可能在处理和资源上比后端服务器系统更受限制,所以图像清理过程可能需要适应使用更少的存储器和/或计算机处理器资源操作。为此,本文公开了促进存储器和/或处理器资源相对于通常在后端系统使用的物理服务器(例如图像搜索系统、发布系统等)可能更受限制的用户设备上的图像清理的一个或多个过程。
在一些示例实施例中,用户设备可以获得描绘至少一个前景项的第一图像。用户设备然后可以将所述第一图像子采样为多尺度变换的第一级图像。用户设备可以基于机器学习模型自动执行所述第一级图像的前景部分和所述第一级图像的背景部分的识别。接着,用户设备可以基于已识别的部分生成第一掩模。这个第一掩模然后可以被放大为与描绘前景项的所述第一图像相对应的分辨率。用户设备然后可以对所述第一图像应用经放大的第一掩模以形成第二图像。这个第二图像描绘使用所述第一掩模去除了背景部分的至少一部分(如果不是全部)的前景项。用户设备然后可以向另一个系统(例如发布系统)提供描绘前景项的第二图像,以实现增强的图像搜索、增强的发布和/或增强的对其他媒体的插入。
图1是根据一些示例实施例的适用于图像清理的系统100的示例的图。系统100可以包括服务器机器110、数据库115、一个或多个用户设备140A-140B,它们全部可以经由网络190可通信地相互耦接。
发布系统105可以包括一个或多个服务器机器(例如服务器机器110),并且还可以包括一个或多个数据库(例如数据库115)。发布系统可以是被配置为向其他设备(例如其他用户设备)发布一个或多个项目的基于网络的发布系统。虽然描绘了发布系统,但是发布系统可以也可以被包括在图像搜索系统、社交媒体系统、电子商务系统和/或其他类型的系统中或包括它们。在图1的示例中,数据库115可以存储向其他设备发布的可以搜索的项目的图像等。在一些实施方式中,发布系统可以列出超过十亿的项目,其中的一些可以作为列表被存储在数据库115中(但是也可以实现其他数量的项目)。例如,根据本文公开的实施例,用户设备(其与用户相关联)可以捕获图像、清理已捕获的图像,然后向发布系统发送主要包括前景中的感兴趣的项的图像(例如以向其他人发布描绘该项的图像、发起针对其他类似或相关项的搜索等)。
服务器机器110可以形成发布系统105的全部或一部分。例如,可以在110处使用一个或多个基于云的服务器系统,以向用户设备140A-140B提供一个或多个服务。服务器机器110和用户设备140A-140B均可以在参考图2在下文描述的基于处理器的设备中实现。服务器机器110可以包括能够接收和处理信息(例如描绘一个或多个项目的已捕获的图像的图像数据)的服务器、web服务器、数据库管理系统或其他机器。服务器机器110可以是所示出的发布系统的一部分,但是服务器机器可以是图像搜索系统、社交媒体系统、网站、数据库和/或其他类型的系统的一部分。
图1描绘的服务器110、数据库115和/或用户设备140A-140B可以在由软件修改为(例如配置为或编程为)专用计算机的通用计算机中实现,以执行本文描述的用于服务器机器110、数据库115和/或用户设备140A-140B的功能中的一个或多个功能。例如,计算机系统能够实现本文描述的方法中的任何一个或多个方法。如本文所使用的,“数据库”是数据存储资源,并且可以存储结构化为文本文件、表格、电子表格、关系数据库(例如对象关系数据库)、三元组存储、存储器内的数据库、层次数据存储或其任意合适组合的数据。此外,图1所示的设备中的任何两个或更多个设备可被合并为单个设备,且本文针对任意单个设备描述的功能可以细分到多个设备中。
用户设备140A-140B可以包括以下基于处理器的设备或者被包括在其中,例如,智能电话、台式计算机、车辆计算机、平板计算机、导航设备、便携式媒体设备、物联网设备(例如传感器、致动器等)、可穿戴设备(例如智能手表、智能眼镜)等。例如,用户设备可以由用户访问以实现图像的捕获。例如,用户设备可以获得描绘前景项以及背景的第一图像。用户设备也可以将所述第一图像子采样为多尺度变换的第一级图像。此外,用户设备可以基于机器学习(ML)模型执行所述第一级图像的前景部分和所述第一级图像的背景部分的识别。用户设备可以基于前景部分和背景部分生成第一掩模。接着,用户设备可以将所述第一掩模放大为与描绘前景项的所述第一图像相对应的分辨率。用户设备然后可以对所述第一图像应用经放大的第一掩模以形成描绘前景项的第二图像,并且使所述第二图像中的所述背景部分中的至少一部分被去除。用户设备然后可以向发布系统提供描绘前景项的第二图像。在本文提及的一些示例中,用户可以指人类用户、机器用户(例如通过软件程序配置的与用户设备交互的计算机)或者其组合(例如机器辅助的人或者人监管的机器)。然而,用户不被考虑为系统100的一部分,而是如所提及地可以访问用户设备或以其他方式与其相关联。
网络190可以是实现设备140A-140B、110和115之间或之中的通信的任意网络。因此,网络190可以是有线网络、无线网络(例如移动或蜂窝网络)、或其任意合适组合。网络190可以包括构成专用网络、公共网络(例如互联网)或其任意合适组合的一个或多个部分。因此,网络190可以包括一个或多个部分,所述一个或多个部分包括局域网(LAN)、广域网(WAN)、互联网、移动电话网(例如蜂窝网)、有线网(例如普通老式电话系统(POTS)网)、无线数据网(例如WiFi网)或其任意合适组合。
图2是示出根据一些示例实施例的可以被实现为提供用户设备140A-140B的用户设备200的示例的图。如所提及地,根据一些示例实施例,用户设备可以用于执行图像清理。用户设备可以向其他设备(例如在发布系统105处的服务器机器110)提供经清理的图像。用户设备可以被配置为执行本文针对用户设备(例如用户设备140A-140B)所讨论的方面中的一个或多个方面。此外,用户设备可以包括针对图3在下文进一步描述的图像清理系统300。
用户设备200可以包括一个或多个处理器(例如处理器202)。处理器202可以是多种不同类型的可以买到的处理器(例如中央处理单元、图形处理单元、图像处理单元、数字处理单元、神经处理单元、基于ARM的处理器等)中的任意一个。用户设备还可以包括存储器204,例如随机存取存储器(RAM)、闪存或其他类型的存储器。存储器204可以由处理器202访问。存储器204可以适于存储操作系统(OS)206和应用程序208。处理器202可以直接或者经由合适的中间硬件连接到显示器210以及一个或多个输入/输出(I/O)设备212(例如键盘、触摸板传感器、麦克风、图像捕获设备213等)。图像捕获设备213可以形成针对图3描述的图像清理系统300的一部分。
处理器202可以耦接至与至少一个天线216对接的收发器214。根据用户设备200的性质,收发器214可以被配置为经由天线216无线地发送和无线地接收蜂窝信号、WiFi信号或其他类型的信号。此外,在一些配置中,GPS接收器218还可以利用天线216(或另一个天线)来接收GPS信号。
用户设备200可以包括附加的组件或利用比上述更少的组件操作。此外,用户设备200可以被实现为针对图2在上文描述的组件中的一些或全部的相机、物联网设备(例如传感器或其他智能设备)。用户设备200可以被配置为执行本文描述的任何一个或多个方面。例如,用户设备200的存储器204可以包括:包括用于执行本文讨论的方法的一个或多个单元的指令。单元可以将用户设备200的处理器202或具有多个处理器的用户设备200的至少一个处理器配置为执行下文针对每个单元概括的操作中的一个或多个操作。在一些实施例中,用户设备200和服务器机器110均可以存储上文讨论的单元的至少一部分,并且协作以执行本公开的方法,将在下文更详细地对其进行解释。
图3描绘了根据一些示例实施例的被配置为清理图像的图像清理系统300的框图。如果不在用户设备200中包括图像清理系统的全部,则可以在其中包括图像清理系统中的一些。备选地或附加地,如果不在后端服务器系统或服务(例如可由用户设备200访问的基于云的服务)中包括图像清理系统的全部,则可以在其中包括图像清理系统中的一些。图像清理系统300可以包括或耦接到图像捕获设备(例如图像捕获设备213)。例如,图像捕获设备可以包括耦接至用户设备或被包括在其中的图像传感器(例如相机),但是图像捕获设备或图像清理系统300可以以其他方式(例如所显示的图像的屏幕捕获、从包含图像的存储没备获得、从另一个设备下载等)捕获图像。图像清理系统300可以暂时地或永久地包括执行本文描述的方法的一个或多个单元的形式的处理器(例如与图像捕获设备213通信的图像处理器)、存储器(例如存储器204)和通信组件(例如收发器214、天线216和GPS接收器218)。
图像清理系统300可以包括接收器单元302、识别单元304、掩模生成单元306、放大缩小单元308、图像应用单元309、涂画单元312和通信单元310,它们全部可以被配置为相互通信(例如经由总线、共享存储器或交换机)。虽然被描述为移动设备200的一部分,但是图像清理系统300可以分布在多个设备上,以使与图像清理系统300相关联的单元中的某些单元可以驻留在用户设备200中以及使某些其他单元可以驻留在服务器机器110或发布系统105中。无论是在单个设备上还是分布在多个系统或设备上的单元,都可以协作以执行本文描述的方法中的任何一个或多个方法。本文描述的任何一个或多个单元可以使用硬件(例如机器的一个或多个处理器)或硬件与软件的组合来实现。例如,本文描述的任何一个单元可以将处理器(机器的一个或多个处理器中的处理器)配置为执行本文针对该单元描述的操作。此外,这些单元中的任何两个或更多个单元可被合并为单个单元,且本文针对单个单元描述的功能可以细分到多个单元中。此外,如上文所述并且根据各种示例实施例,本文描述为在单个设备中实现的单元可以分布在多个设备中。例如,如上文针对图1所提及的,服务器机器110可以经由网络190与用户设备140A或140B协作以执行本文描述的方法。在一些实施例中,上面讨论的单元中的一个或多个单元或单元中的一部分可以存储在服务器机器110以及移动设备200上。
接收器单元302可以获得描绘至少一个前景项的图像。例如,接收器单元可以接收描绘至少一个感兴趣的前景项和背景的图像(例如像素数据)。可以从图像捕获设备213(例如图像传感器,例如耦接至用户设备或被包括在其中的相机)、所显示的图像的屏幕捕获、从包含图像的存储设备获得、从另一个设备下载、从第三方网站下载等获得图像。图像捕获设备213可以包括:包括图像传感器(例如电荷耦合器件(CCD)或互补金属氧化物半导体(CMOS))的硬件组件。图像传感器可以检测要拍摄的图像数据,并且图像捕获设备213可以向接收器单元302传递图像数据。接收器单元302可以包括图像捕获设备213的一部分,或图像捕获设备213可以包括接收器单元302的一部分。接收器单元302可以经由通信单元310与图像捕获设备213以及其他单元304-309通信。
图像清理系统300可以包括如所提及的放大缩小单元308。例如,放大缩小单元可以将第一图像子采样为第一级图像。针对图6在608处进一步描述第一级图像的示例。在这个示例中,第一级图像被子采样为其原始大小的1/16。备选地或附加地,放大缩小单元也可以用于上采样图像。例如,经子采样的掩模或图像可以被上采样为更大的像素大小。在图6的示例中,例如,经子采样的图像可以被上采样回在602处所示的其原始分辨率。在一些示例实施例中,域变换可以用于放大和/或缩小。虽然多种类型的变换可以用于放大和/或缩小图像,但是在一些实施例中,可以使用边缘感知域变换,例如“Domain Transform forEdge-Aware Image and Video Processing”,E.Gastal和M.Oliveira,ACM SIGGRAPH2011。
图像清理系统300可以包括如所提及的识别单元304,以从图像的背景部分识别图像的前景部分。识别单元304可以包括用于至少识别图像的前景部分(和/或前景部分)的机器学习(ML)模型算法或模型,例如神经网络、卷积神经网络(CNN)、生成对抗网络(GAN)、GrabCut算法或其他技术。GrabCut算法典型地假设用户提供包围对象的初始边界框。相反,图像清理系统300可以根据一些示例实施例通过以下提供完全自动化:利用沿着图像的边缘的预定义的(例如5像素)宽的边界作为纯背景来初始化GrabCut算法,以使图像的其余区域被初始化为可能前景。
图像清理系统300可以包括如所提及的掩模生成器单元306。掩模生成器单元可以生成第一掩模,第一掩模可以应用于图像以掩蔽图像,以使图像的前景部分保留。图像清理系统300可以包括如所提及的应用单元309。应用单元可以对图像应用掩模以形成主要描绘前景部分的另一个图像。可以经由通信单元310向另一个系统(例如发布系统105)提供这另一个图像。图像清理系统300也可以包括如所提及的312涂画单元,以处理修改掩模的涂画。例如,GrabCut算法可以允许用户设备在图像或掩模的一部分上涂画,以指示经涂画的部分被误分类为前景(或背景)。在一些实例中,然后可以运行GrabCut算法(或其他清理算法)以基于涂画修改图像。当是这种情况时,经涂画的部分可以被去除,作为背景的一部分(或在误分类的背景的情况下进行添加)。
通信单元310实现图3描绘的单元之间的通信和/或实现与其他设备和/或系统的通信。例如,通信单元350可以包括通信机构,例如能够实现单元、用户设备、发布系统和/或其他设备或系统之间的通信的天线、发射器、一个或多个总线和其他合适的通信机构。
图4描绘了根据一些示例实施例的用于图像清理的过程400的示例。图4的描述也参考图1、图5和图6。
在405处,可以由用户设备获得描绘前景项的第一图像。例如,可以由用户设备(例如用户设备140A)捕获第一图像(其可以包括前景中的一个或多个感兴趣的项目)。可以由使用图像传感器(例如耦接至用户设备或被包括在其中的相机)的用户设备捕获第一图像。备选地,可以经由所显示的图像的屏幕捕获、从包含图像的存储设备获得、从另一个设备下载、从第三方网站下载或以其他方式获得来捕获图像。参考图5,描绘了描绘前景项503(在这个示例中其是相机)和背景的第一图像502的示例。在这个示例中,第一图像可以具有1600像素乘1066像素的分辨率,但是也可以使用其他分辨率的图像。每个像素可以表示数据,例如像素数据。
通过举例进一步说明,用户设备可以捕获包括图像的前景部分和图像的背景部分的第一图像。前景部分可以包括感兴趣的前景项。为了能够增强发布或图像搜索,用户设备如果不去除图像的背景部分的全部,则可以去除图像的背景部分中的一些,以使图像中主要描绘前景项。这种在图像的前景部分上的聚焦(其描绘感兴趣的项)可以使其他设备上的其他用户能够访问正在发布的实际项目而没有来自背景的干扰。这种聚焦也可以通过聚焦在图像中感兴趣的项而不是背景中描绘的项(对其不感兴趣)上而增强图像搜索。
在412处,第一图像可以被子采样为多尺度变换的第一级图像。例如,用户设备可以将第一图像503从1600像素乘1066像素的分辨率子采样为500像素乘333像素的分辨率。图6描绘了用于进行子采样的多尺度方法的示例。在图6的示例中,第一图像由图像602表示并且被子采样为约1/16的第一级,以使图像610具有图像602的1/16的分辨率。在多尺度方法中,每级经历平滑(或模糊)和子采样。例如,平滑可以使用平滑函数(例如高斯平均)来执行。当使用高斯平均或模糊时,每个像素可以包括局部平均值,该局部平均值与图6描绘的多尺度金字塔的另一级(例如更低级或更高级)上的相邻像素相对应。在一些实施例中,多尺度方法包括首先对图像子采样并且仅对最低分辨率应用GrabCut。在这个初始步骤之后,可以将域变换(DT)滤波器用于后续对图像进行上采样,同时仅优化边界区域附近的图像。这可以提供是传统的GrabCut的3倍快的处理。虽然前一示例描述了在多尺度方法的最低的(1/16)的分辨率下应用GrabCut,但是GrabCut也可以在其他分辨率级别下应用。
在414处,基于机器学习模型执行所述第一级图像的前景部分和所述第一级图像的背景部分的识别。例如,用户设备可以包括机器学习模型以至少识别图像的前景部分。机器学习模型可以包括神经网络、卷积神经网络(CNN)、生成对抗网络(GAN)、GrabCut算法和/或其他技术。机器学习模型可以包括根据一些示例实施例修改的多尺度GrabCut算法的方面,以在图6描绘的多尺度金字塔的一级(例如最低分辨率的经子采样的图像608)执行GrabCut算法。此外,多尺度GrabCut算法可以根据一些示例实施例而利用预定的边界框(例如环绕图像的5像素宽的边界)自动地初始化,但是边界框的宽度也可以具有其他预定值。
在图6的示例中,图形化地描绘了多尺度的每一级。如604-610所示,图像602根据1/2、1/4、1/8和1/16的分辨率子采样。与传统的多尺度GrabCut算法不同,GrabCut算法可以根据一些示例实施例而仅在给定的分辨率级(例如经子采样的图像610的最低分辨率)处应用。在GrabCut的情况下,可以使用图像608基于对背景像素和前景像素进行分类的图以及然后的穿过图的切割迭代地执行图像分割,以识别前景部分。虽然访问用户设备的用户可以在显示器上选择环绕图像中描绘的前景项的初始边界框以初始化GrabCut,但是根据一些示例实施例,预定的边界框可以由用户设备自动确定。例如,预定的边界框可以被自动确定为环绕第一图像的5像素宽的边界,但是边界框的宽度也可以具有其他预定值。在GrabCut算法中,边界框像素被GrabCut初始化为“纯背景”。接着,GrabCut继续确定第一图像的像素可能背景还是可能前景。以这种方式,图像的前景部分和背景部分可以被分类为可能前景像素或可能前景像素。
在一些实施方式中,GrabCut迭代,以使前景或背景的初始分类可以通过用户将已分类的第一图像的部分涂画(例如做标记)为误分类而被校正,在这种情况下GrabCut可以再运行,以提供像素可能前景像素还是可能前景像素的另一个估计。
在416处,基于针对经子采样的图像所识别的前景部分和背景部分生成第一掩模。图5描绘了通过多尺度505金字塔算法进行子采样以形成经子采样的图像510的第一图像502的示例。然后向ML模型(例如GrabCut 515)提供经子采样的图像510。基于经子采样的图像510,GrabCut能够提供估计经子采样的图像的哪些像素是可能前景像素和哪些像素是可能背景像素的分类。所述估计然后用于生成第一掩模520。
在418处,第一掩模可以被放大为与描绘前景项的第一图像相对应的分辨率。再次参考图5,第一掩模520可以被放大525,以形成具有与原始图像502相同或类似的分辨率的经放大的第一掩模530。例如,第一掩模520可以具有500乘333像素的分辨率,然后被放大为1600像素乘1066像素的分辨率以匹配原始的第一图像502的分辨率。放大可以以多种方式执行,以将图像的大小改变为第一图像的分辨率。例如,插值(例如最近邻插值)可以用于改变图像的大小。在一些示例实施例中,边缘感知域变换可以用于放大。“Domain Transformfor Edge-Aware Image and Video Processing”,E.Gastal和M.Oliveira,ACM SIGGRAPH2011提供了边缘感知域变换的示例,但是其他类型的变换也可以用于对图像进行上采样或下采样。例如,域变换(DT)滤波器可以用于对图像进行上采样(或下采样),同时仅优化边界区域附近的图像。
接着,经放大的第一掩模可以在420处被应用于第一图像,以形成描绘前景项的第二图像,如果不使第二图像的背景部分的全部被去除,则使第二图像的背景部分中的至少一些被去除。再次参考图5,经放大的第一掩模530被应用于第一图像502以形成第二图像530。这个第二图像530如果不从第一图像502掩蔽掉(例如去除)背景部分的全部,那么也掩蔽掉(例如去除)背景部分中的一些,以使前景项503保留在第二图像530中。
在422处,可以向系统(例如发布系统)提供描绘前景项的第二图像。再次参考图5,可以向发布系统105或其他类型的系统或设备提供第二图像530。例如,可以使第二图像被显示为发布系统的列表,以使多个用户设备可以查看列表。去除背景以使前景项保留(如第二图像530所示)可以提高发布系统识别类似的项目或发布图像的能力(例如以使其他用户设备可以访问该前景项)。备选地或附加地,用户设备可以向用于搜索与前景项类似或有关的项目的图像搜索系统提供描绘该前景项的第二图像。
如所提及地,过程400可以用于清理图像。在一些实例中,自动图像清理可能需要所谓的“修整”。图7描绘了根据一些实施例的用于图像修整的示例过程700。在一些实施例中,过程700可以用于修改由过程400自动生成的第一掩模710A,但是过程700也可以在不使用过程400时使用。图7的描述也参考图5。
在705处,可以接收第一掩模710B。例如,第一掩模710B可以与由过程400在没有用户干预时自动生成的第一掩模相对应。第一掩模710B然后可以被呈现在用户设备的显示器上,以在715处实现在第一掩模710B上的涂画。例如,第一掩模710B可以呈现在用户设备的显示器上,以通过用于指示掩模的哪一部分要从第一掩模去除(或添加到第一掩模)的涂画而实现修整。在710C处描绘了涂画的掩模。在这个示例中,涂画指示哪一部分需要从第一掩模710B且因此从对应的前景图像710A排除。在一些实施例中,作为替代,涂画可以应用于在用户设备显示的第一图像710A。在720处,涂画可以被扩大(例如扩展)。例如,在710C处的涂画可以被扩展,以使其与在710D处的经扩大的涂画所示的一样大。
在730处,处理第一图像710A,以生成经滤波的涂画掩模。例如,域变换(DT)滤波器,例如“Domain Transform for Edge-Aware Image and Video Processing”E.Gastal和M.Oliveira,ACM SIGGRAPH 2011,可以用于对图像710A进行滤波,同时仅精炼边界区域附近的图像。经滤波的图像然后进行二值化和阈值处理,以形成可以用作掩模的经二值化和阈值处理的图像。然后,经扩大的涂画掩模710D被应用于经二值化和阈值处理的掩模,以形成经滤波的涂画掩模710E。经滤波的涂画掩模710E还可以在750处利用轮廓平滑进行处理。经滤波的涂画掩模710E(其可以在750处进行平滑)可以在760处与原始滤波掩模705/710B结合,以形成新的经更新的滤波掩模710F。如可以看到的,新的经更新的滤波掩模710F现在可以从前景排除与涂画相关联的部分766A。当新的经更新的滤波掩模710F被应用于原始图像710A以形成经更新的图像时,如在新的经更新的图像710G处所示,经更新的图像710G可以排除部分766B。如果希望进一步清理图像710G(在这种情况下,新的经更新的图像710G将在730处输入并且涂画将在经更新的掩模710F上发生),则700处的过程可以再次重复。在一些实施例中,在730处应用的DT滤波器被应用于例如在如上文所提及的利用图6的金字塔多尺度方法的1/16的缩放(例如从1600像素乘1200像素变为400像素乘300像素)下的经子采样的图像710A和涂画掩模710D。
图8描绘了根据一些示例实施例的用于图像清理的过程800的示例。图8的描述也参考图7。
在810处,可以接收用于图像清理的第一图像和/或其对应的第一图像。例如,第一掩模710B和/或第一图像710可以由用户设备的图像清理系统接收。在812处,第一掩模和/或对应的第一图像可以在用户设备上显示。这个显示使与用户设备相关联的用户能够在显示上涂画标记(或提供其他形式的涂画)。所述涂画指示掩模或图像的哪一部分需要清理。例如,如果掩模将应该被识别为背景的部分分类或识别为前景,则涂画(例如在710C处所示的涂画)可以指示需要通过去除误分类的部分(但是在一些情况下也可以添加误分类的部分)而清理的部分(例如像素)。作为对涂画的响应,图像清理系统可以在814处接收涂画的指示,例如哪些像素被指示为被涂画。在816处,所述涂画可以被扩大。例如,所述扩大可以按照预定量的像素扩展涂画的大小(例如按照涂画的面积的预定百分比扩展像素的大小,例如增加1%、2%、3%、4%、5%或其他百分比)。
在818处生成经滤波的涂画掩模。图像(例如图像710A)可以进行二值化和阈值处理,以形成可以用作掩模的经二值化和阈值处理的图像。经扩大的涂画掩模710D被应用于经二值化和阈值处理的掩模,以形成经滤波的涂画掩模710E。图像710A和涂画掩模710D可以进行子采样,以实现二值化、阈值处理和涂画掩模的应用,在其之后,可以将DT应用于对经滤波的涂画掩模710E上采样,以具有与原始图像710A相同或类似的分辨率。在822处,经滤波的涂画掩模710E可以与原始滤波掩模710B结合,以形成新的经更新的滤波掩模。在824处,新的经更新的滤波掩模710F然后可以应用于原始图像710A,以生成经更新的图像710G,在这个示例中,其排除了与涂画相对应的部分。
在一些示例实施例中,掩模(例如掩模530)的生成可以使用神经网络(例如包括池化的卷积神经网络)来执行。可以在“A Simple Pooling-Based Design for Real-TimeSalient Object Detection”,Jiang-Jiang Liu等人,CVPR 2019中找到这种类型的神经网络的示例。例如,有监督的学习可以用于(例如使用标记为区分前景像素与背景像素的训练图像)训练神经网络,以自动分割图像的前景部分与背景部分。备选地,可以将例如通过使用生成对抗网络的无监督学习用于生成掩模,例如掩模530。在一些示例实施例中,显著映射(saliency map)可以用于进一步修改二值掩模。
在一些示例实施例中,GrabCut算法利用沿着图像的边缘的预定义的(例如5像素宽)的边界作为纯背景来自动初始化,同时使图像的其余区域被初始化为可能前景。然后运行GrabCut,以将像素识别为是前景像素还是背景像素。例如,环绕图像设置预定义的边界(例如矩形)。边界像素被分类为纯背景,而边界的内部是未知的。GrabCut算法然后执行每个像素的初始硬标记,例如基于边界或任意用户提供的指示(例如指示前景像素或背景像素的涂画)的纯背景。接着,高斯混合模型(GMM)对前景和背景进行建模。GMM学习和创建像素分布,以根据未知的像素与(例如基于颜色统计的分类或聚类的)其他硬标记的像素之间的关系使未知的像素被标记为是可能前景还是可能背景。GrabCut然后基于这个像素分布生成图,图中的节点是图像的像素。该图包括被称为源节点和汇节点的两个节点/附加节点。每一个前景像素连接到源节点并且每一个背景像素连接到汇节点。将像素连接到源节点的边的权重由像素是前景像素的概率定义,而将像素连接到汇节点的边的权重由像素是背景像素的概率定义。(像素间的)权重由边信息或像素相似性定义。如果在像素颜色上存在大的差异,则像素之间的边将具有对应的低权重。然后将mincut算法用于分割图。minicut算法将图一分为二,以基于代价函数(例如最小代价函数)分割源节点和汇节点。例如,代价函数可以与被分割的边的所有权重之和相对应。在分割之后,连接到源节点的所有像素被分类为前景,而连接到汇节点的像素被分类为背景。GrabCut过程可以迭代到像素的分类收敛为止。
在一些示例实施例中,多尺度方法被配置为对图像进行子采样,并且仅在最低分辨率下执行GrabCut。在一些示例实施例中,使用优化边界区域附近的图像的域变换(DT)滤波器来执行上采样。
本文描述的主题的一个或多个方面或特征可以在数字电子电路、集成电路、专门设计的ASIC、现场可编程门阵列(FPGA)、计算机硬件、固件、软件和/或其组合中实现。这些不同的方面或特征可以包括采用在可编程系统上可执行的和/或可解释的一个或多个计算机程序的实施方式,所述可编程系统包括至少一个可编程处理器,可以是专用的或通用的所述可编程处理器被耦接为从存储系统、至少一个输入设备、以及至少一个输出设备接收数据和指令,以及向其发送数据和指令。可编程系统或计算系统可以包括客户端和服务器。客户端和服务器一般相互远离并且通常通过通信网络交互。客户端和服务器的关系通过在相应计算机上运行并且相互具有客户端-服务器关系的计算机程序来产生。
这些计算机程序(其也被称为程序、软件、软件应用、应用、组件或代码)包括用于可编程处理器的机器指令,并且可以以高级过程和/或面向对象的编程语言和/或以汇编/机器语言来实现。如本文所使用的,术语“机器可读介质”是指用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、装置和/或设备(例如磁盘、光盘、存储器、可编程逻辑器件(PLD)),包括接收器器指令作为机器可读信号的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。机器可读介质可以非暂时性地存储这样的机器指令,例如如同非瞬时固态存储器或磁硬盘驱动器或任何等同的存储介质一样。机器可读介质可以备选地或附加地以瞬时的方式存储这样的机器指令,例如如同与一个或多个物理处理器核相关联的处理器高速缓存或其他随机存取存储器一样。
为了提供与用户的交互,本文描述的主题的一个或多个方面或特征可以在计算机上实现,该计算机具有用于向用户显示信息的显示设备(例如阴极射线管(CRT)或液晶显示器(LCD)或发光二极管(LED)监视器)和用户可以向计算机提供输入的键盘和指示设备(例如鼠标或轨迹球)。其他类型的设备也可以用于提供与用户的交互。例如,向用户提供的反馈可以是任意形式的传感反馈,例如视觉反馈、听觉反馈或触觉反馈;以及可以以任意形式(包括声音、语音或触觉输入)来接收来自用户的输入。其他可能的输入设备包括触摸屏或其他触敏设备,例如单点或多点电阻式或电容式跟踪板、语音识别硬件和软件、光学扫描仪、光学指示器、数字图像捕获设备和相关联的解释软件等。
本文描述的主题可以根据希望的配置体现在系统、装置、方法和/或制品中。前述描述中阐述的实施方式不代表与本文描述的主题一致的所有实施方式。相反,其仅是与与所描述的主题有关的方面一致的一些示例。尽管上文已经详细描述了一些变化,但是其他修改或增加是可能的。具体地,除了本文阐述的特征和/或变化之外,可以提供另外的特征和/或变化。例如,上述实施方式可以针对所公开的特征的各种组合和子组合和/或上述若干另外的特征的组合和子组合。此外,附图中描绘的和/或本文描述的逻辑流不一定需要所示出的特定顺序或顺序的顺序来实现希望的结果。例如,逻辑流可以包括所示出的以外的不同的和/或附加的操作而不背离本非公开的范围。逻辑流的一个或多个操作可以重复和/或省略而不背离本非公开的范围。其他实施方式在随附权利要求的范围之内。
Claims (20)
1.一种方法,包括:
在用户设备处获得描绘至少前景项的第一图像;
在所述用户设备处将所述第一图像子采样为多尺度变换的第一级图像;
在所述用户设备处并且基于机器学习模型执行所述第一级图像的前景部分和所述第一级图像的背景部分的识别;
在所述用户设备处并且基于所述前景部分和所述背景部分的识别生成第一掩模;
在所述用户设备处将所述第一掩模放大为与描绘所述前景项的所述第一图像相对应的分辨率;
在所述用户设备处对所述第一图像应用经放大的第一掩模以形成第二图像,所述第二图像描绘了所述第二图像中的所述背景部分的至少一部分被去除的所述前景项;以及
在所述用户设备处向发布系统提供描绘所述前景项的所述第二图像。
2.根据权利要求1所述的方法,其中,所述放大还包括:应用域变换以放大和平滑所述第一掩模。
3.根据权利要求1所述的方法,其中,所述执行包括:
指定环绕所述第一级图像的至少一部分的第一像素边界,以初始化所述机器学习模型以将该部分分类为纯背景;以及
基于所述机器学习模型和已指定作为所述纯背景的第一边界,将所述第一级图像的像素分类为可能前景部分或可能背景部分,并且
其中基于已分类的像素生成所述第一掩模。
4.根据权利要求1所述的方法,其中,所述机器学习模型包括GrabCut。
5.根据权利要求4所述的方法,其中,所述第一像素边界包括环绕所述第一级图像的至少一部分的已设置的量的像素。
6.根据权利要求5所述的方法,其中,所述已设置的量是5。
7.根据权利要求5所述的方法,其中,所述已设置的量提供所述机器学习模型的初始状态,以实现将第一级图像的一个或多个像素分类为纯背景、可能背景、纯前景或可能前景。
8.根据权利要求1所述的方法,其中,所述子采样还包括平滑所述第一图像以形成所述第一级图像。
9.根据权利要求1所述的方法,其中,所述应用还包括:
引起所述第二图像的显示;
接收在所述第二图像上的涂画的指示;
基于所述涂画或扩大的涂画,通过至少添加或去除所述第一掩模的一个或多个像素修改所述第一掩模;以及
对所述第二图像应用经修改的第一掩模。
10.根据权利要求9所述的方法,其中,所述第一掩模在应用之前被平滑。
11.根据权利要求1所述的方法,其中,所述用户设备通过以下来获得所述第一图像:从所述用户设备的图像传感器捕获图像、下载所述第一图像、从第三方网站下裁所述第一图像和/或从所述用户没备的显示器捕获作为截屏的所述第一图像。
12.根据权利要求1所述的方法,其中,所述第一级图像的前景部分和所述第一级图像的背景部分均与所述第一图像的所述背景部分和所述前景部分的经子采样和经平滑的版本相对应。
13.根据权利要求1所述的方法,还包括:
引起在所述用户设备处将描绘所述前景项的所述第二图像显示为所述发布系统的项目列表。
14.根据权利要求1所述的方法,其中,所述机器学习模型包括高斯混合模型和/或神经网络。
15.一种系统,包括:
至少一个处理器;以及
包括指令的至少一个存储器,所述指令在由所述至少一个处理器执行时使所述系统提供包括以下的操作:
在用户设备处获得描绘至少前景项的第一图像;
在所述用户设备处将所述第一图像子采样为多尺度变换的第一级图像;
在所述用户设备处并且基于机器学习模型执行所述第一级图像的前景部分和所述第一级图像的背景部分的识别;
在所述用户设备处并且基于所述前景部分和所述背景部分的识别生成第一掩模;
在所述用户设备处将所述第一掩模放大为与描绘所述前景项的所述第一图像相对应的分辨率;
在所述用户设备处对所述第一图像应用经放大的第一掩模以形成第二图像,所述第二图像描绘了所述第二图像中的所述背景部分的至少一部分被去除的所述前景项;以及
在所述用户设备处向发布系统提供描绘所述前景项的所述第二图像。
16.根据权利要求15所述的系统,其中,所述执行包括:
指定环绕所述第一级图像的至少一部分的第一像素边界,以初始化所述机器学习模型以将该部分分类为纯背景;以及
基于所述机器学习模型和已指定作为所述纯背景的第一边界,将所述第一级图像的像素分类为可能前景部分或可能背景部分,并且
其中基于已分类的像素生成所述第一掩模。
17.根据权利要求15所述的系统,其中,所述机器学习模型包括GrabCut。
18.根据权利要求15所述的系统,其中,所述第一像素边界包括环绕所述第一级图像的至少一部分的已设置的量的像素。
19.根据权利要求18所述的系统,其中,所述已设置的量提供所述机器学习模型的初始状态,以实现将第一级图像的一个或多个像素分类为纯背景、可能背景、纯前景或可能前景。
20.一种包括指令的非暂时性计算机可读存储介质,所述指令在由至少一个处理器执行时引起包括以下的操作:
在用户设备处获得描绘至少前景项的第一图像;
在所述用户设备处将所述第一图像子采样为多尺度变换的第一级图像;
在所述用户设备处并且基于机器学习模型执行所述第一级图像的前景部分和所述第一级图像的背景部分的识别;
在所述用户设备处并且基于所述前景部分和所述背景部分的识别生成第一掩模;
在所述用户设备处将所述第一掩模放大为与描绘所述前景项的所述第一图像相对应的分辨率;
在所述用户设备处对所述第一图像应用经放大的第一掩模以形成第二图像,所述第二图像描绘了所述第二图像中的所述背景部分的至少一部分被去除的所述前景项;以及
在所述用户设备处向发布系统提供描绘所述前景项的所述第二图像。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/089,603 US11631161B2 (en) | 2020-11-04 | 2020-11-04 | Image cleanup on a mobile device |
US17/089,603 | 2020-11-04 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114445286A true CN114445286A (zh) | 2022-05-06 |
Family
ID=77864479
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111267747.XA Pending CN114445286A (zh) | 2020-11-04 | 2021-10-28 | 移动设备上的图像清理 |
Country Status (3)
Country | Link |
---|---|
US (3) | US11631161B2 (zh) |
EP (2) | EP3996040B1 (zh) |
CN (1) | CN114445286A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11915192B2 (en) | 2019-08-12 | 2024-02-27 | Walmart Apollo, Llc | Systems, devices, and methods for scanning a shopping space |
US11631161B2 (en) * | 2020-11-04 | 2023-04-18 | Ebay Inc. | Image cleanup on a mobile device |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107730528A (zh) * | 2017-10-28 | 2018-02-23 | 天津大学 | 一种基于grabcut算法的交互式图像分割与融合方法 |
CN109712165A (zh) * | 2018-12-29 | 2019-05-03 | 安徽大学 | 一种基于卷积神经网络的同类前景图像集分割方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2016315938B2 (en) | 2015-08-31 | 2022-02-24 | Cape Analytics, Inc. | Systems and methods for analyzing remote sensing imagery |
WO2018128741A1 (en) | 2017-01-06 | 2018-07-12 | Board Of Regents, The University Of Texas System | Segmenting generic foreground objects in images and videos |
US10402689B1 (en) * | 2017-04-04 | 2019-09-03 | Snap Inc. | Generating an image mask using machine learning |
GB201709672D0 (en) * | 2017-06-16 | 2017-08-02 | Ucl Business Plc | A system and computer-implemented method for segmenting an image |
US11244195B2 (en) * | 2018-05-01 | 2022-02-08 | Adobe Inc. | Iteratively applying neural networks to automatically identify pixels of salient objects portrayed in digital images |
US11688070B2 (en) * | 2020-06-25 | 2023-06-27 | Intel Corporation | Video frame segmentation using reduced resolution neural network and masks from previous frames |
US11631161B2 (en) * | 2020-11-04 | 2023-04-18 | Ebay Inc. | Image cleanup on a mobile device |
-
2020
- 2020-11-04 US US17/089,603 patent/US11631161B2/en active Active
-
2021
- 2021-09-21 EP EP21197927.3A patent/EP3996040B1/en active Active
- 2021-09-21 EP EP23166626.4A patent/EP4224422B1/en active Active
- 2021-10-28 CN CN202111267747.XA patent/CN114445286A/zh active Pending
-
2023
- 2023-03-10 US US18/120,309 patent/US11803944B2/en active Active
- 2023-09-12 US US18/465,643 patent/US20230419457A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107730528A (zh) * | 2017-10-28 | 2018-02-23 | 天津大学 | 一种基于grabcut算法的交互式图像分割与融合方法 |
CN109712165A (zh) * | 2018-12-29 | 2019-05-03 | 安徽大学 | 一种基于卷积神经网络的同类前景图像集分割方法 |
Non-Patent Citations (2)
Title |
---|
JIAGAO HU 等: "Progressive Image Segmentation Using Online Learning", ADVANCES IN MULTIMEDIA INFORMATION PROCESSING – PCM 2015, 31 December 2015 (2015-12-31), pages 183 - 186 * |
LING GE 等: "Interactive RGB-D Image Segmentation Using Hierarchical Graph Cut and Geodesic Distance", ADVANCES IN MULTIMEDIA INFORMATION PROCESSING – PCM 2015, 31 December 2015 (2015-12-31), pages 116 - 120 * |
Also Published As
Publication number | Publication date |
---|---|
EP4224422B1 (en) | 2024-04-03 |
EP3996040A2 (en) | 2022-05-11 |
EP4224422A2 (en) | 2023-08-09 |
EP4224422A3 (en) | 2023-09-06 |
US11631161B2 (en) | 2023-04-18 |
US20230419457A1 (en) | 2023-12-28 |
US20230206407A1 (en) | 2023-06-29 |
US20220138914A1 (en) | 2022-05-05 |
EP3996040A3 (en) | 2022-08-10 |
US11803944B2 (en) | 2023-10-31 |
EP3996040B1 (en) | 2023-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Yang et al. | Where is my mirror? | |
JP6723247B2 (ja) | ターゲット取得の方法及び装置 | |
Fu et al. | Using convolutional neural network to identify irregular segmentation objects from very high-resolution remote sensing imagery | |
US11803944B2 (en) | Image cleanup on a mobile device | |
Gong et al. | Advanced image and video processing using MATLAB | |
AU2021354030B2 (en) | Processing images using self-attention based neural networks | |
US20150016668A1 (en) | Settlement mapping systems | |
CN112101386B (zh) | 文本检测方法、装置、计算机设备和存储介质 | |
CN114170231A (zh) | 基于卷积神经网络的图像语义分割方法、装置及电子设备 | |
Jayanthiladevi et al. | Text, images, and video analytics for fog computing | |
Li | A survey on image deblurring | |
Frantc et al. | Machine learning approach for objective inpainting quality assessment | |
US12020400B2 (en) | Upsampling and refining segmentation masks | |
Voronin et al. | Automatic image cracks detection and removal on mobile devices | |
Oludare et al. | Attention-guided cascaded networks for improved face detection and landmark localization under low-light conditions | |
Chen et al. | Application of optimized convolution neural network model in mural segmentation | |
Mishra et al. | Detection of Moving Vehicle in Foggy Environment using Google's Firebase Platform. | |
Alonso et al. | Automatic uav-based airport pavement inspection using mixed real and virtual scenarios | |
Martynova et al. | Revising deep learning methods in parking lot occupancy detection | |
Huang et al. | Multi-feature learning for low-light image enhancement | |
Ankayarkanni et al. | Object based segmentation techniques for classification of satellite image | |
US20230315373A1 (en) | System and method for automatically curating and displaying images | |
Arivazhagan et al. | FPGA implementation of GMM algorithm for background subtractions in video sequences | |
Narwal et al. | Image Systems and Visualizations | |
US20230129341A1 (en) | Generating object mask previews and single input selection object masks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |