WO2020029466A1 - 图像处理方法和装置 - Google Patents

图像处理方法和装置 Download PDF

Info

Publication number
WO2020029466A1
WO2020029466A1 PCT/CN2018/116340 CN2018116340W WO2020029466A1 WO 2020029466 A1 WO2020029466 A1 WO 2020029466A1 CN 2018116340 W CN2018116340 W CN 2018116340W WO 2020029466 A1 WO2020029466 A1 WO 2020029466A1
Authority
WO
WIPO (PCT)
Prior art keywords
gesture
image
fingertip
information
keypoint
Prior art date
Application number
PCT/CN2018/116340
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 北京字节跳动网络技术有限公司
Publication of WO2020029466A1 publication Critical patent/WO2020029466A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • 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
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • 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
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/462Salient features, e.g. scale invariant feature transforms [SIFT]

Definitions

  • Embodiments of the present application relate to the field of computer technology, and specifically to the field of Internet technology, and in particular, to an image processing method and device.
  • Gesture interaction is an important form of human-computer interaction and has been widely used.
  • the detection of key points of a gesture is usually the detection of dozens of key points in a gesture.
  • each of the above-mentioned key points is detected every time the key points are detected, however, many of the key points detected are often underutilized, and a large part is not applied in the subsequent.
  • the embodiments of the present application provide an image processing method and device.
  • an embodiment of the present application provides an image processing method, including: acquiring a gesture frame of an image including a gesture, wherein the gesture frame is used to indicate a position of a gesture included in the image; and extracting from the image the gesture frame A partial image containing a gesture; the partial image is input to a keypoint detection model to determine keypoint information of a fingertip of the gesture contained in the image, where the keypoint information includes fingertip position information.
  • the keypoint information further includes, for each fingertip of the gesture, fingertip visible information indicating whether the fingertip is visible.
  • obtaining a gesture frame of an image including a gesture includes: performing gesture detection on the image to determine a gesture frame indicating a position of a gesture included in the image.
  • the keypoint detection model is a convolutional neural network.
  • the keypoint detection model is trained by the following steps: obtaining a training sample set, where the samples in the training sample set include local images including gestures, and fingertip position information and Fingertip visible information; taking the local image as input, using the fingertip position information and fingertip visible information of the gesture contained in the local image as output, the initial keypoint detection model is trained to obtain the keypoint detection model.
  • an embodiment of the present application provides an image processing apparatus including: an obtaining unit configured to obtain a gesture frame of an image including a gesture, wherein the gesture frame is used to indicate a position of a gesture included in the image; Configured to extract a partial image including a gesture indicated by a gesture frame from the image; a determining unit configured to input the partial image into a keypoint detection model to determine keypoint information of a fingertip of a gesture contained in the image, wherein, Key point information includes fingertip position information.
  • the keypoint information further includes, for each fingertip of the gesture, fingertip visible information indicating whether the fingertip is visible.
  • the obtaining unit is further configured to perform gesture detection on the image to determine a gesture frame indicating a position of a gesture included in the image.
  • the keypoint detection model is a convolutional neural network.
  • the keypoint detection model is trained by the following steps: obtaining a training sample set, where the samples in the training sample set include local images including gestures, and fingertip position information and Fingertip visible information; taking the local image as input, using the fingertip position information and fingertip visible information of the gesture contained in the local image as output, the initial keypoint detection model is trained to obtain the keypoint detection model.
  • an embodiment of the present application provides an electronic device including: one or more processors; a storage device configured to store one or more programs, and when one or more programs are executed by one or more processors , So that one or more processors implement the method as in any embodiment of the image processing method.
  • an embodiment of the present application provides a computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, the method as in any embodiment of the image processing method is implemented.
  • a gesture frame of an image including a gesture is obtained, where the gesture frame is used to indicate a position of a gesture included in the image.
  • a partial image including a gesture indicated by the gesture frame is extracted from the image.
  • the local image is input to a keypoint detection model to determine keypoint information of a fingertip of a gesture included in the image, where the keypoint information includes fingertip position information.
  • the embodiments of the present application can detect key points of important fingertips, avoid invalid detection caused by detecting key points with low application frequency in gestures, and improve detection efficiency.
  • FIG. 1 is an exemplary system architecture diagram to which the present application can be applied;
  • FIG. 2 is a flowchart of an embodiment of an image processing method according to the present application.
  • FIG. 3 is a schematic diagram of an application scenario of an image processing method according to the present application.
  • FIG. 4 is a schematic structural diagram of an embodiment of an image processing apparatus according to the present application.
  • FIG. 5 is a schematic structural diagram of a computer system suitable for implementing an electronic device according to an embodiment of the present application.
  • FIG. 1 illustrates an exemplary system architecture 100 to which an embodiment of an image processing method or an image processing apparatus of the present application can be applied.
  • the system architecture 100 may include terminal devices 101, 102, and 103, a network 104, and a server 105.
  • the network 104 is a medium for providing a communication link between the terminal devices 101, 102, 103 and the server 105.
  • the network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, and so on.
  • the user can use the terminal devices 101, 102, 103 to interact with the server 105 through the network 104 to receive or send messages and the like.
  • Various communication client applications can be installed on the terminal devices 101, 102, 103, such as image recognition applications, short video applications, search applications, instant communication tools, email clients, social platform software, and so on.
  • the terminal devices 101, 102, and 103 may be hardware or software.
  • the terminal devices 101, 102, and 103 can be various electronic devices with a display screen, including but not limited to smart phones, tablet computers, e-book readers, laptop computers and desktop computers.
  • the terminal devices 101, 102, and 103 are software, they can be installed in the electronic devices listed above. It can be implemented as multiple software or software modules (such as multiple software or software modules used to provide distributed services), or it can be implemented as a single software or software module. It is not specifically limited here.
  • the server 105 may be a server that provides various services, such as a background server that supports the terminal devices 101, 102, and 103.
  • the background server can perform analysis and other processing on the received data such as pictures, and feed back the processing results (such as key point information of the fingertip of the gesture contained in the image) to the terminal device.
  • the image processing method provided in the embodiment of the present application may be executed by the server 105 or the terminal devices 101, 102, and 103. Accordingly, the image processing apparatus may be provided in the server 105 or the terminal devices 101, 102, and 103.
  • terminal devices, networks, and servers in FIG. 1 are merely exemplary. According to implementation needs, there can be any number of terminal devices, networks, and servers.
  • the image processing method includes the following steps:
  • Step 201 Obtain a gesture frame of an image including a gesture, where the gesture frame is used to indicate a position of a gesture included in the image.
  • an execution subject (for example, a server or a terminal device shown in FIG. 1) on which the image processing method runs may obtain a gesture frame containing an image of a gesture from a local or other electronic device.
  • the gesture border can be used to delineate the gesture to indicate the position of the gesture.
  • the gesture frame may be rectangular.
  • the above-mentioned execution subject may use only the gesture frame to store the position information of the frame, and the gesture frame is not displayed in the image.
  • the gesture frame can also be visualized in the image.
  • the execution body may obtain the gesture frame in multiple ways. For example, a predetermined gesture frame can be obtained from a local or other electronic device.
  • the outline of the area where the gesture frame determined for the previous frame is located can also be used as the gesture frame of this frame.
  • step 201 may include:
  • Gesture detection is performed on the image to determine a gesture border indicating the location of the gesture contained in the image.
  • the execution subject may perform gesture detection on the image, and use a bounding box generated during the detection as a gesture frame. Through detection, a more accurate gesture frame can be obtained.
  • an image can be input into a convolutional neural network capable of performing gesture detection. From the convolutional neural network, gesture frames can be output.
  • step 202 a partial image including a gesture indicated by a gesture frame is extracted from the image.
  • the execution subject may extract a partial image including a gesture indicated by a gesture frame from the image. Specifically, the execution subject may crop a partial image in the gesture frame from the image, and an edge of the gesture frame is coincident with an edge of the partial image.
  • Step 203 The local image is input to a keypoint detection model to determine keypoint information of a fingertip of a gesture included in the image, where the keypoint information includes fingertip position information.
  • the above-mentioned execution body may input the extracted partial image into a key point detection model, and obtain key point information output from the key point detection model.
  • the key point information is key point information of a fingertip of a gesture included in the image.
  • the key point information may include finger tip position information.
  • the finger tip position information may be the coordinates of the finger tip in the partial image (or image).
  • the keypoint detection model can be a classifier (Support Vector Machine (SVM), Naive Bayesian Model (NBM), Convolutional Neural Network (CNN), etc. Classifier) training.
  • the keypoint detection model may also be pre-trained by some classification function (such as a softmax function, etc.).
  • the key point detection model is a convolutional neural network.
  • the convolutional neural network contains multiple convolutional layers and has strong processing capabilities.
  • the convolutional neural network can not only accurately classify whether the fingertip is visible, but also accurately determine the position information of the fingertip.
  • the keypoint detection model is trained by the following steps:
  • the samples in the training sample set include local images including gestures, and fingertip position information and visible fingertip information of the gestures contained in each local image;
  • the local image is used as input, and the fingertip position information and visible fingertip information of the gesture contained in the local image are used as outputs to train an initial keypoint detection model to obtain a keypoint detection model.
  • the initial keypoint detection model is a keypoint detection model to be trained. After training using samples, after inputting a partial image to the key point detection model, the finger point position information and visible finger tip information of the gesture contained in the local image output by the key point detection model can be obtained. By training with a large number of samples, an accurate keypoint detection model can be obtained.
  • the key point information further includes: for each fingertip of the gesture, fingertip visible information indicating whether the fingertip is visible.
  • one gesture corresponds to five fingertips, and some gestures may not show all the fingertips in the image. That is, the number of fingertips displayed by different gestures may be different.
  • the fingertip visible information you can determine which fingertips are visible in the image and which are not. Specifically, for each fingertip of each gesture, the execution subject determines whether the fingertip is visible.
  • the above-mentioned execution subject may determine the fingertip position information and the fingertip visible information of the gesture included in the partial image. For example, there is a gesture in the partial image, and the fingertips of five fingers from thumb to pinky are numbered 1, 2, 3, 4, and 5, respectively.
  • the detection result can be output from the key point detection model. The detection result shows that 1, 5 of the fingertips are visible, 2, 3, and 4 are not visible, and position information of 1, 5 is displayed.
  • the key point of the fingertip is an important key point with a high frequency of application. These implementations can accurately represent which keypoints of the fingertip are visible and which are not.
  • FIG. 3 is a schematic diagram of an application scenario of the image processing method according to this embodiment.
  • the execution body 301 may obtain a gesture frame 302 of an image including a gesture from a local or other electronic device, where the gesture frame is used to indicate a position of the gesture included in the image.
  • the execution body 301 extracts a partial image 303 including a gesture indicated by the gesture frame from the image.
  • the local image 303 is input into a keypoint detection model to determine keypoint information 304 of a fingertip of a gesture included in the image, where the keypoint information includes fingertip position information.
  • the method provided by the foregoing embodiments of the present application can detect key points of important fingertips, avoid invalid detection caused by detecting key points with low application frequency in gestures, and improve detection efficiency.
  • this application provides an embodiment of an image processing device.
  • the device embodiment corresponds to the method embodiment shown in FIG. 2, and the device may specifically Used in various electronic equipment.
  • the image processing apparatus 400 in this embodiment includes an obtaining unit 401, an extracting unit 402, and a determining unit 403.
  • the obtaining unit 401 is configured to obtain a gesture frame of an image containing a gesture, wherein the gesture frame is used to indicate a position of a gesture included in the image
  • the extraction unit 402 is configured to extract from the image the content indicated by the gesture frame.
  • a partial image of a gesture a determining unit 403 configured to input a partial image into a keypoint detection model to determine keypoint information of a fingertip of a gesture contained in the image, wherein the keypoint information includes fingertip position information.
  • the obtaining unit 401 of the image processing apparatus 400 may obtain a gesture frame of an image containing a gesture from a local or other electronic device.
  • Gesture borders can be used to define gestures to indicate their location.
  • the gesture frame may be rectangular.
  • the above-mentioned execution subject may use only the gesture frame to store the position information of the frame, and the gesture frame is not displayed in the image.
  • the gesture frame can also be visualized in the image.
  • the extraction unit 402 extracts a partial image including a gesture indicated by a gesture frame from the above-mentioned image.
  • the execution subject may crop a partial image in the gesture frame from the image, and an edge of the gesture frame is coincident with an edge of the partial image.
  • the determining unit 403 may input the extracted partial image into a keypoint detection model, and obtain keypoint information output from the keypoint detection model.
  • the key point information is key point information of a fingertip of a gesture included in the image.
  • the key point information may include finger tip position information.
  • the finger tip position information may be the coordinates of the finger tip in the partial image (or image).
  • the key point information further includes: for each fingertip of the gesture, fingertip visible information indicating whether the fingertip is visible.
  • the obtaining unit is further configured to perform gesture detection on the image to determine a gesture frame indicating a position of a gesture included in the image.
  • the key point detection model is a convolutional neural network.
  • the keypoint detection model is obtained by training in the following steps: obtaining a training sample set, where the samples in the training sample set include local images including gestures, and Gesture fingertip position information and fingertip visible information; take the local image as input, use the fingertip position information and fingertip visible information of the gesture contained in the local image as output, train the initial keypoint detection model, and get the keypoint detection model .
  • FIG. 5 is a schematic structural diagram of a computer system 500 suitable for implementing an electronic device according to an embodiment of the present application.
  • the electronic device shown in FIG. 5 is only an example, and should not impose any limitation on the functions and scope of use of the embodiments of the present application.
  • the computer system 500 includes a central processing unit (CPU and / or GPU) 501, which can be loaded into a random access memory (RAM) according to a program stored in a read-only memory (ROM) 502 or from a storage portion 508
  • the program in 503 performs various appropriate actions and processes.
  • various programs and data required for the operation of the system 500 are also stored.
  • the central processing unit 501, the ROM 502, and the RAM 503 are connected to each other through a bus 504.
  • An input / output (I / O) interface 505 is also connected to the bus 504.
  • the following components are connected to the I / O interface 505: a storage section 506 including a hard disk and the like; and a communication section 507 including a network interface card such as a LAN card, a modem, and the like.
  • the communication section 507 performs communication processing via a network such as the Internet.
  • the driver 508 is also connected to the I / O interface 505 as needed.
  • a removable medium 509 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 508 as needed, so that a computer program read therefrom is installed into the storage section 506 as needed.
  • the process described above with reference to the flowchart may be implemented as a computer software program.
  • embodiments of the present disclosure include a computer program product including a computer program carried on a computer-readable medium, the computer program containing program code for performing a method shown in a flowchart.
  • the computer program may be downloaded and installed from a network through the communication section 507, and / or installed from a removable medium 509.
  • a central processing unit CPU and / or GPU
  • the computer-readable medium of the present application may be a computer-readable signal medium or a computer-readable storage medium or any combination of the foregoing.
  • the computer-readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections with one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable Programming read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the foregoing.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in combination with an instruction execution system, apparatus, or device.
  • a computer-readable signal medium may include a data signal that is included in baseband or propagated as part of a carrier wave, and which carries computer-readable program code. This propagated data signal can take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing.
  • the computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium, and the computer-readable medium may send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device .
  • Program code embodied on a computer-readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
  • each block in the flowchart or block diagram may represent a module, a program segment, or a part of code, which contains one or more functions to implement a specified logical function Executable instructions.
  • the functions noted in the blocks may also occur in a different order than those marked in the drawings. For example, two successively represented boxes may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved.
  • each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts can be implemented by a dedicated hardware-based system that performs the specified function or operation , Or it can be implemented with a combination of dedicated hardware and computer instructions.
  • the units described in the embodiments of the present application may be implemented by software or hardware.
  • the described unit may also be provided in a processor, for example, it may be described as: a processor includes an obtaining unit, an extracting unit, and a determining unit. Wherein, the names of these units do not constitute a limitation on the unit itself in some cases, for example, the obtaining unit may also be described as a “unit for obtaining a gesture frame of an image containing a gesture”.
  • the present application also provides a computer-readable medium, which may be included in the device described in the foregoing embodiments; or may exist alone without being assembled into the device.
  • the computer-readable medium carries one or more programs.
  • the device is caused to obtain a gesture frame of an image including a gesture, where the gesture frame is used to indicate a gesture included in the image.
  • the device is caused to obtain a gesture frame of an image including a gesture, where the gesture frame is used to indicate a gesture included in the image.
  • extract the partial image containing the gesture indicated by the gesture frame From the image, extract the partial image containing the gesture indicated by the gesture frame; input the partial image into the keypoint detection model to determine the keypoint information of the fingertip of the gesture contained in the image, where the keypoint information includes the fingertip location information.

