CN116579957A - Image processing method, terminal device and computer storage medium - Google Patents

Image processing method, terminal device and computer storage medium Download PDF

Info

Publication number
CN116579957A
CN116579957A CN202310391044.0A CN202310391044A CN116579957A CN 116579957 A CN116579957 A CN 116579957A CN 202310391044 A CN202310391044 A CN 202310391044A CN 116579957 A CN116579957 A CN 116579957A
Authority
CN
China
Prior art keywords
binary image
expansion
corrosion
result
original binary
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310391044.0A
Other languages
Chinese (zh)
Inventor
郎建业
黄虎
周璐
张博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Huaray Technology Co Ltd
Original Assignee
Zhejiang Huaray Technology Co Ltd
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 Zhejiang Huaray Technology Co Ltd filed Critical Zhejiang Huaray Technology Co Ltd
Priority to CN202310391044.0A priority Critical patent/CN116579957A/en
Publication of CN116579957A publication Critical patent/CN116579957A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • G06T5/30Erosion or dilatation, e.g. thinning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/40Image enhancement or restoration using histogram techniques
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

The application discloses an image processing method, a terminal device and a computer storage medium, wherein the image processing method comprises the following steps: acquiring an original binary image; performing run length coding on the original binary image according to the row direction to obtain a run length code corresponding to the original binary image; performing row-direction corrosion and/or expansion treatment on the original binary image by utilizing a structural element matrix based on stroke coding to obtain a first corrosion result and/or a first expansion result corresponding to the original binary image; performing column-direction corrosion treatment based on the first corrosion result to obtain a second corrosion result, and/or performing column-direction expansion treatment based on the first expansion result to obtain a second expansion result; and taking the second corrosion result and/or the second expansion result as a binary morphology calculation result of the original binary image. According to the image processing method, morphological calculation is carried out on the binary image row direction, and then column direction morphological calculation is not required to be carried out again independently, so that the calculation efficiency is improved.

Description

