WO2019169965A1 - Code-scanning image recognition method, apparatus and device - Google Patents

Code-scanning image recognition method, apparatus and device Download PDF

Info

Publication number
WO2019169965A1
WO2019169965A1 PCT/CN2019/072772 CN2019072772W WO2019169965A1 WO 2019169965 A1 WO2019169965 A1 WO 2019169965A1 CN 2019072772 W CN2019072772 W CN 2019072772W WO 2019169965 A1 WO2019169965 A1 WO 2019169965A1
Authority
WO
WIPO (PCT)
Prior art keywords
binarization
result
cpu
image frame
scan code
Prior art date
Application number
PCT/CN2019/072772
Other languages
French (fr)
Chinese (zh)
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 WO2019169965A1 publication Critical patent/WO2019169965A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14172D bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10821Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
    • G06K7/10851Circuits for pulse shaping, amplifying, eliminating noise signals, checking the function of the sensing device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10821Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
    • G06K7/1098Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices the scanning arrangement having a modular construction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/142Image acquisition using hand-held instruments; Constructional details of the instruments

Definitions

  • the present specification relates to the field of computer software technologies, and in particular, to a method, device and device for scanning code image recognition.
  • the smart phone often recognizes the two-dimensional code by scanning, obtains the business information contained in the two-dimensional code, and then interacts with another device based on the service information, thereby implementing a specific service, such as a payment service, an instant communication service, and the like.
  • a specific service such as a payment service, an instant communication service, and the like.
  • the smart phone when scanning the two-dimensional code, uses the camera to align the two-dimensional code, continuously collects the scanned image frame, and the scanned image frame is scanned by the central processing unit (CPU) of the smart phone. Binarization processing is performed to identify until the information contained in the two-dimensional code is successfully identified.
  • CPU central processing unit
  • the embodiment of the present specification provides a method, a device and a device for scanning image recognition, which are used to solve the following technical problems: a more efficient scanning image recognition scheme is needed.
  • the binarization result is provided to the CPU to identify the binarization result by the CPU, and obtain a scan image recognition result.
  • a binarization module that performs binarization processing on the current scan code image frame by using a GPU to obtain a binarization result
  • the identification module provides the binarization result to the CPU to identify the binarization result by using the CPU to obtain a scan image recognition result.
  • At least one processor and,
  • the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to:
  • the binarization result is provided to the CPU to identify the binarization result by the CPU, and obtain a scan image recognition result.
  • the above at least one technical solution adopted by the embodiment of the present specification can achieve the following beneficial effects: when identifying a plurality of consecutive scan code image frames, the GPU replaces the CPU for binarization processing, and the CPU only needs to further identify the binarization result. Yes, these two processes can be executed in parallel, which is beneficial to improve the efficiency of scanning image recognition.
  • FIG. 1 is a schematic diagram of an overall architecture involved in an implementation scenario of the present specification
  • FIG. 2 is a schematic flow chart of a method for identifying a scan code image according to an embodiment of the present disclosure
  • FIG. 3 is a schematic diagram of an implementation principle of a scan code image recognition method according to an embodiment of the present disclosure
  • FIG. 4 is a schematic structural diagram of a scan code image recognition apparatus corresponding to FIG. 2 according to an embodiment of the present disclosure
  • FIG. 5 is a schematic structural diagram of a scan code image recognition device corresponding to FIG. 2 according to an embodiment of the present disclosure.
  • the embodiments of the present specification provide a method, an apparatus, and a device for scanning code image recognition.
  • FIG. 1 is a schematic diagram of an overall architecture involved in an implementation scenario of the present specification.
  • the overall architecture mainly involves a camera, a GPU, and a CPU on a user terminal device.
  • User terminal equipment for example, includes a smart phone, a tablet computer, a merchant cash register, a point of sale (POS) machine, and the like.
  • the camera is used to continuously collect scan code image frames when the user scans the code
  • the GPU is used for binarizing the scan code image frames
  • the CPU is used to identify the binarization results, thereby realizing the scan code image recognition.
  • FIG. 2 is a schematic flowchart of a method for identifying a scanned image according to an embodiment of the present disclosure. The flow may also be performed based on a simple operation trigger of the user (such as clicking a “sweep” button), or if necessary, It may also be performed automatically at the right time.
  • a simple operation trigger of the user such as clicking a “sweep” button
  • the execution body of the process may be a user terminal device. From a program perspective, the execution body of the process may be a program installed in the above device, and the program may be in the form of a client, a webpage, or a server.
  • the process in Figure 2 can include the following steps:
  • scanning code mainly refers to scanning a two-dimensional code.
  • DOI Digital Object Unique Identifier
  • barcode a Uniform Resource Locator (URL), etc.
  • URL Uniform Resource Locator
  • the scan image frame is continuously collected by the camera on the smart phone, and the smart phone is generally operated by the user, and the focus condition and the alignment situation may change at any time during the scanning process.
  • the scanned image frames continuously collected are usually different.
  • the information contained in the code may be successfully identified from some scanned image frames, and the code may not be successfully identified from other scanned image frames.
  • Information contained It is possible to sequentially identify each of the acquired scan image frames, and after successfully identifying the information contained in the code, stop the subsequent recognition process.
  • S204 Perform a binarization process on the current scan code image frame by using a GPU to obtain a binarization result.
  • the GPU is used for the CPU to share the work, and the scan code image frame to be recognized by the GPU is binarized, so that the CPU does not need to perform binarization processing, and the CPU is responsible for identifying the binarization result, thereby reducing The burden of the CPU.
  • the entire scan image recognition process is only a serial operation process, and the GPU performs the scan image frame on the second.
  • the value processing process is further successfully recognized by the CPU for the binarization result of the scanned image frame.
  • the entire scan image recognition process is a serial work plus parallel work process, serial finger to each
  • the processing process of the scan code image frames is serial
  • the parallel process means that the following two processes can be parallel: the process of using the CPU to identify the binarization result of a scan code image frame, and using the GPU binarization process The process of scanning a coded image frame behind a coded image frame.
  • the scan image recognition result is generally a character string included in the code, and the character string indicates, for example, a payment account, a jump URL, a business card, and the like.
  • the GPU replaces the CPU for binarization processing, and the CPU only needs to further identify the binarization result, and the two processes can be executed in parallel. It is beneficial to improve the efficiency of scanning image recognition, and it is also beneficial to reduce the burden on the CPU.
  • the embodiments of the present specification further provide some specific implementations of the method, and an extended solution, which will be described below.
  • the work of the GPU and the CPU may be performed based on different threads or different processes without affecting each other.
  • the GPU is used to perform binarization processing on the current scan code image frame, which may include: the first thread uses the GPU to perform binarization processing on the current scan code image frame.
  • the identifying, by the CPU, the binarization result may include: the second thread using the CPU to identify the binarization result.
  • the first thread and the second thread are different threads.
  • the current one scan image frame may not be successfully identified. Therefore, after the binarization result is provided to the CPU, the step may be utilized.
  • the GPU continues to binarize the next scanned image frame.
  • the GPU's continuation process does not need to wait for the CPU to process the binarization result, and the process of using the CPU to identify the binarization result and the process of using the GPU binarization process to scan the coded image frame can be performed in parallel.
  • the specific implementation scheme of providing the binarization result to the CPU is diverse. For example, after the CPU obtains the binarization result, and sends a corresponding notification (for example, to a function module that uses the CPU to identify the binarization result, the function module is referred to herein as a CPU identification module) so that the CPU identification module obtains the The result of the binarization in the result pool, or the binarization result may be sent to the CPU identification module actively, or the CPU identification module may not actively and only passively acquire the binarization result. After the CPU identification module obtains the binarization result, it can be provided to the CPU for use.
  • a corresponding notification for example, to a function module that uses the CPU to identify the binarization result, the function module is referred to herein as a CPU identification module
  • the GPU may perform binarization processing on multiple scan code image frames, and accordingly, multiple binarization results are obtained.
  • these binarization results can be uniformly saved.
  • a result pool can be established for storing the binarization results for use by the CPU, and the result pool is not limited in position, such as in memory or cache.
  • the volatile memory it can also be in a non-volatile memory such as a hard disk or a flash memory.
  • the providing the binarization result to the CPU may include: saving the binarization result in a result pool, and sending a corresponding notification for the CPU to obtain the location in the result pool.
  • the binarization result is described. Further, if the CPU fails to identify the binarization result, the CPU may be used to obtain the next binarization result from the result pool for identification until the recognition is successful.
  • each scan code image frame is continuously binarized by the GPU, and the obtained binarization results are saved in the result pool, when there is a new binarization result in the binarization result pool.
  • the CPU identification module uses the CPU to identify the binarization result, and if the recognition is successful, the result is returned, and if the recognition fails, the next binarization result is obtained from the result pool to continue to identify Until the recognition is successful.
  • the embodiment of the present specification further provides a device and a device corresponding to the foregoing method, as shown in FIG. 4 and FIG. 5.
  • FIG. 4 is a schematic structural diagram of a scan code image recognition apparatus corresponding to FIG. 2 according to an embodiment of the present disclosure, where the apparatus includes:
  • Obtaining module 401 acquiring a current scan code image frame
  • the binarization module 402 performs binarization processing on the current scan code image frame by using a GPU to obtain a binarization result
  • the identification module 403 provides the binarization result to the CPU to identify the binarization result by the CPU to obtain a scan image recognition result.
  • the binarization module 402 performs a binarization process on the current scan code image frame by using a GPU, and specifically includes:
  • the binarization module 402 performs binarization processing on the current scan code image frame by using a GPU through a first thread
  • the identification module 403 uses the CPU to identify the binarization result, and specifically includes:
  • the identification module 403 identifies the binarization result by using the CPU by using a second thread, where the first thread and the second thread are different threads.
  • the binarization module 402 performs binarization processing on the next scan image frame by using the GPU, where The process of the CPU identifying the binarization result and the process of scanning the coded image frame by the GPU binarization process can be performed in parallel.
  • the identifying module 403 provides the binarization result to the CPU, and specifically includes:
  • the identification module 403 saves the binarization result in the result pool, and sends a corresponding notification for the CPU to obtain the binarization result in the result pool.
  • the identifying module 403 uses the CPU to acquire the next binarization result from the result pool for identification.
  • the scan code comprises scanning a two-dimensional code.
  • FIG. 5 is a schematic structural diagram of a scan code image recognition device corresponding to FIG. 2 according to an embodiment of the present disclosure, where the device includes:
  • At least one processor and,
  • the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to:
  • the binarization result is provided to the CPU to identify the binarization result by the CPU, and obtain a scan image recognition result.
  • the embodiment of the present specification further provides a non-volatile computer storage medium corresponding to FIG. 2, which stores computer executable instructions, and the computer executable instructions are set as:
  • the binarization result is provided to the CPU to identify the binarization result by the CPU, and obtain a scan image recognition result.
  • the device, the device, the non-volatile computer storage medium and the method provided by the embodiments of the present specification are corresponding, and therefore, the device, the device, and the non-volatile computer storage medium also have similar beneficial technical effects as the corresponding method, since The beneficial technical effects of the method are described in detail, and therefore, the beneficial technical effects of the corresponding device, device, and non-volatile computer storage medium are not described herein.
  • PLD Programmable Logic Device
  • FPGA Field Programmable Gate Array
  • HDL Hardware Description Language
  • the controller can be implemented in any suitable manner, for example, the controller can take the form of, for example, a microprocessor or processor and a computer readable medium storing computer readable program code (eg, software or firmware) executable by the (micro)processor.
  • computer readable program code eg, software or firmware
  • examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, The Microchip PIC18F26K20 and the Silicone Labs C8051F320, the memory controller can also be implemented as part of the memory's control logic.
  • the controller can be logically programmed by means of logic gates, switches, ASICs, programmable logic controllers, and embedding.
  • Such a controller can therefore be considered a hardware component, and the means for implementing various functions included therein can also be considered as a structure within the hardware component.
  • a device for implementing various functions can be considered as a software module that can be both a method of implementation and a structure within a hardware component.
  • the system, device, module or unit illustrated in the above embodiments may be implemented by a computer chip or an entity, or by a product having a certain function.
  • a typical implementation device is a computer.
  • the computer can be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or A combination of any of these devices.
  • embodiments of the specification can be provided as a method, system, or computer program product.
  • embodiments of the present specification can take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware.
  • embodiments of the present specification can take the form of a computer program product embodied on one or more computer usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
  • a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
  • processors CPUs
  • input/output interfaces network interfaces
  • memory volatile and non-volatile memory
  • the memory may include non-persistent memory, random access memory (RAM), and/or non-volatile memory in a computer readable medium, such as read only memory (ROM) or flash memory.
  • RAM random access memory
  • ROM read only memory
  • Memory is an example of a computer readable medium.
  • Computer readable media includes both permanent and non-persistent, removable and non-removable media.
  • Information storage can be implemented by any method or technology.
  • the information can be computer readable instructions, data structures, modules of programs, or other data.
  • Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory. (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other memory technology, compact disk read only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, Magnetic tape cartridges, magnetic tape storage or other magnetic storage devices or any other non-transportable media can be used to store information that can be accessed by a computing device.
  • computer readable media does not include temporary storage of computer readable media, such as modulated data signals and carrier waves.
  • embodiments of the present description can be provided as a method, system, or computer program product. Accordingly, the present description may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment in combination of software and hardware. Moreover, the description may take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • program modules include routines, programs, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types.
  • the present specification can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are connected through a communication network.
  • program modules can be located in both local and remote computer storage media including storage devices.

Abstract

A code-scanning image recognition method, apparatus and device. The method comprises: when a code-scanning image is recognized, a GPU performing binarization processing on a current code-scanning image frame, then providing a binarization result to a CPU, and then continuously processing a next code-scanning image frame, meanwhile, the CPU is capable of recognizing the binarization result, and if the recognition fails, recognizing the next binarization result until the recognition succeeds.

Description

一种扫码图像识别方法、装置以及设备Scan code image recognition method, device and device
相关申请的交叉引用Cross-reference to related applications
本专利申请要求于2018年3月7日提交的、申请号为201810186076.6、发明名称为“一种扫码图像识别方法、装置以及设备”的中国专利申请的优先权,该申请的全文以引用的方式并入本文中。The present application claims priority to Chinese Patent Application No. 201101186076.6, entitled "A Scanning Image Recognition Method, Apparatus, and Apparatus", filed on March 7, 2018, the entire disclosure of which is incorporated by reference. The manner is incorporated herein.
技术领域Technical field
本说明书涉及计算机软件技术领域,尤其涉及一种扫码图像识别方法、装置以及设备。The present specification relates to the field of computer software technologies, and in particular, to a method, device and device for scanning code image recognition.
背景技术Background technique
智能手机的使用普及给人们的生活带来了便利,通过使用智能手机上的各种应用,能够相应地进行各种业务。The popularity of smartphones has brought convenience to people's lives, and various services can be performed accordingly by using various applications on smartphones.
智能手机常常会通过扫描识别二维码,获取到二维码包含的业务信息,进而基于该业务信息与另一设备进行交互,从而实现特定的业务,比如,支付业务、即时通讯业务等。The smart phone often recognizes the two-dimensional code by scanning, obtains the business information contained in the two-dimensional code, and then interacts with another device based on the service information, thereby implementing a specific service, such as a payment service, an instant communication service, and the like.
在现有技术中,在扫描二维码时,智能手机利用摄像头对准二维码,连续采集扫码图像帧,由智能手机的中央处理器(Central Processing Unit,CPU)对各扫码图像帧进行二值化处理进而识别,直至成功识别出二维码包含的信息。In the prior art, when scanning the two-dimensional code, the smart phone uses the camera to align the two-dimensional code, continuously collects the scanned image frame, and the scanned image frame is scanned by the central processing unit (CPU) of the smart phone. Binarization processing is performed to identify until the information contained in the two-dimensional code is successfully identified.
基于现有技术,需要更高效的扫码图像识别方案。Based on the prior art, a more efficient scan code recognition scheme is needed.
发明内容Summary of the invention
本说明书实施例提供一种扫码图像识别方法、装置以及设备,用以解决如下技术问题:需要更高效的扫码图像识别方案。The embodiment of the present specification provides a method, a device and a device for scanning image recognition, which are used to solve the following technical problems: a more efficient scanning image recognition scheme is needed.
为解决上述技术问题,本说明书实施例是这样实现的:In order to solve the above technical problem, the embodiment of the present specification is implemented as follows:
本说明书实施例提供的一种扫码图像识别方法,包括:A scanning image recognition method provided by an embodiment of the present specification includes:
获取当前的扫码图像帧;Obtain the current scan code image frame;
利用图形处理器(Graphics Processing Unit,GPU),对所述当前的扫码图像帧进行二值化处理,得到二值化结果;Performing a binarization process on the current scan code image frame by using a graphics processing unit (GPU) to obtain a binarization result;
将所述二值化结果提供给CPU,以便利用所述CPU识别所述二值化结果,得到扫码图像识别结果。The binarization result is provided to the CPU to identify the binarization result by the CPU, and obtain a scan image recognition result.
本说明书实施例提供的一种扫码图像识别装置,包括:A scanning image recognition device provided by an embodiment of the present specification includes:
获取模块,获取当前的扫码图像帧;Obtaining a module to obtain a current scan image frame;
二值化模块,利用GPU,对所述当前的扫码图像帧进行二值化处理,得到二值化结果;a binarization module that performs binarization processing on the current scan code image frame by using a GPU to obtain a binarization result;
识别模块,将所述二值化结果提供给CPU,以便利用所述CPU识别所述二值化结果,得到扫码图像识别结果。The identification module provides the binarization result to the CPU to identify the binarization result by using the CPU to obtain a scan image recognition result.
本说明书实施例提供的一种扫码图像识别设备,包括:A scanning image recognition device provided by an embodiment of the present specification includes:
至少一个处理器;以及,At least one processor; and,
与所述至少一个处理器通信连接的存储器;其中,a memory communicatively coupled to the at least one processor; wherein
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:The memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to:
获取当前的扫码图像帧;Obtain the current scan code image frame;
利用GPU,对所述当前的扫码图像帧进行二值化处理,得到二值化结果;Using the GPU, performing binarization processing on the current scan code image frame to obtain a binarization result;
将所述二值化结果提供给CPU,以便利用所述CPU识别所述二值化结果,得到扫码图像识别结果。The binarization result is provided to the CPU to identify the binarization result by the CPU, and obtain a scan image recognition result.
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:在识别连续的多个扫码图像帧时,由GPU代替CPU进行二值化处理,CPU只需进一步地识别二值化结果即可,这两个过程能够并行执行,有利于提高扫码图像识别效率。The above at least one technical solution adopted by the embodiment of the present specification can achieve the following beneficial effects: when identifying a plurality of consecutive scan code image frames, the GPU replaces the CPU for binarization processing, and the CPU only needs to further identify the binarization result. Yes, these two processes can be executed in parallel, which is beneficial to improve the efficiency of scanning image recognition.
附图说明DRAWINGS
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动 的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the embodiments of the present specification or the technical solutions in the prior art, the drawings to be used in the embodiments or the description of the prior art will be briefly described below. Obviously, the drawings in the following description are only It is a few embodiments described in the present specification, and other drawings can be obtained from those skilled in the art without any creative work.
图1为本说明书的方案在一种实际应用场景下涉及的一种整体架构示意图;FIG. 1 is a schematic diagram of an overall architecture involved in an implementation scenario of the present specification;
图2为本说明书实施例提供的一种扫码图像识别方法的流程示意图;2 is a schematic flow chart of a method for identifying a scan code image according to an embodiment of the present disclosure;
图3为本说明书实施例提供的扫码图像识别方法在一种实际应用场景下的实施原理示意图;FIG. 3 is a schematic diagram of an implementation principle of a scan code image recognition method according to an embodiment of the present disclosure;
图4为本说明书实施例提供的对应于图2的一种扫码图像识别装置的结构示意图;FIG. 4 is a schematic structural diagram of a scan code image recognition apparatus corresponding to FIG. 2 according to an embodiment of the present disclosure; FIG.
图5为本说明书实施例提供的对应于图2的一种扫码图像识别设备的结构示意图。FIG. 5 is a schematic structural diagram of a scan code image recognition device corresponding to FIG. 2 according to an embodiment of the present disclosure.
具体实施方式Detailed ways
本说明书实施例提供一种扫码图像识别方法、装置以及设备。The embodiments of the present specification provide a method, an apparatus, and a device for scanning code image recognition.
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。In order to make those skilled in the art better understand the technical solutions in the present specification, the technical solutions in the embodiments of the present specification will be clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the specification. The embodiments are only a part of the embodiments of the present application, and not all of them. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present specification without departing from the inventive scope shall fall within the scope of the application.
图1为本说明书的方案在一种实际应用场景下涉及的一种整体架构示意图。该整体架构中,主要涉及用户终端设备上的摄像头、GPU和CPU。用户终端设备,比如包括智能手机、平板电脑、商户收银机、销售终端(Point Of Sale,POS)机等。摄像头用于在用户扫码时连续采集扫码图像帧,GPU用于对扫码图像帧进行二值化处理,CPU用于对二值化结果进行识别,从而实现扫码图像识别。FIG. 1 is a schematic diagram of an overall architecture involved in an implementation scenario of the present specification. The overall architecture mainly involves a camera, a GPU, and a CPU on a user terminal device. User terminal equipment, for example, includes a smart phone, a tablet computer, a merchant cash register, a point of sale (POS) machine, and the like. The camera is used to continuously collect scan code image frames when the user scans the code, and the GPU is used for binarizing the scan code image frames, and the CPU is used to identify the binarization results, thereby realizing the scan code image recognition.
下面主要基于图1的示例性架构,对本说明书的方案进行说明。The scheme of the present specification will be described below mainly based on the exemplary architecture of FIG.
图2为本说明书实施例提供的一种扫码图像识别方法的流程示意图,该流程也可以基于用户简单的操作触发(如点击“扫一扫”按钮等)而执行,或者,若有需求,也可能适时地自动执行。FIG. 2 is a schematic flowchart of a method for identifying a scanned image according to an embodiment of the present disclosure. The flow may also be performed based on a simple operation trigger of the user (such as clicking a “sweep” button), or if necessary, It may also be performed automatically at the right time.
从设备角度而言,该流程的执行主体可以为用户终端设备。从程序角度而言,该流程的执行主体可以为上述设备中安装的程序,该程序的形式可以是客户端、网页端或者服务端等。From the perspective of the device, the execution body of the process may be a user terminal device. From a program perspective, the execution body of the process may be a program installed in the above device, and the program may be in the form of a client, a webpage, or a server.
图2中的流程可以包括以下步骤:The process in Figure 2 can include the following steps:
S202:获取当前的扫码图像帧。S202: Acquire a current scan code image frame.
在本说明书实施例中,对于背景技术的场景,扫码主要指扫描二维码。当然,除了二维码以外,还可能采用诸如条码、统一资源定位符(Uniform Resource Locator,URL)等其他可能通过扫描识别的数字对象唯一标识符(Digital Object Unique Identifier,DOI),则扫码具体指扫描相应的DOI。In the embodiment of the present specification, for the scene of the background art, scanning code mainly refers to scanning a two-dimensional code. Of course, in addition to the two-dimensional code, it is also possible to use a Digital Object Unique Identifier (DOI) such as a barcode, a Uniform Resource Locator (URL), etc., which may be identified by scanning. Refers to scanning the corresponding DOI.
在本说明书实施例中,比如,由智能手机上的摄像头连续地采集扫码图像帧,智能手机一般由用户手持操作,则在扫码过程中,对焦情况和对准情况都可能随时变化,因此,连续采集的各扫码图像帧通常有所区别,从一些扫码图像帧中可能能够成功地识别出码中包含的信息,而从另一些扫码图像帧中未必能够成功地识别出码中包含的信息。可以依次尝试识别采集到的各扫码图像帧,在成功地识别出码中包含的信息后,停止后续识别过程。In the embodiment of the present specification, for example, the scan image frame is continuously collected by the camera on the smart phone, and the smart phone is generally operated by the user, and the focus condition and the alignment situation may change at any time during the scanning process. The scanned image frames continuously collected are usually different. The information contained in the code may be successfully identified from some scanned image frames, and the code may not be successfully identified from other scanned image frames. Information contained. It is possible to sequentially identify each of the acquired scan image frames, and after successfully identifying the information contained in the code, stop the subsequent recognition process.
S204:利用GPU,对所述当前的扫码图像帧进行二值化处理,得到二值化结果。S204: Perform a binarization process on the current scan code image frame by using a GPU to obtain a binarization result.
在本说明书实施例中,利用GPU为CPU分担工作,由GPU对待识别的扫码图像帧进行二值化处理,则无需CPU进行二值化处理,CPU负责识别二值化结果即可,从而减轻了CPU的负担。In the embodiment of the present specification, the GPU is used for the CPU to share the work, and the scan code image frame to be recognized by the GPU is binarized, so that the CPU does not need to perform binarization processing, and the CPU is responsible for identifying the binarization result, thereby reducing The burden of the CPU.
S206:将所述二值化结果提供给CPU,以便利用所述CPU识别所述二值化结果,得到扫码图像识别结果。S206: The binarization result is provided to the CPU, so that the binarization result is recognized by the CPU, and the scan code image recognition result is obtained.
在本说明书实施例中,假定只用一个扫码图像帧即成功地识别出码包含的信息,则整个扫码图像识别过程只是一个串行工作的过程,由GPU对该扫码图像帧进行二值化处理,再由CPU对该扫码图像帧的二值化结果成功识别。In the embodiment of the present specification, assuming that only one scan image frame is used to successfully identify the information contained in the code, the entire scan image recognition process is only a serial operation process, and the GPU performs the scan image frame on the second. The value processing process is further successfully recognized by the CPU for the binarization result of the scanned image frame.
而若用多个扫码图像帧才成功地识别出码包含的信息,由于GPU与CPU能够并行工作,则整个扫码图像识别过程是一个串行工作加并行工作的过程,串行指对每个扫码图像帧分别处理过程是串行的,并行是指以下两个过程可以是并行地:利用CPU识别某个扫码图像帧的二值化结果的过程,与利用GPU二值化处理该扫码图像帧后面的扫码图像帧的过程。However, if multiple scan image frames are used to successfully identify the information contained in the code, since the GPU and the CPU can work in parallel, the entire scan image recognition process is a serial work plus parallel work process, serial finger to each The processing process of the scan code image frames is serial, and the parallel process means that the following two processes can be parallel: the process of using the CPU to identify the binarization result of a scan code image frame, and using the GPU binarization process The process of scanning a coded image frame behind a coded image frame.
在本说明书实施例中,扫码图像识别结果一般是码中包含的字符串,该字符串比如表示:付款账户、跳转网址、名片等信息。In the embodiment of the present specification, the scan image recognition result is generally a character string included in the code, and the character string indicates, for example, a payment account, a jump URL, a business card, and the like.
通过图2的方法,在识别连续的多个扫码图像帧时,由GPU代替CPU进行二值化处理,CPU只需进一步地识别二值化结果即可,这两个过程能够并行执行,有利于提高 扫码图像识别效率,而且也有利于减轻CPU的负担。Through the method of FIG. 2, when identifying a plurality of consecutive scan image frames, the GPU replaces the CPU for binarization processing, and the CPU only needs to further identify the binarization result, and the two processes can be executed in parallel. It is beneficial to improve the efficiency of scanning image recognition, and it is also beneficial to reduce the burden on the CPU.
基于图2的方法,本说明书实施例还提供了该方法的一些具体实施方案,以及扩展方案,下面进行说明。Based on the method of FIG. 2, the embodiments of the present specification further provide some specific implementations of the method, and an extended solution, which will be described below.
在本说明书实施例中,为了实现扫码图片识别过程中GPU与CPU并行工作,GPU与CPU分别的工作可以基于不同的线程或者不同的进程执行,互不影响。In the embodiment of the present specification, in order to realize parallel operation of the GPU and the CPU in the process of scanning the image recognition, the work of the GPU and the CPU may be performed based on different threads or different processes without affecting each other.
例如,对于步骤S204,所述利用GPU,对所述当前的扫码图像帧进行二值化处理,具体可以包括:第一线程利用GPU,对所述当前的扫码图像帧进行二值化处理。对于步骤S206,所述利用所述CPU识别所述二值化结果,具体可以包括:第二线程利用所述CPU识别所述二值化结果。其中,所述第一线程与所述第二线程是不同的线程。For example, in step S204, the GPU is used to perform binarization processing on the current scan code image frame, which may include: the first thread uses the GPU to perform binarization processing on the current scan code image frame. . For the step S206, the identifying, by the CPU, the binarization result may include: the second thread using the CPU to identify the binarization result. The first thread and the second thread are different threads.
在本说明书实施例中,根据前面的说明,单凭当前的一个扫码图像帧,未必能够成功识别,因此,对于步骤S206,所述将所述二值化结果提供给CPU后,还可以利用GPU,继续对下一个扫码图像帧进行二值化处理。当然,GPU的继续处理过程无需等待CPU对二值化结果的处理,利用CPU识别二值化结果的过程与利用GPU二值化处理扫码图像帧的过程能够并行执行。In the embodiment of the present specification, according to the foregoing description, the current one scan image frame may not be successfully identified. Therefore, after the binarization result is provided to the CPU, the step may be utilized. The GPU continues to binarize the next scanned image frame. Of course, the GPU's continuation process does not need to wait for the CPU to process the binarization result, and the process of using the CPU to identify the binarization result and the process of using the GPU binarization process to scan the coded image frame can be performed in parallel.
在本说明书实施例中,对于步骤S206,所述将所述二值化结果提供给CPU的具体实现方案是多样的。比如,在利用CPU得到二值化结果后,并发送相应通知(比如,发送给利用CPU识别二值化结果的功能模块,这里将该功能模块称为CPU识别模块)以便CPU识别模块得到所述结果池中的所述二值化结果,或者,也可以主动将该二值化结果发送给CPU识别模块,或者,自己不主动而只是被动地等CPU识别模块获取该二值化结果。CPU识别模块得到该二值化结果后即可提供给CPU使用。In the embodiment of the present specification, for step S206, the specific implementation scheme of providing the binarization result to the CPU is diverse. For example, after the CPU obtains the binarization result, and sends a corresponding notification (for example, to a function module that uses the CPU to identify the binarization result, the function module is referred to herein as a CPU identification module) so that the CPU identification module obtains the The result of the binarization in the result pool, or the binarization result may be sent to the CPU identification module actively, or the CPU identification module may not actively and only passively acquire the binarization result. After the CPU identification module obtains the binarization result, it can be provided to the CPU for use.
在本说明书实施例中,GPU可能对多个扫码图像帧进行二值化处理,相应地,会得到多个二值化结果。为了便于CPU利用,可以将这些二值化结果统一保存,比如,可以建立一个结果池用于保存各二值化结果,以供CPU使用,结果池的位置不限,可以在诸如内存或者缓存等易失性存储器中,也可以在硬盘或者闪存等非易失性存储器中。In the embodiment of the present specification, the GPU may perform binarization processing on multiple scan code image frames, and accordingly, multiple binarization results are obtained. In order to facilitate the use of the CPU, these binarization results can be uniformly saved. For example, a result pool can be established for storing the binarization results for use by the CPU, and the result pool is not limited in position, such as in memory or cache. In the volatile memory, it can also be in a non-volatile memory such as a hard disk or a flash memory.
例如,对于步骤S206,所述将所述二值化结果提供给CPU,具体可以包括:将所述二值化结果保存于结果池中,并发送相应通知以便CPU得到所述结果池中的所述二值化结果。进一步地,若所述CPU识别所述二值化结果失败,则可以利用所述CPU,从所述结果池中获取下一个二值化结果进行识别,直至识别成功为止。For example, for the step S206, the providing the binarization result to the CPU may include: saving the binarization result in a result pool, and sending a corresponding notification for the CPU to obtain the location in the result pool. The binarization result is described. Further, if the CPU fails to identify the binarization result, the CPU may be used to obtain the next binarization result from the result pool for identification until the recognition is successful.
根据上面的说明,本说明书实施例还提供的上述扫码图像识别方法在一种实际应 用场景下的实施原理示意图,如图3所示。According to the above description, the implementation principle of the above-mentioned scan code image recognition method in an actual application scenario is also shown in FIG. 3 .
在图3中,利用GPU连续地二值化处理各扫码图像帧,并将得到的各二值化结果保存于结果池中,当二值化结果池中有新增的二值化结果时,通知CPU识别模块来取该二值化结果,进而CPU识别模块利用CPU识别该二值化结果,若识别成功则返回结果,若识别失败则从结果池中获取下一个二值化结果继续识别,直至识别成功为止。In FIG. 3, each scan code image frame is continuously binarized by the GPU, and the obtained binarization results are saved in the result pool, when there is a new binarization result in the binarization result pool. And notifying the CPU identification module to take the binarization result, and the CPU identification module uses the CPU to identify the binarization result, and if the recognition is successful, the result is returned, and if the recognition fails, the next binarization result is obtained from the result pool to continue to identify Until the recognition is successful.
基于同样的思路,本说明书实施例还提供了上述方法对应的装置和设备,参见如图4、图5所示。Based on the same idea, the embodiment of the present specification further provides a device and a device corresponding to the foregoing method, as shown in FIG. 4 and FIG. 5.
图4为本说明书实施例提供的对应于图2的一种扫码图像识别装置的结构示意图,所述装置包括:FIG. 4 is a schematic structural diagram of a scan code image recognition apparatus corresponding to FIG. 2 according to an embodiment of the present disclosure, where the apparatus includes:
获取模块401,获取当前的扫码图像帧;Obtaining module 401, acquiring a current scan code image frame;
二值化模块402,利用GPU,对所述当前的扫码图像帧进行二值化处理,得到二值化结果;The binarization module 402 performs binarization processing on the current scan code image frame by using a GPU to obtain a binarization result;
识别模块403,将所述二值化结果提供给CPU,以便利用所述CPU识别所述二值化结果,得到扫码图像识别结果。The identification module 403 provides the binarization result to the CPU to identify the binarization result by the CPU to obtain a scan image recognition result.
可选地,所述二值化模块402利用GPU,对所述当前的扫码图像帧进行二值化处理,具体包括:Optionally, the binarization module 402 performs a binarization process on the current scan code image frame by using a GPU, and specifically includes:
所述二值化模块402通过第一线程,利用GPU,对所述当前的扫码图像帧进行二值化处理;The binarization module 402 performs binarization processing on the current scan code image frame by using a GPU through a first thread;
所述识别模块403利用CPU识别所述二值化结果,具体包括:The identification module 403 uses the CPU to identify the binarization result, and specifically includes:
所述识别模块403通过第二线程,利用所述CPU识别所述二值化结果,其中,所述第一线程与所述第二线程是不同的线程。The identification module 403 identifies the binarization result by using the CPU by using a second thread, where the first thread and the second thread are different threads.
可选地,所述识别模块403将所述二值化结果提供给CPU后,所述二值化模块402利用所述GPU,对下一个扫码图像帧进行二值化处理,其中,利用所述CPU识别二值化结果的过程与利用所述GPU二值化处理扫码图像帧的过程能够并行执行。Optionally, after the identification module 403 provides the binarization result to the CPU, the binarization module 402 performs binarization processing on the next scan image frame by using the GPU, where The process of the CPU identifying the binarization result and the process of scanning the coded image frame by the GPU binarization process can be performed in parallel.
可选地,所述识别模块403将所述二值化结果提供给CPU,具体包括:Optionally, the identifying module 403 provides the binarization result to the CPU, and specifically includes:
所述识别模块403将所述二值化结果保存于结果池中,并发送相应通知以便CPU得到所述结果池中的所述二值化结果。The identification module 403 saves the binarization result in the result pool, and sends a corresponding notification for the CPU to obtain the binarization result in the result pool.
可选地,若利用所述CPU识别所述二值化结果失败,所述识别模块403利用所述CPU,从所述结果池中获取下一个二值化结果进行识别。Optionally, if the CPU fails to identify the binarization result, the identifying module 403 uses the CPU to acquire the next binarization result from the result pool for identification.
可选地,所述扫码包括扫描二维码。Optionally, the scan code comprises scanning a two-dimensional code.
图5为本说明书实施例提供的对应于图2的一种扫码图像识别设备的结构示意图,所述设备包括:FIG. 5 is a schematic structural diagram of a scan code image recognition device corresponding to FIG. 2 according to an embodiment of the present disclosure, where the device includes:
至少一个处理器;以及,At least one processor; and,
与所述至少一个处理器通信连接的存储器;其中,a memory communicatively coupled to the at least one processor; wherein
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:The memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to:
获取当前的扫码图像帧;Obtain the current scan code image frame;
利用GPU,对所述当前的扫码图像帧进行二值化处理,得到二值化结果;Using the GPU, performing binarization processing on the current scan code image frame to obtain a binarization result;
将所述二值化结果提供给CPU,以便利用所述CPU识别所述二值化结果,得到扫码图像识别结果。The binarization result is provided to the CPU to identify the binarization result by the CPU, and obtain a scan image recognition result.
基于同样的思路,本说明书实施例还提供了对应于图2的一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:Based on the same idea, the embodiment of the present specification further provides a non-volatile computer storage medium corresponding to FIG. 2, which stores computer executable instructions, and the computer executable instructions are set as:
获取当前的扫码图像帧;Obtain the current scan code image frame;
利用GPU,对所述当前的扫码图像帧进行二值化处理,得到二值化结果;Using the GPU, performing binarization processing on the current scan code image frame to obtain a binarization result;
将所述二值化结果提供给CPU,以便利用所述CPU识别所述二值化结果,得到扫码图像识别结果。The binarization result is provided to the CPU to identify the binarization result by the CPU, and obtain a scan image recognition result.
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。The foregoing description of the specific embodiments of the specification has been described. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims can be performed in a different order than the embodiments and still achieve the desired results. In addition, the processes depicted in the figures are not necessarily in a particular order or in a sequential order to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备、非易失性计算机存储介质实施例而言,由于其基本相似于方法实施例,所以 描述的比较简单,相关之处参见方法实施例的部分说明即可。The various embodiments in the specification are described in a progressive manner, and the same or similar parts between the various embodiments may be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for a device, device, non-volatile computer storage medium embodiment, since it is substantially similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the description of the method embodiment.
本说明书实施例提供的装置、设备、非易失性计算机存储介质与方法是对应的,因此,装置、设备、非易失性计算机存储介质也具有与对应方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述对应装置、设备、非易失性计算机存储介质的有益技术效果。The device, the device, the non-volatile computer storage medium and the method provided by the embodiments of the present specification are corresponding, and therefore, the device, the device, and the non-volatile computer storage medium also have similar beneficial technical effects as the corresponding method, since The beneficial technical effects of the method are described in detail, and therefore, the beneficial technical effects of the corresponding device, device, and non-volatile computer storage medium are not described herein.
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。In the 1990s, improvements to a technology could clearly distinguish between hardware improvements (eg, improvements to circuit structures such as diodes, transistors, switches, etc.) or software improvements (for process flow improvements). However, as technology advances, many of today's method flow improvements can be seen as direct improvements in hardware circuit architecture. Designers almost always get the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that the improvement of a method flow cannot be implemented by hardware entity modules. For example, a Programmable Logic Device (PLD) (such as a Field Programmable Gate Array (FPGA)) is an integrated circuit whose logic function is determined by the user programming the device. Designers program themselves to "integrate" a digital system on a single PLD without having to ask the chip manufacturer to design and fabricate a dedicated integrated circuit chip. Moreover, today, instead of manually making integrated circuit chips, this programming is mostly implemented using "logic compiler" software, which is similar to the software compiler used in programming development, but before compiling The original code has to be written in a specific programming language. This is called the Hardware Description Language (HDL). HDL is not the only one, but there are many kinds, such as ABEL (Advanced Boolean Expression Language). AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc., are currently the most commonly used VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. It should also be apparent to those skilled in the art that the hardware flow for implementing the logic method flow can be easily obtained by simply programming the method flow into the integrated circuit with a few hardware description languages.
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除 了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。The controller can be implemented in any suitable manner, for example, the controller can take the form of, for example, a microprocessor or processor and a computer readable medium storing computer readable program code (eg, software or firmware) executable by the (micro)processor. In the form of logic gates, switches, application specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers, examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, The Microchip PIC18F26K20 and the Silicone Labs C8051F320, the memory controller can also be implemented as part of the memory's control logic. Those skilled in the art will also appreciate that in addition to implementing the controller in purely computer readable program code, the controller can be logically programmed by means of logic gates, switches, ASICs, programmable logic controllers, and embedding. The form of a microcontroller or the like to achieve the same function. Such a controller can therefore be considered a hardware component, and the means for implementing various functions included therein can also be considered as a structure within the hardware component. Or even a device for implementing various functions can be considered as a software module that can be both a method of implementation and a structure within a hardware component.
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。The system, device, module or unit illustrated in the above embodiments may be implemented by a computer chip or an entity, or by a product having a certain function. A typical implementation device is a computer. Specifically, the computer can be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or A combination of any of these devices.
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。For the convenience of description, the above devices are described separately by function into various units. Of course, the functions of the various units may be implemented in one or more software and/or hardware in the implementation of the present specification.
本领域内的技术人员应明白,本说明书实施例可提供为方法、系统、或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art will appreciate that embodiments of the specification can be provided as a method, system, or computer program product. Thus, embodiments of the present specification can take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, embodiments of the present specification can take the form of a computer program product embodied on one or more computer usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present description is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the present specification. It will be understood that each flow and/or block of the flowchart illustrations and/or FIG. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing device to produce a machine for the execution of instructions for execution by a processor of a computer or other programmable data processing device. Means for implementing the functions specified in one or more of the flow or in a block or blocks of the flow chart.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。The computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device. The apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计 算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device. The instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。The memory may include non-persistent memory, random access memory (RAM), and/or non-volatile memory in a computer readable medium, such as read only memory (ROM) or flash memory. Memory is an example of a computer readable medium.
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。Computer readable media includes both permanent and non-persistent, removable and non-removable media. Information storage can be implemented by any method or technology. The information can be computer readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory. (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other memory technology, compact disk read only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, Magnetic tape cartridges, magnetic tape storage or other magnetic storage devices or any other non-transportable media can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary storage of computer readable media, such as modulated data signals and carrier waves.
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。It is also to be understood that the terms "comprises" or "comprising" or "comprising" or any other variations are intended to encompass a non-exclusive inclusion, such that a process, method, article, Other elements not explicitly listed, or elements that are inherent to such a process, method, commodity, or equipment. An element defined by the phrase "comprising a ..." does not exclude the presence of additional equivalent elements in the process, method, item, or device including the element.
本领域技术人员应明白,本说明书实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art will appreciate that embodiments of the present description can be provided as a method, system, or computer program product. Accordingly, the present description may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment in combination of software and hardware. Moreover, the description may take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、 对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。This description can be described in the general context of computer-executable instructions executed by a computer, such as a program module. Generally, program modules include routines, programs, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types. The present specification can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are connected through a communication network. In a distributed computing environment, program modules can be located in both local and remote computer storage media including storage devices.
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。The various embodiments in the specification are described in a progressive manner, and the same or similar parts between the various embodiments may be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the description of the method embodiment.
以上所述仅为本说明书实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。The above description is only for the embodiments of the present specification, and is not intended to limit the application. Various changes and modifications can be made to the present application by those skilled in the art. Any modifications, equivalents, improvements, etc. made within the spirit and scope of the present application are intended to be included within the scope of the appended claims.

Claims (13)

  1. 一种扫码图像识别方法,包括:A scanning image recognition method includes:
    获取当前的扫码图像帧;Obtain the current scan code image frame;
    利用图形处理器GPU,对所述当前的扫码图像帧进行二值化处理,得到二值化结果;Using the graphics processor GPU, performing binarization processing on the current scan code image frame to obtain a binarization result;
    将所述二值化结果提供给中央处理器CPU,以便利用所述CPU识别所述二值化结果,得到扫码图像识别结果。The binarization result is provided to the central processing unit CPU to identify the binarization result by the CPU to obtain a scan code image recognition result.
  2. 如权利要求1所述的方法,所述利用GPU,对所述当前的扫码图像帧进行二值化处理,具体包括:The method of claim 1, wherein the GPU is used to perform binarization processing on the current scan code image frame, specifically:
    第一线程利用GPU,对所述当前的扫码图像帧进行二值化处理;The first thread uses a GPU to perform binarization processing on the current scan code image frame;
    所述利用所述CPU识别所述二值化结果,具体包括:The identifying, by the CPU, the binarization result includes:
    第二线程利用所述CPU识别所述二值化结果,其中,所述第一线程与所述第二线程是不同的线程。The second thread uses the CPU to identify the binarization result, wherein the first thread and the second thread are different threads.
  3. 如权利要求1所述的方法,所述将所述二值化结果提供给CPU后,所述方法还包括:The method of claim 1, after the providing the result of the binarization to the CPU, the method further comprises:
    利用所述GPU,对下一个扫码图像帧进行二值化处理,其中,利用所述CPU识别二值化结果的过程与利用所述GPU二值化处理扫码图像帧的过程能够并行执行。The next scan code image frame is binarized by the GPU, wherein the process of identifying the binarization result by the CPU and the process of scanning the code image frame by the GPU binarization process can be performed in parallel.
  4. 如权利要求1所述的方法,所述将所述二值化结果提供给CPU,具体包括:The method of claim 1, wherein the providing the binarization result to the CPU comprises:
    将所述二值化结果保存于结果池中,并发送相应通知以便CPU得到所述结果池中的所述二值化结果。The binarization result is saved in the result pool, and a corresponding notification is sent so that the CPU obtains the binarization result in the result pool.
  5. 如权利要求4所述的方法,若利用所述CPU识别所述二值化结果失败,所述方法还包括:The method of claim 4, if the CPU fails to identify the binarization result, the method further includes:
    利用所述CPU,从所述结果池中获取下一个二值化结果进行识别。Using the CPU, the next binarization result is obtained from the result pool for identification.
  6. 如权利要求1~5任一项所述的方法,所述扫码包括扫描二维码。The method of any one of claims 1 to 5, the scan code comprising scanning a two-dimensional code.
  7. 一种扫码图像识别装置,包括:A scan code image recognition device includes:
    获取模块,获取当前的扫码图像帧;Obtaining a module to obtain a current scan image frame;
    二值化模块,利用图形处理器GPU,对所述当前的扫码图像帧进行二值化处理,得到二值化结果;a binarization module, using a graphics processor GPU, performing binarization processing on the current scan code image frame to obtain a binarization result;
    识别模块,将所述二值化结果提供给中央处理器CPU,以便利用所述CPU识别所述二值化结果,得到扫码图像识别结果。The identification module provides the binarization result to the central processing unit CPU to identify the binarization result by the CPU to obtain a scan image recognition result.
  8. 如权利要求7所述的装置,所述二值化模块利用GPU,对所述当前的扫码图像帧进行二值化处理,具体包括:The apparatus of claim 7, wherein the binarization module performs a binarization process on the current scan code image frame by using a GPU, and specifically includes:
    所述二值化模块通过第一线程,利用GPU,对所述当前的扫码图像帧进行二值化处理;The binarization module performs binarization processing on the current scan code image frame by using a GPU through a first thread;
    所述识别模块利用CPU识别所述二值化结果,具体包括:The identification module uses the CPU to identify the binarization result, and specifically includes:
    所述识别模块通过第二线程,利用所述CPU识别所述二值化结果,其中,所述第一线程与所述第二线程是不同的线程。The identification module identifies the binarization result by using the CPU by using a second thread, where the first thread and the second thread are different threads.
  9. 如权利要求7所述的装置,所述识别模块将所述二值化结果提供给CPU后,所述二值化模块利用所述GPU,对下一个扫码图像帧进行二值化处理,其中,利用所述CPU识别二值化结果的过程与利用所述GPU二值化处理扫码图像帧的过程能够并行执行。The apparatus of claim 7, after the identification module provides the binarization result to the CPU, the binarization module uses the GPU to perform binarization processing on the next scan image frame, wherein The process of identifying the binarization result by the CPU and the process of scanning the coded image frame by the GPU binarization process can be performed in parallel.
  10. 如权利要求7所述的装置,所述识别模块将所述二值化结果提供给CPU,具体包括:The apparatus of claim 7, wherein the identification module provides the binarization result to the CPU, specifically:
    所述识别模块将所述二值化结果保存于结果池中,并发送相应通知以便CPU得到所述结果池中的所述二值化结果。The identification module saves the binarization result in the result pool, and sends a corresponding notification for the CPU to obtain the binarization result in the result pool.
  11. 如权利要求10所述的装置,若利用所述CPU识别所述二值化结果失败,所述识别模块利用所述CPU,从所述结果池中获取下一个二值化结果进行识别。The apparatus according to claim 10, wherein if the CPU fails to identify the binarization result, the identification module uses the CPU to acquire a next binarization result from the result pool for identification.
  12. 如权利要求7~11任一项所述的装置,所述扫码包括扫描二维码。The apparatus of any one of claims 7 to 11, the scan code comprising scanning a two-dimensional code.
  13. 一种扫码图像识别设备,包括:A scan code image recognition device, comprising:
    至少一个处理器;以及,At least one processor; and,
    与所述至少一个处理器通信连接的存储器;其中,a memory communicatively coupled to the at least one processor; wherein
    所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:The memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to:
    获取当前的扫码图像帧;Obtain the current scan code image frame;
    利用图形处理器GPU,对所述当前的扫码图像帧进行二值化处理,得到二值化结果;Using the graphics processor GPU, performing binarization processing on the current scan code image frame to obtain a binarization result;
    将所述二值化结果提供给中央处理器CPU,以便利用所述CPU识别所述二值化结果,得到扫码图像识别结果。The binarization result is provided to the central processing unit CPU to identify the binarization result by the CPU to obtain a scan code image recognition result.
PCT/CN2019/072772 2018-03-07 2019-01-23 Code-scanning image recognition method, apparatus and device WO2019169965A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810186076.6 2018-03-07
CN201810186076.6A CN108537085A (en) 2018-03-07 2018-03-07 A kind of barcode scanning image-recognizing method, device and equipment

Publications (1)

Publication Number Publication Date
WO2019169965A1 true WO2019169965A1 (en) 2019-09-12

Family

ID=63486463

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/072772 WO2019169965A1 (en) 2018-03-07 2019-01-23 Code-scanning image recognition method, apparatus and device

Country Status (3)

Country Link
CN (1) CN108537085A (en)
TW (1) TWI769360B (en)
WO (1) WO2019169965A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114723766A (en) * 2022-04-14 2022-07-08 润芯微科技(江苏)有限公司 Two-dimensional code extraction and display method and electronic equipment

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108537085A (en) * 2018-03-07 2018-09-14 阿里巴巴集团控股有限公司 A kind of barcode scanning image-recognizing method, device and equipment
CN110516739B (en) * 2019-08-27 2022-12-27 创新先进技术有限公司 Certificate identification method, device and equipment
CN114417322A (en) * 2019-09-19 2022-04-29 武汉统信软件技术有限公司 Application isolation implementation method, mobile terminal, computer equipment and storage medium
WO2022110106A1 (en) * 2020-11-30 2022-06-02 华为技术有限公司 Code scanning method and apparatus
CN115618900A (en) * 2021-09-22 2023-01-17 支付宝(杭州)信息技术有限公司 Method and device for recognizing picture and training neural network

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104851081A (en) * 2015-05-15 2015-08-19 南京信息工程大学 GPU-based parallel Laplacian image sharpening method
CN105894514A (en) * 2016-04-06 2016-08-24 广东工业大学 Printed matter defect detection method and system based on GPU parallel operation
CN107609446A (en) * 2017-07-31 2018-01-19 努比亚技术有限公司 A kind of recognition methods of code figure, terminal and computer-readable recording medium
CN108537085A (en) * 2018-03-07 2018-09-14 阿里巴巴集团控股有限公司 A kind of barcode scanning image-recognizing method, device and equipment

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103824257A (en) * 2012-11-16 2014-05-28 无锡汉兴电子有限公司 Two-dimensional code image preprocessing method
CN103955660B (en) * 2014-04-22 2017-02-22 广州闪购软件服务有限公司 Method for recognizing batch two-dimension code images
CN104125220A (en) * 2014-07-08 2014-10-29 上海仪电智能电子有限公司 Method for achieving rapid data exchange and response of cell phone application and background database
CN104933731A (en) * 2015-04-17 2015-09-23 阔地教育科技有限公司 Moving target detection method based on graphics processor and moving target detection device based on graphics processor
CN108573185B (en) * 2016-03-31 2021-09-21 青岛海信移动通信技术股份有限公司 Two-dimensional code picture identification method and device
CN106095536B (en) * 2016-06-22 2019-06-11 福建联迪商用设备有限公司 Multithreading coding/decoding method and system based on multicore MPU

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104851081A (en) * 2015-05-15 2015-08-19 南京信息工程大学 GPU-based parallel Laplacian image sharpening method
CN105894514A (en) * 2016-04-06 2016-08-24 广东工业大学 Printed matter defect detection method and system based on GPU parallel operation
CN107609446A (en) * 2017-07-31 2018-01-19 努比亚技术有限公司 A kind of recognition methods of code figure, terminal and computer-readable recording medium
CN108537085A (en) * 2018-03-07 2018-09-14 阿里巴巴集团控股有限公司 A kind of barcode scanning image-recognizing method, device and equipment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WANG, PENG ET AL.: "Research of Barcode Recognition Technology Based on CPU&GPU in Aviation Information System", COMPUTER SCIENCE, vol. 40, no. 11A, 30 November 2013 (2013-11-30), pages 357 - 358, 378 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114723766A (en) * 2022-04-14 2022-07-08 润芯微科技(江苏)有限公司 Two-dimensional code extraction and display method and electronic equipment

Also Published As

Publication number Publication date
TW201939356A (en) 2019-10-01
CN108537085A (en) 2018-09-14
TWI769360B (en) 2022-07-01

Similar Documents

Publication Publication Date Title
WO2019169965A1 (en) Code-scanning image recognition method, apparatus and device
US11113514B2 (en) Identity verification methods, systems, apparatuses, and devices
WO2019034039A1 (en) Target image code recognition method and device
EP3425581B1 (en) Information display method and device
WO2019179233A1 (en) Qr code identifying and reading method and apparatus, and device
WO2018099314A1 (en) Service data processing method and apparatus, and client
WO2019149020A1 (en) Information recognition method and system, and server and client
WO2019141108A1 (en) Doi scanning-based information processing method, apparatus, and device
TWI717644B (en) Method, device and equipment for obtaining business information
WO2019205761A1 (en) Intelligent device, inventory taking method, device and apparatus
WO2019179234A1 (en) Image identification method, apparatus and device
EP3611684A1 (en) Method and device for account creation, account refilling and data synchronization
CN107784339B (en) Service execution method, device and equipment applied to client and server
TWI694392B (en) Method and device for displaying unique identifier of digital object
WO2019214305A1 (en) Doi-based payment method, apparatus and device
US11164056B2 (en) Method and system for applying barcode, and server
WO2019165870A1 (en) Method, apparatus, and device for recognizing bar code
WO2019233144A1 (en) Method for decoding graphic code and client
WO2019154168A1 (en) Method and device for displaying identification code of application
WO2019137357A1 (en) Payment code acquisition and payment request response method, apparatus and device
CN111091016B (en) Tripod nine-code reading method and device and mobile terminal
CN116415609A (en) Display method, device, equipment and medium for code display page

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19764375

Country of ref document: EP

Kind code of ref document: A1