Abstract

本申请实施例公开了图像处理方法和装置。该方法的一具体实施方式包括:获取包含手势的图像的手势边框,其中,该手势边框用于指示图像所包含手势的位置;从该图像中,提取该手势边框所指示的包含手势的局部图像;将该局部图像输入关键点检测模型,以确定该图像所包含手势的手指尖的关键点信息,其中,该关键点信息包括手指尖位置信息。本申请实施例能够检测重要的手指尖的关键点,避免对手势中应用频率很低的关键点进行检测导致的无效检测,提高检测效率。

Description

图像处理方法和装置
本专利申请要求于2018年8月7日提交的、申请号为201810888877.7、申请人为北京字节跳动网络技术有限公司、发明名称为“图像处理方法和装置”的中国专利申请的优先权,该申请的全文以引用的方式并入本申请中。
技术领域
本申请实施例涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及图像处理方法和装置。
背景技术
手势交互是人机交互的一种重要形式,已经被广泛应用。对手势的关键点的检测,通常是对手势中的数十个关键点进行检测。
在现有技术中,每次检测关键点都要检测上述的多个关键点,然而检测得到的这些关键点中的很多关键点往往利用率偏低,很大一部分在后续没有得到应用。
发明内容
本申请实施例提出了图像处理方法和装置。
第一方面,本申请实施例提供了一种图像处理方法,包括:获取包含手势的图像的手势边框,其中,手势边框用于指示图像所包含手势的位置;从图像中,提取手势边框所指示的包含手势的局部图像;将局部图像输入关键点检测模型,以确定图像所包含手势的手指尖的关键点信息,其中,关键点信息包括手指尖位置信息。
在一些实施例中,关键点信息还包括:对于手势的每一个手指尖,指示该手指尖是否可见的手指尖可见信息。
在一些实施例中,获取包含手势的图像的手势边框,包括:对图 像进行手势检测,以确定指示图像所包含手势的位置的手势边框。
在一些实施例中,关键点检测模型为卷积神经网络。
在一些实施例中,关键点检测模型通过以下步骤训练得到:获取训练样本集,其中,训练样本集中的样本包括包含手势的局部图像,以及与各个局部图像所包含的手势的手指尖位置信息和手指尖可见信息;将局部图像作为输入,将该局部图像所包含手势的手指尖位置信息和手指尖可见信息作为输出,训练初始关键点检测模型,得到关键点检测模型。
第二方面,本申请实施例提供了一种图像处理装置,包括:获取单元,被配置成获取包含手势的图像的手势边框,其中,手势边框用于指示图像所包含手势的位置;提取单元,被配置成从图像中,提取手势边框所指示的包含手势的局部图像;确定单元,被配置成将局部图像输入关键点检测模型,以确定图像所包含手势的手指尖的关键点信息,其中,关键点信息包括手指尖位置信息。
在一些实施例中,关键点信息还包括:对于手势的每一个手指尖,指示该手指尖是否可见的手指尖可见信息。
在一些实施例中,获取单元进一步被配置成:对图像进行手势检测,以确定指示图像所包含手势的位置的手势边框。
在一些实施例中,关键点检测模型为卷积神经网络。
在一些实施例中,关键点检测模型通过以下步骤训练得到:获取训练样本集,其中,训练样本集中的样本包括包含手势的局部图像,以及与各个局部图像所包含的手势的手指尖位置信息和手指尖可见信息;将局部图像作为输入,将该局部图像所包含手势的手指尖位置信息和手指尖可见信息作为输出,训练初始关键点检测模型,得到关键点检测模型。
第三方面,本申请实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如图像处理方法中任一实施例的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上 存储有计算机程序,该程序被处理器执行时实现如图像处理方法中任一实施例的方法。
本申请实施例提供的图像处理方案,首先,获取包含手势的图像的手势边框,其中,手势边框用于指示图像所包含手势的位置。之后,从图像中,提取手势边框所指示的包含手势的局部图像。然后,将局部图像输入关键点检测模型,以确定图像所包含手势的手指尖的关键点信息,其中,关键点信息包括手指尖位置信息。本申请实施例能够检测重要的手指尖的关键点,避免对手势中应用频率很低的关键点进行检测导致的无效检测,提高检测效率。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性系统架构图;
图2是根据本申请的图像处理方法的一个实施例的流程图;
图3是根据本申请的图像处理方法的一个应用场景的示意图;
图4是根据本申请的图像处理装置的一个实施例的结构示意图;
图5是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的图像处理方法或图像处理装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如图像识别应用、短视频类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
这里的终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103提供支持的后台服务器。后台服务器可以对接收到的图片等数据进行分析等处理,并将处理结果(例如图像所包含手势的手指尖的关键点信息)反馈给终端设备。
需要说明的是,本申请实施例所提供的图像处理方法可以由服务器105或者终端设备101、102、103执行,相应地,图像处理装置可以设置于服务器105或者终端设备101、102、103中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的图像处理方法的一个实施例的流程200。该图像处理方法,包括以下步骤:
步骤201,获取包含手势的图像的手势边框,其中,手势边框用于指示图像所包含手势的位置。
在本实施例中,图像处理方法运行于其上的执行主体(例如图1所示的服务器或终端设备)可以从本地或者其他电子设备获取包含手 势的图像的手势边框。手势边框可以划定出手势,以指示手势的位置。具体地,手势边框可以是矩形。上述执行主体可以仅使用手势边框存储边框的位置信息,在图像中不显示手势边框。此外,手势边框也可以直观地呈现在图像中。具体地,上述执行主体可以采用多种方式获取手势边框。比如,可以从本地或者其他电子设备获取预先确定的手势边框。此外,如果图像是视频中的一帧,也可以将对上一帧确定的手势边框所在的区域的轮廓作为这一帧的手势边框。
在本实施例的一些可选的实现方式中,步骤201可以包括:
对图像进行手势检测,以确定指示图像所包含手势的位置的手势边框。
在这些可选的实现方式中,上述执行主体可以对上述图像进行手势检测,将检测过程中生成的边框(Bounding-Box)作为手势边框。通过检测能够得到更加准确的手势边框。具体地,可以将图像输入能够进行手势检测的卷积神经网络。从卷积神经网络能够输出手势边框。
步骤202,从图像中,提取手势边框所指示的包含手势的局部图像。
在本实施例中,上述执行主体可以从上述图像中,提取手势边框所指示的包含手势的局部图像。具体地,上述执行主体可以从上述图像中裁剪出手势边框中的局部图像,手势边框的边线与局部图像的边线相重合。
步骤203,将局部图像输入关键点检测模型,以确定图像所包含手势的手指尖的关键点信息,其中,关键点信息包括手指尖位置信息。
在本实施例中,上述执行主体可以将提取到的局部图像输入关键点检测模型,得到从关键点检测模型输出的关键点信息。关键点信息是上述图像所包含手势的手指尖的关键点信息。关键点信息可以包括手指尖位置信息。手指尖位置信息可以是手指尖在局部图像(或者图像)中的坐标。
在实践中,关键点检测模型可以是由支持向量机(Support Vector Machine,SVM)、朴素贝叶斯模型(Naive Bayesian Model,NBM)、卷积神经网络(Convolutional Neural Network,CNN)等分类器(Classifier) 训练得到的。此外,关键点检测模型也可以是由某些分类函数(例如softmax函数等)预先训练而成的。
在本实施例的一些可选的实现方式中,关键点检测模型为卷积神经网络。
在这些可选的实现方式中,卷积神经网络中包含多个卷积层,具有很强的处理能力。卷积神经网络不仅可以准确地分类手指尖是否可见,还准确地确定出手指尖位置信息。
在本实施例的一些可选的实现方式中,关键点检测模型通过以下步骤训练得到:
获取训练样本集,其中,训练样本集中的样本包括包含手势的局部图像,以及与各个局部图像所包含的手势的手指尖位置信息和手指尖可见信息;
将局部图像作为输入,将该局部图像所包含手势的手指尖位置信息和手指尖可见信息作为输出,训练初始关键点检测模型,得到关键点检测模型。
在这些可选的实现方式中,初始关键点检测模型为有待于训练的关键点检测模型。在使用样本进行训练后,则可以在向关键点检测模型输入局部图像后,得到关键点检测模型输出的该局部图像所包含手势的手指尖位置信息和手指尖可见信息。通过大量的样本进行训练,可以得到准确的关键点检测模型。
在本实施例的一些可选的实现方式中,关键点信息还包括:对于手势的每一个手指尖,指示该手指尖是否可见的手指尖可见信息。
在这些可选的实现方式中,一个手势对应5个手指尖,一些手势可能在图像中并没有呈现全部的手指尖。也即不同的手势所呈现出的手指尖数目可以是不尽相同的。通过手指尖可见信息,可以确定哪些手指尖在图像中是可见的,哪些是不可见的。具体地,上述执行主体对于每个手势的每个手指尖,都确定该手指尖是否可见。
这样,在本实施例中,上述执行主体可以确定局部图像的所包含手势的手指尖位置信息和手指尖可见信息。举例来说,局部图像中有一个手势,从大拇指到小拇指的五个手指的手指尖分别编号1、2、3、 4和5。从关键点检测模型可以输出检测结果,检测结果显示上述手指尖中的1、5可见,2、3、4不可见,以及1、5的位置信息。
手指尖的关键点是应用频率高的重要关键点,这些实现方式可以准确地表现哪些手指尖的关键点可见,哪些不可见,实现后续根据该指尖的可见性对图像中的指定手指尖进行处理,从而增强了检测结果应用的广泛性。举例来说,可以在图像中对大拇指指尖所在的位置添加图案,采用的方式可以是覆盖或者叠加。
继续参见图3,图3是根据本实施例的图像处理方法的应用场景的一个示意图。在图3的应用场景中,执行主体301可以从本地或者其他电子设备获取包含手势的图像的手势边框302,其中,手势边框用于指示图像所包含手势的位置。执行主体301从图像中,提取手势边框所指示的包含手势的局部图像303。将局部图像303输入关键点检测模型,以确定图像所包含手势的手指尖的关键点信息304,其中,关键点信息包括手指尖位置信息。
本申请的上述实施例提供的方法能够检测重要的手指尖的关键点,避免对手势中应用频率很低的关键点进行检测导致的无效检测,提高检测效率。
进一步参考图4,作为对上述各图所示方法的实现,本申请提供了一种图像处理装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图4所示,本实施例的图像处理装置400包括:获取单元401、提取单元402和确定单元403。其中,获取单元401,被配置成获取包含手势的图像的手势边框,其中,手势边框用于指示图像所包含手势的位置;提取单元402,被配置成从图像中,提取手势边框所指示的包含手势的局部图像;确定单元403,被配置成将局部图像输入关键点检测模型,以确定图像所包含手势的手指尖的关键点信息,其中,关键点信息包括手指尖位置信息。
在一些实施例中,图像处理装置400的获取单元401可以从本地或者其他电子设备获取包含手势的图像的手势边框。手势边框可以划 定出手势,以指示手势的位置。具体地,手势边框可以是矩形。上述执行主体可以仅使用手势边框存储边框的位置信息,在图像中不显示手势边框。此外,手势边框也可以直观地呈现在图像中。
在一些实施例中,提取单元402从上述图像中,提取手势边框所指示的包含手势的局部图像。具体地,上述执行主体可以从上述图像中裁剪出手势边框中的局部图像,手势边框的边线与局部图像的边线相重合。
在一些实施例中,确定单元403可以将提取到的局部图像输入关键点检测模型,得到从关键点检测模型输出的关键点信息。关键点信息是上述图像所包含手势的手指尖的关键点信息。关键点信息可以包括手指尖位置信息。手指尖位置信息可以是手指尖在局部图像(或者图像)中的坐标。
在本实施例的一些可选的实现方式中,关键点信息还包括:对于手势的每一个手指尖,指示该手指尖是否可见的手指尖可见信息。
在本实施例的一些可选的实现方式中,获取单元进一步被配置成:对图像进行手势检测,以确定指示图像所包含手势的位置的手势边框。
在本实施例的一些可选的实现方式中,关键点检测模型为卷积神经网络。
在本实施例的一些可选的实现方式中,关键点检测模型通过以下步骤训练得到:获取训练样本集,其中,训练样本集中的样本包括包含手势的局部图像,以及与各个局部图像所包含的手势的手指尖位置信息和手指尖可见信息;将局部图像作为输入,将该局部图像所包含手势的手指尖位置信息和手指尖可见信息作为输出,训练初始关键点检测模型,得到关键点检测模型。
下面参考图5,其示出了适于用来实现本申请实施例的电子设备的计算机系统500的结构示意图。图5示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图5所示,计算机系统500包括中央处理单元(CPU和/或GPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储 部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有系统500操作所需的各种程序和数据。中央处理单元501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括硬盘等的存储部分506;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分507。通信部分507经由诸如因特网的网络执行通信处理。驱动器508也根据需要连接至I/O接口505。可拆卸介质509,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器508上,以便于从其上读出的计算机程序根据需要被安装入存储部分506。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分507从网络上被下载和安装,和/或从可拆卸介质509被安装。在该计算机程序被中央处理单元(CPU和/或GPU)501执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限 于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括获取单元、提取单元和确定单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,获取单元还可以被描述为“获取包含手势的图像的手势边框的单元”。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的装置中所包含的;也可以是单独存在,而未装配入该装置中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该装置执行时,使得该装置:获取包含手势的图像的手势边框,其中,手势边框用于指示图像所包含手势的位置;从图像中,提取手势边框所指示的包含手势的局部图像;将局部图像输入关键点检测模型,以确定图像所包含手势的手指尖的 关键点信息,其中,关键点信息包括手指尖位置信息。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (12)

  1. 一种图像处理方法,包括:
    获取包含手势的图像的手势边框,其中,所述手势边框用于指示图像所包含手势的位置;
    从所述图像中,提取所述手势边框所指示的包含手势的局部图像;
    将所述局部图像输入关键点检测模型,以确定所述图像所包含手势的手指尖的关键点信息,其中,所述关键点信息包括手指尖位置信息。
  2. 根据权利要求1所述的方法,其中,所述关键点信息还包括:对于手势的每一个手指尖,指示该手指尖是否可见的手指尖可见信息。
  3. 根据权利要求1所述的方法,其中,所述获取包含手势的图像的手势边框,包括:
    对所述图像进行手势检测,以确定指示所述图像所包含手势的位置的手势边框。
  4. 根据权利要求1所述的方法,其中,所述关键点检测模型为卷积神经网络。
  5. 根据权利要求2所述的方法,其中,所述关键点检测模型通过以下步骤训练得到:
    获取训练样本集,其中,所述训练样本集中的样本包括包含手势的局部图像,以及与各个局部图像所包含的手势的手指尖位置信息和手指尖可见信息;
    将局部图像作为输入,将该局部图像所包含手势的手指尖位置信息和手指尖可见信息作为输出,训练初始关键点检测模型,得到所述关键点检测模型。
  6. 一种图像处理装置,包括:
    获取单元,被配置成获取包含手势的图像的手势边框,其中,所述手势边框用于指示图像所包含手势的位置;
    提取单元,被配置成从所述图像中,提取所述手势边框所指示的包含手势的局部图像;
    确定单元,被配置成将所述局部图像输入关键点检测模型,以确定所述图像所包含手势的手指尖的关键点信息,其中,所述关键点信息包括手指尖位置信息。
  7. 根据权利要求6所述的装置,其中,所述关键点信息还包括:对于手势的每一个手指尖,指示该手指尖是否可见的手指尖可见信息。
  8. 根据权利要求6所述的装置,其中,所述获取单元进一步被配置成:
    对所述图像进行手势检测,以确定指示所述图像所包含手势的位置的手势边框。
  9. 根据权利要求6所述的装置,其中,所述关键点检测模型为卷积神经网络。
  10. 根据权利要求7所述的装置,其中,所述关键点检测模型通过以下步骤训练得到:
    获取训练样本集,其中,所述训练样本集中的样本包括包含手势的局部图像,以及与各个局部图像所包含的手势的手指尖位置信息和手指尖可见信息;
    将局部图像作为输入,将该局部图像所包含手势的手指尖位置信息和手指尖可见信息作为输出,训练初始关键点检测模型,得到所述关键点检测模型。
  11. 一种电子设备,包括:
    一个或多个处理器;
    存储装置,用于存储一个或多个程序,
    当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一所述的方法。
  12. 一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1-5中任一所述的方法。
PCT/CN2018/116340 2018-08-07 2018-11-20 图像处理方法和装置 WO2020029466A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810888877.7 2018-08-07
CN201810888877.7A CN109063653A (zh) 2018-08-07 2018-08-07 图像处理方法和装置

Publications (1)

Publication Number Publication Date
WO2020029466A1 true WO2020029466A1 (zh) 2020-02-13

Family

ID=64832058

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/116340 WO2020029466A1 (zh) 2018-08-07 2018-11-20 图像处理方法和装置

Country Status (2)

Country Link
CN (1) CN109063653A (zh)
WO (1) WO2020029466A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112183388A (zh) * 2020-09-30 2021-01-05 北京字节跳动网络技术有限公司 图像处理方法、装置、设备和介质
CN112949437A (zh) * 2021-02-21 2021-06-11 深圳市优必选科技股份有限公司 一种手势识别方法、手势识别装置及智能设备
CN115134506A (zh) * 2021-03-26 2022-09-30 阿里巴巴新加坡控股有限公司 摄像画面调整方法、视频画面处理方法以及装置和系统

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111382624B (zh) * 2018-12-28 2023-08-11 杭州海康威视数字技术股份有限公司 动作识别方法、装置、设备及可读存储介质
CN111460858B (zh) * 2019-01-21 2024-04-12 杭州易现先进科技有限公司 图像中指尖点的确定方法、装置、存储介质及电子设备
CN110070063B (zh) * 2019-04-29 2020-06-30 北京字节跳动网络技术有限公司 目标对象的动作识别方法、装置和电子设备
CN110287891B (zh) * 2019-06-26 2021-11-09 北京字节跳动网络技术有限公司 基于人体关键点的手势控制方法、装置及电子设备
CN112262393A (zh) * 2019-12-23 2021-01-22 商汤国际私人有限公司 手势识别方法和装置、电子设备及存储介质
CN113792651B (zh) * 2021-09-13 2024-04-05 广州广电运通金融电子股份有限公司 一种融合手势识别和指尖定位的手势交互方法、设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105718879A (zh) * 2016-01-19 2016-06-29 华南理工大学 基于深度卷积神经网络的自由场景第一视角手指关键点检测方法
US20170097687A1 (en) * 2012-07-13 2017-04-06 Softkinetic Software Method and system for human-to-computer gesture based simultaneous interactions using singular points of interest on a hand
CN108230383A (zh) * 2017-03-29 2018-06-29 北京市商汤科技开发有限公司 手部三维数据确定方法、装置及电子设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170097687A1 (en) * 2012-07-13 2017-04-06 Softkinetic Software Method and system for human-to-computer gesture based simultaneous interactions using singular points of interest on a hand
CN105718879A (zh) * 2016-01-19 2016-06-29 华南理工大学 基于深度卷积神经网络的自由场景第一视角手指关键点检测方法
CN108230383A (zh) * 2017-03-29 2018-06-29 北京市商汤科技开发有限公司 手部三维数据确定方法、装置及电子设备

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112183388A (zh) * 2020-09-30 2021-01-05 北京字节跳动网络技术有限公司 图像处理方法、装置、设备和介质
CN112949437A (zh) * 2021-02-21 2021-06-11 深圳市优必选科技股份有限公司 一种手势识别方法、手势识别装置及智能设备
CN115134506A (zh) * 2021-03-26 2022-09-30 阿里巴巴新加坡控股有限公司 摄像画面调整方法、视频画面处理方法以及装置和系统

Also Published As

Publication number Publication date
CN109063653A (zh) 2018-12-21

Similar Documents

Publication Publication Date Title
WO2020029466A1 (zh) 图像处理方法和装置
US9619735B1 (en) Pure convolutional neural network localization
CN109034069B (zh) 用于生成信息的方法和装置
RU2702270C2 (ru) Обнаружение выбора рукописного фрагмента
US11436863B2 (en) Method and apparatus for outputting data
WO2020062493A1 (zh) 图像处理方法和装置
CN109345553B (zh) 一种手掌及其关键点检测方法、装置和终端设备
US11042259B2 (en) Visual hierarchy design governed user interface modification via augmented reality
US20210281744A1 (en) Action recognition method and device for target object, and electronic apparatus
WO2020056902A1 (zh) 用于处理嘴部图像的方法和装置
EP3175375A1 (en) Image based search to identify objects in documents
CN109583389B (zh) 绘本识别方法及装置
CN108960206B (zh) 视频帧处理方法和装置
US20210200971A1 (en) Image processing method and apparatus
WO2020034981A1 (zh) 编码信息的生成方法和识别方法
WO2020056901A1 (zh) 用于处理图像的方法和装置
US20190227634A1 (en) Contextual gesture-based image searching
CN109829431B (zh) 用于生成信息的方法和装置
EP3885934A1 (en) Video search method and apparatus, computer device, and storage medium
US10631050B2 (en) Determining and correlating visual context on a user device with user behavior using digital content on the user device
CN111552829A (zh) 用于分析图像素材的方法和装置
WO2023065895A1 (zh) 文本识别方法、装置、可读介质及电子设备
WO2022194130A1 (zh) 字符位置修正方法、装置、电子设备和存储介质
CN111428536A (zh) 用于检测物品类别和位置的检测网络的训练方法和装置
WO2022105120A1 (zh) 图片文字检测方法、装置、计算机设备及存储介质

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS (EPO FORM 1205A DATED 19.05.2021)

122 Ep: pct application non-entry in european phase

Ref document number: 18929559

Country of ref document: EP

Kind code of ref document: A1