Image processing method, terminal device and computer storage medium
Technical Field
The present application relates to the field of image processing technologies, and in particular, to an image processing method, a terminal device, and a computer storage medium.
Background
Corrosion is a process of eliminating boundary points and causing the boundary to shrink inward. Can be used to eliminate small and meaningless objects; expansion is the process of incorporating all background points in contact with an object into the object, expanding the boundary outward, and can be used to fill voids in the object.
Corrosion and dilation are the most fundamental transformations in image morphology computation, whose application covers almost all areas of image processing, by using structural elements with a certain morphology to measure and extract the corresponding shape in the image, the purpose of image analysis and recognition is achieved.
In the prior art, the expansion and corrosion operation needs to access the neighborhood of each pixel of the image and perform logic operation, each pixel needs to be accessed for a plurality of times, and the operation efficiency is low.
Disclosure of Invention
The application provides an image processing method, a terminal device and a computer storage medium.
The application adopts a technical scheme that an image processing method is provided, and the image processing method comprises the following steps:
acquiring an original binary image;
performing run length coding on the original binary image according to the row direction to obtain a run length code corresponding to the original binary image;
Performing row-direction corrosion and/or expansion treatment on the original binary image by utilizing a structural element matrix based on stroke coding to obtain a first corrosion result and/or a first expansion result corresponding to the original binary image;
performing column-direction corrosion treatment based on the first corrosion result to obtain a second corrosion result, and/or performing column-direction expansion treatment based on the first expansion result to obtain a second expansion result;
and taking the second corrosion result and/or the second expansion result as a binary morphology calculation result of the original binary image.
The method for performing run length encoding on the original binary image according to the row direction to obtain the run length encoding corresponding to the original binary image comprises the following steps:
partitioning the original binary image according to the height of the original binary image and the number of processor cores to obtain a plurality of binary image blocks;
distributing a plurality of binary image blocks to corresponding processor cores so that the processor cores perform run length coding on the binary image blocks according to the row direction to obtain run length codes corresponding to the binary image blocks;
and integrating the run length codes corresponding to the binary image blocks to obtain the run length codes corresponding to the original binary image.
Performing run length encoding on the binary image block to obtain a run length encoding corresponding to the binary image block, including:
The binary image block data are loaded into a register in batches, and whether the currently stored target line data of the binary image block are all 1 data is judged in the register;
if not, acquiring a starting position or a termination position in the target line data to obtain a travel code; if so, loading is continued until a data of 0 appears.
The method for performing row-direction corrosion treatment on the original binary image by utilizing the structural element matrix based on the run-length coding to obtain a first corrosion result corresponding to the original binary image comprises the following steps:
acquiring a starting position and an ending position in a target travel code;
determining a corrosion starting position by using the corrosion radius and the starting position, and determining a corrosion ending position by using the corrosion radius and the ending position, so as to obtain a corrosion stroke code; wherein the corrosion radius is based on a matrix of structural elements;
and performing row-direction corrosion treatment by using corrosion stroke codes to obtain a first corrosion result corresponding to the original binary image.
The method comprises the following steps of:
and if the corrosion starting position is larger than the corrosion ending position, removing the corrosion stroke code.
Based on the run length coding, performing row direction expansion processing on the original binary image by using a structural element matrix to obtain a first expansion result corresponding to the original binary image, wherein the first expansion result comprises:
acquiring a starting position and an ending position in the travel code;
determining an expansion starting position by using the expansion radius and the starting position, and determining an expansion ending position by using the expansion radius and the ending position, thereby obtaining an expansion stroke code; wherein the expansion radius is obtained based on a matrix of structural elements;
and performing row-direction expansion processing by using expansion stroke coding to obtain a first expansion result corresponding to the original binary image.
The method comprises the steps of:
if the expansion stroke code overlaps with the previous stroke code of the target stroke code, the expansion stroke code and the previous stroke code are combined.
And performing column-direction corrosion treatment based on the first corrosion result to obtain a second corrosion result, wherein the method comprises the following steps:
for the second corrosion result of the ith row, the intersection of the first corrosion results based on the direction of m consecutive rows is obtained, wherein m is obtained based on the structural element matrix, and i and m are positive integers.
And performing column-direction expansion processing based on the first expansion result to obtain a second expansion result, wherein the method comprises the following steps:
for the second expansion result of the i-th row, the second expansion result is obtained based on the union of the first expansion results in the direction of m rows, wherein m is obtained based on the structural element matrix, and i and m are positive integers.
Another technical scheme adopted by the application is to provide a terminal device, wherein the terminal device comprises a memory and a processor connected with the memory;
the memory is used for storing program data, and the processor is used for executing the program data to realize the image processing method.
Another aspect of the present application is to provide a computer storage medium storing program data, which when executed by a computer, is configured to implement the image processing method as described above.
The application has the beneficial effects that: and carrying out row-direction corrosion and/or expansion processing based on the stroke coding of the binary image, so as to improve the corrosion and/or expansion processing efficiency in the row direction, and carrying out column-direction corrosion and/or expansion processing based on the first corrosion result and/or the first expansion result in the row direction, so that the column-direction corrosion and/or expansion processing is not required to be independently carried out again, the corrosion and/or expansion processing efficiency in the column direction is improved, and further, the efficiency of carrying out binary morphological calculation on the binary image is improved.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for the description of the embodiments will be briefly described below, and it is apparent that the drawings in the following description are only some embodiments of the present application, and other drawings may be obtained according to these drawings without inventive effort to those of ordinary skill in the art.
FIG. 1 is a flowchart of an embodiment of an image processing method according to the present application;
FIG. 2 is a schematic diagram of one embodiment of a matrix of structural elements;
FIG. 3 is a schematic diagram of one embodiment of an original binary image;
FIGS. 4-6 are schematic diagrams of the run-length encoding process performed on the first line of FIG. 3;
FIG. 7 is a schematic illustration of the expansion process performed on line 4 of FIG. 3;
FIG. 8 is a schematic diagram of an embodiment of an original binary image acquired by an image processing terminal;
FIGS. 9-12 are schematic illustrations of the expansion process performed on FIG. 8;
fig. 13 is a schematic structural diagram of an embodiment of a terminal device provided by the present application;
fig. 14 is a schematic structural diagram of an embodiment of a computer storage medium according to the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are only some, but not all embodiments of the application. All other embodiments, which can be made by those skilled in the art based on the embodiments of the application without making any inventive effort, are intended to be within the scope of the application.
Reference in the specification to "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment may be included in at least one embodiment of the application. The appearances of such phrases in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Those of skill in the art will explicitly and implicitly appreciate that the embodiments described herein may be combined with other embodiments.
The steps in the embodiments of the present application are not necessarily processed according to the described step sequence, and the steps in the embodiments may be rearranged selectively according to the requirement, or steps in the embodiments may be deleted, or steps in the embodiments may be added, where the description of the steps in the embodiments of the present application is only an optional sequential combination, and does not represent all the sequential combinations of steps in the embodiments of the present application, and the sequence of steps in the embodiments should not be considered as limiting the present application.
The terms "first," "second," and the like in this disclosure are used for distinguishing between different objects and not for describing a particular sequential order. Furthermore, the terms "comprise" and "have," as well as any variations thereof, are intended to cover a non-exclusive inclusion. For example, a process, method, system, or apparatus that comprises a series of steps or elements is not limited to the listed steps or elements but may alternatively include steps or elements not listed or may alternatively include other steps or elements inherent to such process, method, or apparatus.
In addition, although the terms "first," "second," etc. are used several times in the present application to describe various data (or various applications or various instructions or various operations), etc., these data (or applications or instructions or operations) should not be limited by these terms. These terms are only used to distinguish one type of data (or application or instruction or operation) from another type of data (or application or instruction or operation).
In recent years, the application of machine vision and image processing technology in object surface defect detection has achieved a certain effect, and the defect detection method based on machine vision has the advantages of high detection speed, high recognition rate, good real-time performance, low cost and the like, wherein the defect detection on the object surface requires morphological calculation processing on an image after a binary image is obtained, noise information contained in the binary image is reduced, image characteristics of the object surface can be better extracted through template matching or an artificial neural network mode, and then the image characteristics are matched with the obtained defect information characteristics, so that whether the object surface has defects and defect types can be recognized. With the advent of high-resolution cameras, large-format images contain more pixel information, and traditional image morphology calculation methods are difficult to process large-format images in a short time, so that real-time processing of images is often required in actual industrial application, time consumption requirements on algorithms are strict, and the existing algorithms are difficult to meet the needs of actual application.
The application mainly designs a set of method for improving the morphological calculation of the binary image, which is different from the traditional method, firstly carries out stroke coding on the binary image, carries out morphological operation in the row direction on the image after the stroke coding, and then carries out morphological calculation in the column direction, thereby avoiding the problems of repeated calculation or redundant calculation in the traditional method and improving the efficiency of the morphological calculation of the binary image.
Referring to fig. 1, fig. 1 is a flowchart illustrating an embodiment of an image processing method according to the present application.
As shown in fig. 1, the image processing method according to the embodiment of the present application may specifically include the following steps:
s1, acquiring an original binary image.
The image processing method of the embodiment of the application is executed by the image processing terminal, and in some application scenes, the image processing terminal can be a camera. In some application scenarios, the image processing terminal may be a device that establishes a communication connection with the camera, where the device may also contain a graphics processor.
Specifically, the image processing terminal acquires an original binary image.
In some embodiments, the image processing terminal obtains a color image through a color camera connected with the image processing terminal in a communication way, and obtains an original binary image through binarization processing on the color image.
In some embodiments, the image processing terminal obtains a gray image through a gray camera in communication connection with the image processing terminal, and obtains an original binary image through binarization processing of the gray image.
S2, performing run-length coding on the original binary image according to the row direction to obtain a run-length code corresponding to the original binary image.
Specifically, the image processing terminal performs run length encoding on the original binary image according to the row direction, and obtains a run length encoding corresponding to the original binary image.
In some embodiments, in the original binary image of the y-th row, if the starting column coordinate of the pixel point with continuous 1 is xs and the ending column coordinate is xe, the image processing terminal records that the current run is run= (y, xs, xe). It will be appreciated that there may be multiple runs of the original binary image for the same line.
The image processing terminal carries out the run coding on the original binary image according to the row direction to obtain corresponding run codes which are a plurality of formed sets, namely (run) 1 ,run 2 ,run 3 ,…,run n )。
And S3, performing row-direction corrosion and/or expansion treatment on the original binary image by utilizing the structural element matrix based on the stroke coding to obtain a first corrosion result and/or a first expansion result corresponding to the original binary image.
Specifically, the image processing terminal performs row-direction corrosion and/or expansion processing on the original binary image by utilizing the structural element matrix based on the stroke coding, and obtains a first corrosion result and/or a first expansion result corresponding to the original binary image.
Wherein the matrix of structural elements is generated from the structural element parameters. The structural element matrix is denoted by SE, and two values of 0 and 1 exist in the structural element matrix. And counting the number of elements with data of 1 in each row of structural element matrix, and recording as D= (D) 1 ,d 2 ,…,d m ) Wherein m is the height of the matrix of structural elements SE; simultaneously calculating the radius of the corresponding structural element of each row, and recording as R= (R) 1 ,r 2 ,…,r m ),
Wherein, satisfy:
r m =Floor(d m /2)
wherein Floor is the pair d m The result of/2 is rounded down. Illustratively d m 2=2.5, then r m =Floor(d m /2)=2。
Referring to fig. 2, fig. 2 is a schematic diagram of an embodiment of a structural element matrix.
As shown in fig. 2, the shape of the structural element matrix SE is circular, and the radius is 2.5, then:
in some embodiments, the height of the structural element matrix SE is m, and the image processing terminal selects m rows of strokes to perform corrosion and/or expansion processing in the row direction.
The original binary image is recorded as I, and SE is the structural element matrix. Wherein the corrosion is defined asThe corrosion algorithm is known as the coverage of structural elements When the pixel values of the original binary image of the cover are all 1, the pixel value of the position where the center point of the structural element is positioned is assigned to 1, otherwise, the pixel value is assigned to 0. That is, when the binary image pixel value covered by the structural element is 0, the position where the central point of the structural element is located is assigned to be 0, otherwise, the position is assigned to be 1. If the SE is m in height, the erosion result of the ith row of the original binary image is the combined effect of the adjacent m rows.
Taking the structural element matrix of FIG. 2 as an example, the structural element matrix is circular in shape, 2.5 in radius, 5 in SE height m, and the corrosion result of the ith row of the original binary image is the combined result of the ith-2, ith-1, ith, ith+1, and ith+2 rows, and the corrosion cores of each row are d respectively i-2 =3、d i-1 =5、d i =5、d i+1 =5、d i+2 =3, corrosion radii r i-2 =1、r i-1 =2、r i =2、r i+1 =2、r i+2 =1. If the pixel value is the pixel value of the ith row of the binary image, the run code of the ith row of the binary image is { run (y, xs, xe) |y= =i&&g i [xs,xe]==1&&i∈[i-2,i+2]Then the row direction corrosion result is LR i ={run(y,xs+r i ,xe-r i )|y==i&&xe-r i ≥xs+r i }。
Wherein the expansion is defined asThe expansion algorithm is known to assign 1 to the pixel value of the position where the center point of the structural element is located when the pixel value of the binary image covered by the structural element is 1, and otherwise, assign 0. That is, when the pixel values of the binary image covered by the structural element are all 0, the position where the center point of the structural element is located is assigned to be 0, otherwise, the position is assigned to be 1. If the SE is m in height, the expansion result of the ith row of the original binary image is the combined effect of the adjacent m rows.
Taking the structural element matrix of FIG. 2 as an example, the structural element matrix is circular in shape, 2.5 in radius, 5 in SE height m, and the expansion result of the ith row of the binary image is the result of the combined action of the ith-2, ith-1, ith, i+1, and ith+2 rows, and the expansion cores of each row are respectively of the size ofd i-2 =3、d i-1 =5、d i =5、d i+1 =5、d i+2 =3, expansion radii r i-2 =1、r i-1 =2、r i =2、r i+1 =2、r i+2 =1. If g i For the pixel value of the ith row of the original binary image, the run code of the ith row of the binary image is { run (y, xs, xe) |y= =i&&g i [xs,xe]==1&&i∈[i-2,i+2]Then the expansion results in the row direction are LD respectively i ={run(y,xs-r i ,xe+r i )|y==i}。
And S4, performing column-direction corrosion treatment based on the first corrosion result to obtain a second corrosion result, and/or performing column-direction expansion treatment based on the first expansion result to obtain a second expansion result.
Specifically, the image processing terminal performs column direction corrosion and/or expansion processing based on the obtained first corrosion result and/or first expansion result to obtain a second corrosion result and/or second expansion result.
S5, taking the second corrosion result and/or the second expansion result as a binary morphology calculation result of the original binary image.
Specifically, the image processing terminal takes the obtained second corrosion result and/or second expansion result as a binary morphology calculation result of the original binary image.
In some application scenarios, the image processing terminal uses the obtained second corrosion result as a binary morphology calculation result of the original binary image.
In some application scenarios, the image processing terminal uses the obtained second expansion result as a binary morphology calculation result of the original binary image.
In some application scenarios, the image processing terminal uses the obtained second corrosion result and second expansion result as the binary morphology calculation result of the original binary image.
According to the scheme, the corrosion and/or expansion processing in the row direction is performed based on the stroke code of the binary image, the corrosion and/or expansion processing efficiency in the row direction is improved, the corrosion and/or expansion processing in the column direction is performed based on the first corrosion result and/or the first expansion result in the row direction, the corrosion and/or expansion processing in the column direction is not required to be independently performed again, the corrosion and/or expansion processing efficiency in the column direction is improved, and the efficiency of binary morphological calculation on the binary image is improved.
Another embodiment of the image processing method provided by the present application may specifically include:
s11, acquiring an original binary image.
S12, the original binary image is segmented according to the height of the original binary image and the number of processor cores, and a plurality of binary image blocks are obtained.
Specifically, the image processing terminal blocks the original binary image according to the height pixel value of the original binary image and the number of processor cores of the image processing terminal, so as to obtain a plurality of binary image blocks.
In some application scenarios, the image processing terminal may further include a graphics processing unit (Graphic Process Unit, GPU), and the image processing terminal may block the original binary image according to the height pixel value of the original binary image and the number of graphics processor cores of the image processing terminal, to obtain a plurality of binary image blocks.
The height of the original binary image is shown as ImgH, and the image processing terminal divides the original binary image into nCores blocks according to the physical core number nCores of the processor to obtain nCores binary image blocks 1 、Block 2 、…、Block nCores Wherein, the image height corresponding to each binary image block is ImgH/nCores.
As shown in fig. 3, fig. 3 is a schematic diagram of an embodiment of the original binary image.
The original binary image shown in fig. 3 has a width of 34 pixels and a height of 4 pixels, wherein the gray square represents a pixel of data 1 and the white square represents a pixel of data 0.
For example, the physical core number of the processor is 4, and the image processing terminal divides the original binary image into 4 blocks, namely, 1 binary image block per row.
S13, distributing the plurality of binary image blocks to the corresponding processor cores, so that the processor cores perform run length coding on the binary image blocks according to the row direction, and obtaining run length codes corresponding to the binary image blocks.
Specifically, the image processing terminal respectively distributes the obtained plurality of binary image blocks to different processor cores to perform run-length coding operation according to the row direction to obtain run-length codes corresponding to each binary image block, wherein the coding results corresponding to each binary image block are respectively stored in different memory blocks.
For example, please refer to fig. 3 again, taking the first binary image block as an example, the binary image block is the first line, and the image processing terminal performs the run-length encoding operation on the first line. Specifically, the image processing terminal judges backward column by column from the 1 st column of the line until the first element of data 1 appears, i.e., the 5 th column, the image processing terminal records the start position xs=5 of the first run, then continues judging backward until the 29 th column, records the end position xe=29 of the first run, thereby obtaining the first run (1, 5, 29). The image processing terminal continues the backward judgment, obtains a second formed start position xs=33 and end position xe=34, and records a second stroke (1, 33, 34). Based on this, the run-length encoding result run 1= { (1, 5, 29), (1, 33, 34) } of the first line is obtained. And so on, the run-length encoding result run2 = { (2, 9, 17), (2, 33, 33) }, the run-length encoding result run3 = { (3, 17, 33) }, the run-length encoding result run4 = { (4, 11, 17), (4, 20, 24) } of the third row can be obtained.
S14, integrating the run length codes corresponding to the binary image blocks to obtain the run length codes corresponding to the original binary image.
Specifically, the image processing terminal arranges the run codes corresponding to the binary image blocks stored in different memory blocks into a continuous memory according to the sequence, and taking run code results run1, run2, run3 and run4 obtained after the image processing terminal performs the run code operation on fig. 3 as an example, run1, run2, run3 and run4 are respectively stored in different memory blocks, and the image processing terminal arranges run1, run2, run3 and run4 into a continuous memory in sequence strictly, i.e. the sequence from run1 to run4 is guaranteed to be correct. Because morphological operation results are influenced by the upper and lower line results at the same time, the image processing terminal needs to perform the run length codes corresponding to the original binary image obtained after the run length codes corresponding to the binary image blocks are integrated, and corrosion and/or expansion operations cannot be directly performed on the run length codes corresponding to the binary image blocks.
And S15, performing row-direction corrosion and/or expansion treatment on the original binary image by utilizing the structural element matrix based on the stroke coding to obtain a first corrosion result and/or a first expansion result corresponding to the original binary image.
S16, performing column-direction corrosion treatment based on the first corrosion result to obtain a second corrosion result, and/or performing column-direction expansion treatment based on the first expansion result to obtain a second expansion result.
And S17, taking the second corrosion result and/or the second expansion result as a binary morphology calculation result of the original binary image.
According to the scheme, the corrosion and/or expansion processing in the row direction is performed based on the stroke code of the binary image, the corrosion and/or expansion processing efficiency in the row direction is improved, the corrosion and/or expansion processing in the column direction is performed based on the first corrosion result and/or the first expansion result in the row direction, the corrosion and/or expansion processing in the column direction is not required to be independently performed again, the corrosion and/or expansion processing efficiency in the column direction is improved, and the efficiency of binary morphological calculation on the binary image is improved. Further, before run-length encoding is executed, the binary image is divided into a plurality of binary image blocks according to the number of processor cores, and each binary image block is distributed to different processor cores for run-length encoding processing, so that the processing efficiency of the run-length encoding is improved.
Another embodiment of the image processing method provided by the present application may specifically include:
S21, acquiring an original binary image.
S22, the original binary image is segmented according to the height of the original binary image and the number of processor cores, and a plurality of binary image blocks are obtained.
S23, distributing the binary image blocks to the corresponding processor cores, so that the processor cores perform run length coding on the binary image blocks according to the row direction, and obtaining run length codes corresponding to the binary image blocks.
S24, the binary image block data are loaded into the register in batches line by line, and whether the target line data of the currently stored binary image block are all 1 data is judged in the register.
Specifically, the image processing terminal loads the binary image blocks line by line into the SIMD register by using the SIMD instruction according to the size of the SIMD (Single Instruction Multiple Data, single instruction multiple data stream) register, and judges whether the target line data of the currently stored binary image block is all 1 data or not using the SIMD instruction in the SIMD register.
If yes, go to S25. If not, the process goes to S26.
Alternatively, the SIMD instructions may include an SSE (Streaming SIMD Extensions, single instruction multiple data stream extension) instruction, an AVX2 instruction (Advanced Vector Extensions, advanced vector extension instruction set), without limitation herein.
In some embodiments, the image processing terminal loads the binary image blocks into the XMM register in batches line by line through the SSE instruction, and determines whether the target line data of the currently stored binary image block is all 1 data in the XMM register. The size of the XMM register is 128 bits, so that the image processing terminal can load binary image block data of 16Byte at a time.
In some embodiments, the image processing terminal loads the binary image blocks into the YMM register in batches line by line through the AVX2 instruction, and determines whether the target line data of the currently stored binary image block is all 1 data in the YMM register. The size of the YMM register is 256 bits, so the image processing terminal can load binary image block data of 32 bytes at a time.
And S25, if so, continuing loading until the data is 0.
If the judgment result is yes, the image processing terminal loads the data of the next group of binary image blocks and judges again. Until it is determined that 0 data exists in a certain set of binary image blocks.
S26, if not, acquiring a starting position or an ending position in the target line data to obtain the stroke code.
Specifically, if the target line data of the currently loaded binary image block is not all 1 data, the image processing terminal obtains a starting position or an ending position of data 0 in the target line data, and at least one run code of the line is obtained.
Referring to fig. 4 to 6 for detailed execution steps of S22 to S26, fig. 4 to 6 are schematic diagrams of the process of performing run-length encoding on the first line of fig. 3.
The image processing terminal may run-length encode the loaded binary image block using an SSE instruction or an AVX2 instruction. If the image processing terminal uses SSE instructions to carry out run-length coding processing on the loaded binary image blocks, because each pixel in the binary image blocks occupies 8-bit register space, the length of an xmm register corresponding to the SSE instructions is 128 bits, one SSE instruction can process 16 columns of data; if the image processing terminal uses the AVX2 instruction to perform run length encoding processing on the loaded binary image block, since the ymm register length corresponding to the AVX2 instruction is 256 bits, one SSE instruction can process 32 columns of data.
As shown in fig. 4, the image processing terminal performs run-length encoding processing on the binary image block loaded with the first line using the SSE instruction.
Specifically, the image processing terminal loads the first 16 columns of data in the first row into the xmm register, that is, loads the 1 st column to the 16 th column of data into the xmm register, as shown in fig. 4. The image processing terminal uses the SSE instruction to determine whether all of the registers are data 1. It will be appreciated that the data currently loaded by the xmm register is not all 1. The image processing terminal further determines the position of the first data 1 to obtain xs=5.
Further, the image processing terminal loads the post 16-column data from the 6 th column into the xmm register, that is, loads the 6 th column to the 21 st column data into the xmm register, as shown in fig. 5. The image processing terminal then uses the SSE instruction to determine whether all the data in the xmm register are data 1, and it can be understood that all the data loaded in the current xmm register are data 1, so that the image processing terminal continues to load the next set of data.
Still further, the image processing terminal loads the post 16 columns of data into the xmm register from the 22 nd column, that is, loads the 22 nd column to the 37 th column of data into the xmm register, as shown in fig. 6. Since the image width is 34 pixels, the 35 th column to 37 th column data loaded into the xmm register is set to 0 directly. At this time, there is data containing 0 in the xmm register, and the image processing terminal judges that the 8 th bit is the first formed end position, and as known from the loading process, xe=5+16+8=29, and the run code run 1= { (1,5,29), (1, 33, 34) } of the first line is derived by this.
And S27, carrying out row-direction corrosion and/or expansion treatment on the original binary image by utilizing the structural element matrix based on the stroke coding to obtain a first corrosion result and/or a first expansion result corresponding to the original binary image.
And S28, performing column-direction corrosion treatment based on the first corrosion result to obtain a second corrosion result, and/or performing column-direction expansion treatment based on the first expansion result to obtain a second expansion result.
And S29, taking the second corrosion result and/or the second expansion result as a binary morphology calculation result of the original binary image.
According to the scheme, the corrosion and/or expansion processing in the row direction is performed based on the stroke code of the binary image, the corrosion and/or expansion processing efficiency in the row direction is improved, the corrosion and/or expansion processing in the column direction is performed based on the first corrosion result and/or the first expansion result in the row direction, the corrosion and/or expansion processing in the column direction is not required to be independently performed again, the corrosion and/or expansion processing efficiency in the column direction is improved, and the efficiency of binary morphological calculation on the binary image is improved. Further, the calculation mode of the run length coding is optimized, and the processing efficiency of the run length coding is improved.
Another embodiment of the image processing method provided by the present application may specifically include:
s31, acquiring an original binary image.
S32, performing run-length coding on the original binary image according to the row direction to obtain the run-length coding corresponding to the original binary image.
S33, acquiring a starting position and an ending position in the target stroke code.
Specifically, the image processing terminal acquires a start position and an end position in the run code of each line, wherein the start position and the end position of the run code of each line can be respectively multiple.
And S34, determining an etching starting position by using the etching radius and the starting position, and determining an etching ending position by using the etching radius and the ending position, thereby obtaining the etching stroke code.
Wherein the corrosion radius is based on a matrix of structural elements.
Illustratively, use d 1 ,d 2 ,…,d m The i-m/2, …, i, … and i+m/2 are respectively corroded in the row direction, and the corrosion result of each row is recorded as LR i-m/2 ,…,LR i ,…,LR i+m/2 . After each line of data of the original binary image is subjected to the run coding, only the starting position and the ending position of each run are considered in the line direction, and if the current run is (y, xs, xe) and the corresponding corrosion radius is r, the corrosion coding of the current run is (y, xs+r, xe-r).
And S35, if the corrosion starting position is larger than the corrosion ending position, removing the corrosion stroke code.
Specifically, if the corrosion start position in a certain corrosion trip code is greater than the corrosion end position, the image processing terminal removes the corrosion trip code.
Illustratively, for a certain erosion run code (y, xs+r, xe-r), if:
xs+r>xe-r,
the image processing terminal removes the erosion run code.
And S36, performing row-direction corrosion treatment by using corrosion stroke codes to obtain a first corrosion result corresponding to the original binary image.
And S37, performing column-direction corrosion treatment based on the first corrosion result to obtain a second corrosion result.
It will be appreciated that if the erosion operation for row i is the result of the co-action of rows i-m/2, …, i, …, i+m/2, then the erosion operation for row i+1 is the result of the co-action of rows i-m/2+1, …, i, …, i+m/2+1. Thus, the partial results calculated from row i may be reused when iterating from row i to row i+1. For example, when calculating the i-th line corrosion operation result, the i-m/2+1-th line corrosion operation is required, and the corresponding corrosion kernel size is d2, and when calculating the i+1-th line corrosion operation result, the i-m/2+1-th line corrosion operation is also required, and the corresponding corrosion kernel size is d1, so if d1 and d 2 Equal, the row does not need to be repeatedly calculated for the row-wise erosion operation, and so on. Finally, performing corrosion operation along the column direction to obtain a corrosion operation result of the (i+1) th row. Wherein the corrosion result of the (i+1) th row is
S38, taking the second corrosion result as a binary morphology calculation result of the original binary image.
According to the scheme, the corrosion and/or expansion processing in the row direction is performed based on the stroke code of the binary image, the corrosion and/or expansion processing efficiency in the row direction is improved, the corrosion and/or expansion processing in the column direction is performed based on the first corrosion result and/or the first expansion result in the row direction, the corrosion and/or expansion processing in the column direction is not required to be independently performed again, the corrosion and/or expansion processing efficiency in the column direction is improved, and the efficiency of binary morphological calculation on the binary image is improved.
Another embodiment of the image processing method provided by the present application may specifically include:
s41, acquiring an original binary image.
S42, performing run-length coding on the original binary image according to the row direction to obtain the run-length coding corresponding to the original binary image.
S43, acquiring a starting position and an ending position in the target stroke code.
And S44, determining an expansion starting position by using the expansion radius and the starting position, and determining an expansion ending position by using the expansion radius and the ending position, thereby obtaining the expansion stroke code.
Wherein the expansion radius is based on a matrix of structural elements.
Illustratively, d is the matrix of structural elements 1 ,d 2 ,…,d m The i-m/2, …, i, …, i+m/2 are expanded in the row direction, and the expansion result of each row is LD i-m/2 ,…,LD i ,…,LD i+m/2 . After each line of the binary image is subjected to stroke coding, only the starting position and the ending position of each stroke are considered in the expansion in the line direction, the stroke run is (y, xs, xe), the expansion radius is r, and the expansion result of the stroke run is (y, xs-r, xe+r).
And S45, if the expansion stroke code is overlapped with the previous stroke code of the target stroke code, combining the expansion stroke code and the previous stroke code.
In some embodiments, if the current expansion stroke code overlaps with a previous expansion stroke code in the same line, for example, the expansion end position of the previous expansion stroke code is greater than the start position of the current expansion stroke code, the image processing terminal performs a merging operation on the current expansion stroke code and the previous expansion stroke code.
Taking the example of line 4 of FIG. 3, assuming a morphological kernel size of 3, the dilation radius is 1 and the run code of line 4 is run 4 = { (4, 11, 17), (4, 20, 24)), the expansion result is { (4, 11-1, 17+1), (4, 20-1, 24+1)), that is { (4, 10, 18), (4, 19, 25) }, the expansion result of line 4 is shown in fig. 7, and fig. 7 is a schematic diagram after the expansion process is performed on line 4 of fig. 3.
Since the expanded strokes are already connected together, they can be combined into one stroke, and the combined strokes are { (4, 10, 25) }, and therefore, the strokes after expansion in the row direction are connected, all need to be combined. It will be appreciated that if the morphology kernel is particularly large, it is also possible that non-adjacent strokes of the same row may be connected or overlapped after expansion, and that it is also necessary to merge them.
And S46, performing row-direction expansion processing by using the expansion stroke code to obtain a first expansion result corresponding to the original binary image.
S47, performing column-direction expansion processing based on the first expansion result to obtain a second expansion result.
It will be appreciated that if the morphology of row i is the result of row i-m/2, …, i, …, i+m/2 acting together, then the morphology of row i+1 is the result of row i-m/2+1, …, i, …, i+m/2+1 acting together. Thus, the partial results calculated from row i may be reused when iterating from row i to row i+1. For example, when calculating the morphological operation result of the ith row, the morphological operation is required to be performed on the ith-m/2+1 row in the row direction, and the corresponding morphological kernel size is d 2 When calculating the morphological operation result of the (i+1) th row, the morphological operation is also required to be performed on the (i-m/2+1) th row in the row direction, and the corresponding morphological kernel size is d 1 Thus, if d 1 And d 2 Equal, the morphological operation of the row in the row direction need not be repeated, and so on. And finally, carrying out morphological operation along the column direction to obtain a morphological operation result of the (i+1) th row. The expansion result of line i+1 is
S48, taking the second expansion result as a binary morphology calculation result of the original binary image.
According to the scheme, the corrosion and/or expansion processing in the row direction is performed based on the stroke code of the binary image, the corrosion and/or expansion processing efficiency in the row direction is improved, the corrosion and/or expansion processing in the column direction is performed based on the first corrosion result and/or the first expansion result in the row direction, the corrosion and/or expansion processing in the column direction is not required to be independently performed again, the corrosion and/or expansion processing efficiency in the column direction is improved, and the efficiency of binary morphological calculation on the binary image is improved.
An embodiment of an image processing method according to the present application may specifically include:
referring back to fig. 2, the radius of the structural element matrix shown in fig. 2 is 2.5, and the morphological kernel size of each row is d 1 =3、d 2 =5、d 3 =5、d 4 =5、d 5 =3, morphology kernel radii r respectively 1 =1、r 2 =2、r 3 =2、r 4 =2、r 5 =1。
Referring to fig. 8, fig. 8 is a schematic diagram of an embodiment of an original binary image obtained by an image processing terminal.
As shown in fig. 8, the original binary image obtained by the image processing terminal includes a foreground object, and the size of the outsourcing rectangle of the foreground object is 10x10. The gray area corresponds to a pixel with a pixel value of 1, and the white area corresponds to a pixel with a pixel value of 0.
Specifically, the image processing terminal performs run length encoding on the original binary image in fig. 8 according to the row direction, and the obtained runs of each row are respectively:
run 4 ={(4,4,7),(4,13,13)),
run 5 ={(5,4,7),(5,10,12)),
run 6 ={(6,4,5),(6,10,12)),
run 7 ={(7,4,5),(7,10,12)),
run 8 ={(8,4,5),(8,9,10)},
run 9 ={(9,4,5),(9,9,10)),
run 10 ={(10,4,10)),
run 11 ={(11,4,13)},
run 12 ={(12,4,13)},
run 13 ={(13,7,13)},
the expanded target minimum bounding rectangle size is 14×14, and therefore the expanded stroke LD needs to be calculated row by row 2 ,…,LD 15 。LD 2 The calculation process of (1) is to run respectively 0 、run 1 、run 2 、run 3 、run 4 The continuous 5-line process performs line-direction expansion, and the line-direction expansion cores are respectively d in size 1 =3、d 2 =5、d 3 =5、d 4 =5、d 5 =3, then the union operation is performed on the results after the expansion in the row direction, specifically:
due to run 0 、run 1 、run 2 、run 3 Is an empty set, and:
finally, adjusting the y coordinate in the run length code to obtain the LD 2 = { (2, 3, 8), (2, 12, 14) }. Referring to fig. 9, fig. 9 is a schematic diagram showing the result of performing the expansion process from fig. 8 to line 2. The light gray area is an area with a new value of 1 after expansion.
By analogy, can be obtained:
also, there are:
namely LD 3 ={(3,2,15)}。
Referring to fig. 10, fig. 10 is a schematic diagram showing the result of performing the expansion process to line 3 in fig. 8. The light gray area is an area with a new value of 1 after expansion.
The same principle can be obtained:
due to run 2 、run 3 Is an empty set, and therefore:
and d 3 =d 4 Thus, it isAt this time->Direct use of computational LD without re-computation 3 Time pair->Is calculated as follows: />
Finally obtain LD 4 = { (4,2,15) }. As shown in fig. 11, fig. 11 is a schematic diagram showing the result of performing the expansion process to line 4 in fig. 8. The light gray area is an area with a new value of 1 after expansion.
With such a push, the expansion processing is performed row by row to obtain the final expansion result as shown in fig. 12. Fig. 12 is a schematic diagram of the end result of the expansion process performed in fig. 8. The light gray area is an area with a new value of 1 after expansion.
According to the scheme, the corrosion and/or expansion processing in the row direction is performed based on the stroke code of the binary image, the corrosion and/or expansion processing efficiency in the row direction is improved, the corrosion and/or expansion processing in the column direction is performed based on the first corrosion result and/or the first expansion result in the row direction, the corrosion and/or expansion processing in the column direction is not required to be independently performed again, the corrosion and/or expansion processing efficiency in the column direction is improved, and the efficiency of binary morphological calculation on the binary image is improved.
Another embodiment of the image processing method provided by the present application may specifically include:
S51, acquiring an original binary image.
S52, performing run-length coding on the original binary image according to the row direction to obtain the run-length coding corresponding to the original binary image.
And S53, performing row-direction corrosion and/or expansion processing on the original binary image by utilizing the structural element matrix based on the stroke coding to obtain a first corrosion result and/or a first expansion result corresponding to the original binary image.
S54, for the second corrosion result of the i-th row, an intersection of the first corrosion results based on the consecutive m-row directions is obtained.
Wherein m is obtained based on the structural element matrix, and i and m are positive integers.
Specifically, the image processing terminal performs corrosion operation on the first corrosion result in the column direction to calculate an intersection of the first corrosion results in m consecutive rows, so as to obtain the first corrosion result, wherein m is the height of the structural element matrix.
Illustratively, the corrosion results for row i are:
taking the corresponding structural element matrix SE of fig. 2 as an example, the corrosion result of the i-th row is:
s55, for the second expansion result of the i-th row, a union of the first expansion results based on the consecutive m-row directions is obtained.
Wherein m is obtained based on the structural element matrix, and i and m are positive integers.
Specifically, the image processing terminal performs expansion operation in the column direction on the first expansion result to calculate a union of m consecutive rows of the first expansion result, so as to obtain a second expansion result, wherein m is the height of the structural element matrix.
Illustratively, the expansion of row i results in:
taking the corresponding structural element matrix SE of fig. 2 as an example, the expansion result of the i-th row is:
and S56, taking the second corrosion result and/or the second expansion result as a binary morphology calculation result of the original binary image.
According to the scheme, the corrosion and/or expansion processing in the row direction is performed based on the stroke code of the binary image, the corrosion and/or expansion processing efficiency in the row direction is improved, the corrosion and/or expansion processing in the column direction is performed based on the first corrosion result and/or the first expansion result in the row direction, the corrosion and/or expansion processing in the column direction is not required to be independently performed again, the corrosion and/or expansion processing efficiency in the column direction is improved, and the efficiency of binary morphological calculation on the binary image is improved. Further, after morphological operation is performed on the binary image in the row direction, intersection and/or union operation is performed on the basis of the first corrosion result and/or the first expansion result, so that a final morphological result is obtained, and the efficiency of morphological calculation is improved.
With continued reference to fig. 13, fig. 13 is a schematic structural diagram of an embodiment of a terminal device according to the present application. The terminal device 500 of the embodiment of the present application includes a processor 51, a memory 52.
The processor 51 and the memory 52 are connected to the bus, and the memory 52 stores program data, and the processor 51 is configured to execute the program data to implement the image processing method according to the above embodiment.
In an embodiment of the present application, the processor 51 may also be referred to as a CPU (Central Processing Unit ). The processor 51 may be an integrated circuit chip with signal processing capabilities. Processor 51 may also be a general purpose processor, a digital signal processor (DSP, digital Signal Process), an application specific integrated circuit (ASIC, application Specific Integrated Circuit), a field programmable gate array (FPGA, field Programmable Gate Array) or other programmable logic device, discrete gate or transistor logic device, discrete hardware components. The general purpose processor may be a microprocessor or the processor 51 may be any conventional processor or the like.
The present application further provides a computer storage medium, please continue to refer to fig. 14, fig. 14 is a schematic structural diagram of an embodiment of the computer storage medium provided by the present application, the computer storage medium 600 stores program data 61, and the program data 61 is used to implement the image processing method of the above embodiment when being executed by a processor.
Embodiments of the present application may be stored in a computer readable storage medium when implemented in the form of software functional units and sold or used as a stand alone product. Based on such understanding, the technical solution of the present application may be embodied in essence or a part contributing to the prior art or all or part of the technical solution in the form of a software product stored in a storage medium, including several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor (processor) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
The foregoing description is only of embodiments of the present application, and is not intended to limit the scope of the application, and the equivalent structures or equivalent processes disclosed in the specification and the drawings are used in the same way or directly or indirectly in other related technical fields, which are also included in the scope of the application.

Claims (11)

1. An image processing method, the method comprising:
acquiring an original binary image;
performing run length coding on the original binary image according to the row direction to obtain a run length code corresponding to the original binary image;
performing row-direction corrosion and/or expansion treatment on the original binary image by utilizing a structural element matrix based on the stroke code to obtain a first corrosion result and/or a first expansion result corresponding to the original binary image;
performing column-direction corrosion treatment based on the first corrosion result to obtain a second corrosion result, and/or performing column-direction expansion treatment based on the first expansion result to obtain a second expansion result;
and taking the second corrosion result and/or the second expansion result as a binary morphology calculation result of the original binary image.
2. The method according to claim 1, wherein the performing run-length encoding on the original binary image according to the row direction to obtain a run-length encoding corresponding to the original binary image includes:
partitioning the original binary image according to the height of the original binary image and the number of processor cores to obtain a plurality of binary image blocks;
Distributing the plurality of binary image blocks to corresponding processor cores so that the processor cores perform run length coding on the binary image blocks according to the row direction to obtain run length codes corresponding to the binary image blocks;
and integrating the run length codes corresponding to the binary image blocks to obtain the run length codes corresponding to the original binary image.
3. The method according to claim 2, wherein the performing run-length encoding on the binary image block to obtain a run-length encoding corresponding to the binary image block includes:
the method comprises the steps of loading binary image block data into a register line by line in batches, and judging whether target line data of a currently stored binary image block are all 1 data in the register;
if not, acquiring a starting position or a termination position in the target line data to obtain a travel code; if so, loading is continued until a data of 0 appears.
4. The method according to claim 1, wherein the performing, based on the run-length encoding, a line-direction erosion process on the original binary image using a structure element matrix to obtain a first erosion result corresponding to the original binary image includes:
Acquiring a starting position and an ending position in a target travel code;
determining a corrosion starting position by using the corrosion radius and the starting position, and determining a corrosion ending position by using the corrosion radius and the ending position, so as to obtain a corrosion stroke code; wherein the erosion radius is derived based on the matrix of structural elements;
and performing row-direction corrosion treatment by using the corrosion stroke code to obtain a first corrosion result corresponding to the original binary image.
5. The method according to claim 4, wherein before performing the line-direction etching process using the etching pass code to obtain the first etching result corresponding to the original binary image, the method comprises:
and if the corrosion starting position is larger than the corrosion ending position, removing the corrosion stroke code.
6. The method according to claim 1, wherein the performing, based on the run-length encoding, a line-direction expansion process on the original binary image using a structure element matrix to obtain a first expansion result corresponding to the original binary image includes:
acquiring a starting position and an ending position in the travel code;
determining an expansion starting position by using the expansion radius and the starting position, and determining an expansion ending position by using the expansion radius and the ending position, thereby obtaining an expansion stroke code; wherein the expansion radius is derived based on the matrix of structural elements;
And performing row-direction expansion processing by using the expansion stroke code to obtain a first expansion result corresponding to the original binary image.
7. The method according to claim 6, wherein the performing the line-direction expansion processing using the expansion stroke code includes, before obtaining the first expansion result corresponding to the original binary image:
and if the expansion stroke code is overlapped with the previous stroke code of the target stroke code, combining the expansion stroke code and the previous stroke code.
8. The method of claim 1, wherein the performing a column-wise etching process based on the first etching result to obtain a second etching result comprises:
and obtaining second corrosion results of the ith row based on intersection of first corrosion results in the direction of m rows, wherein m is obtained based on the structural element matrix, and i and m are positive integers.
9. The method of claim 1, wherein performing the column-wise expansion process based on the first expansion result to obtain a second expansion result comprises:
and obtaining a second expansion result of the ith row based on a union of the first expansion results in the direction of m rows, wherein m is obtained based on the structural element matrix, and i and m are positive integers.
10. Terminal equipment, characterized in that it comprises a processor, a memory connected to the processor, wherein,
the memory stores program instructions;
the processor is configured to execute program instructions stored in the memory to implement the method of any one of claims 1 to 9.
11. A computer readable storage medium, characterized in that the storage medium stores program instructions which, when executed, implement the method of any one of claims 1 to 9.
CN202310391044.0A 2023-04-06 2023-04-06 Image processing method, terminal device and computer storage medium Pending CN116579957A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310391044.0A CN116579957A (en) 2023-04-06 2023-04-06 Image processing method, terminal device and computer storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310391044.0A CN116579957A (en) 2023-04-06 2023-04-06 Image processing method, terminal device and computer storage medium

Publications (1)

Publication Number Publication Date
CN116579957A true CN116579957A (en) 2023-08-11

Family

ID=87538547

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310391044.0A Pending CN116579957A (en) 2023-04-06 2023-04-06 Image processing method, terminal device and computer storage medium

Country Status (1)

Country Link
CN (1) CN116579957A (en)

Similar Documents

Publication Publication Date Title
JP2974061B2 (en) Pattern extraction device
CN108337551B (en) Screen recording method, storage medium and terminal equipment
US4853971A (en) Method and apparatus for processing image data
JP3026698B2 (en) Image processing method and apparatus
US6333788B1 (en) Image processing apparatus and method
CN105516540A (en) Compression method and device of binary image
CN110555863A (en) moving object detection method and device and computer readable storage medium
JPH04315272A (en) Graphic recognizing device
CN116579957A (en) Image processing method, terminal device and computer storage medium
CN112541370A (en) QR code position detection graph positioning method based on FPGA
CN111445411A (en) Image denoising method and device, computer equipment and storage medium
US10713753B2 (en) Data processing systems
CN111862084B (en) Image quality evaluation method, device and storage medium based on complex network
JP2010541094A (en) Method, compressor, decompressor and signal representation for lossless compression of pixel block values using row tilt codewords and column tilt codewords
JP2008158847A (en) Image distribution device and image distribution method
CN114596374A (en) Image compression method and device
JP3509397B2 (en) Markov model image coding device
Zhu et al. A new image thresholding method based on relative entropy
JPH03177982A (en) Image processing method
JPH1127540A (en) Image coding/decoding method and its system
CN110837575B (en) Method and device for generating transmission characteristic information of video image
CN111435416B (en) Multi-pipeline-based bar code image analysis method, device and storage medium
JP3162918B2 (en) Image processing apparatus and method
JP3733154B2 (en) Image processing apparatus and method
JPH05342340A (en) Method for picture processing and device therefor

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination