CN102194202A - Image processing equipment and method - Google Patents

Image processing equipment and method Download PDF

Info

Publication number
CN102194202A
CN102194202A CN2010101165889A CN201010116588A CN102194202A CN 102194202 A CN102194202 A CN 102194202A CN 2010101165889 A CN2010101165889 A CN 2010101165889A CN 201010116588 A CN201010116588 A CN 201010116588A CN 102194202 A CN102194202 A CN 102194202A
Authority
CN
China
Prior art keywords
integrogram
pixel
pixels
block
sequence
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
CN2010101165889A
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to CN2010101165889A priority Critical patent/CN102194202A/en
Publication of CN102194202A publication Critical patent/CN102194202A/en
Pending legal-status Critical Current

Links

Images

Abstract

The invention discloses image processing equipment and method. The image processing equipment comprises a calculation device, a storage device, a control device and a processing device, wherein the calculation device is used for calculating an integrogram of each pixel block, which is indicated by the control device; the storage device is used for storing the calculated integrograms; the control device is used for determining each pixel block in the pixel blocks with same sizes in the image in sequence and indicating the pixel blocks to the calculation device; the processing device is used for executing the image processing respectively according to the integrogram of each pixel block; the calculation device comprises a writing unit, a reading unit and a calculation unit; the writing unit is used for storing the calculated integrograms into the storage device; and the reading unit is used for reading pixel values and the integrograms of adjacent pixels specific to each unknown pixel in the integrogram of the current indicated pixel block under the condition that an integrogram relationship exists between the pixel value of the image and the integrograms of the adjacent pixels of the pixels in the storage device and the integrograms of the pixels; and the calculation unit is used for calculating the integrogram of the pixel according to the integrogram relationship, the read integrogram and the pixel value.

Description

Image processing equipment and method
Technical field
The present invention relates to image processing techniques, relate in particular to the image processing equipment and the image processing method that adopt the integrogram method.
Background technology
Along with constantly popularizing that video monitoring, artificial intelligence, computer vision etc. are used, to the demands for higher performance of image processing techniques.In image processing process, often need carry out computing to the gray-scale value of regular domain (rectangle or rotation rectangle) interior pixel.For example in object detection and identification application, scan on image with a fixed-size window, extract feature (for example Harr category feature) according to the gray-scale value of window interior pixel, and the sorter that the feature input of extracting is trained with detect or identification window in object.
The integrogram method is used in the computing that the gray-scale value of this rule-based regional interior pixel carries out usually.The thought of integrogram can be referring to the article " RobustReal-time Object Detection " of Paul Viola and Michael Jones, Second International Workshop OnStatistical And Computational Theories Of Vision-Modeling, Learning, Computing, And Sampling, Vancouver, Canada, July 13,2001.It is applied in the real-time object detection framework, demonstrate its gray-scale value at regular domain interior pixel collection add with computing on advantage.
The integrogram method needs the integrogram of the pixel of computed image in advance, thereby also the performance of Flame Image Process is brought influence.Under the bigger situation of picture size, the calculated amount of the integrogram of each pixel is higher in the image, and the storage of integrogram needs more storage space.
Summary of the invention
The present invention aims to provide a kind of image processing equipment and image processing method, and it improves the performance of Flame Image Process by the mode of improving the formation product component.
One embodiment of the present of invention are a kind of image processing equipments, comprise calculation element, memory storage, control device and treating apparatus.Calculation element can calculate the integrogram by the block of pixels of control device indication.Memory storage can be stored the integrogram that is calculated.Control device can be determined each block of pixels in a plurality of block of pixels of same size in the image in order and indicate this block of pixels to calculation element.According to such order, one of picture altitude and Width, promptly on the first direction the identical block of pixels in position by wherein another, promptly the positional alignment on the second direction is a sequence.Each sequence is arranged by the ascending order of positional value on first direction.Adjacent pixel blocks is joined each other or is overlapped in the same sequence, and the position range of flanking sequence on first direction joins each other or overlap.Treating apparatus comes carries out image processing according to the integrogram of each block of pixels respectively.Calculation element can comprise r/w cell, read unit and computing unit.R/w cell can store the integrogram that is calculated into memory storage.Reading the unit can be at each pixel of integrogram the unknown in the block of pixels of current indication, the integrogram of the integrogram of the neighbor of this pixel and this pixel exists under the situation of integrogram relation in the pixel value of image and memory storage, the integrogram of read pixel value and neighbor.Computing unit can be according to this integrogram relation and the integrogram that is read and the integrogram of this pixel of calculated for pixel values.
In the further embodiment of above-mentioned image processing equipment, the capacity of memory storage can be not enough to store the integrogram of the pixel of all block of pixels.R/w cell can also be at each integrogram that computing unit calculated, with the position of satisfying following condition in this integrogram write storage device: the integrogram of not storing the block of pixels of current indication in this position, if perhaps store the integrogram of the block of pixels that does not belong to current indication in this position, then the respective pixel of this integrogram is with the pixel of calculated product component is not adjacent as yet in the block of pixels of current indication.
In the further embodiment of above-mentioned image processing equipment, can also comprise snubber assembly, its off-capacity is with the integrogram of storage than the more pixel of pixel of arranging along second direction in the image.R/w cell can also in each block of pixels of the sequence of current calculating on first direction the position identical and join with the block of pixels of next sequence or be arranged in each pixel of the block of pixels of next sequence, it is the buffering pixel of next sequence, the integrogram of the buffering pixel calculated is write the position of satisfying following condition in the described snubber assembly: the integrogram of not storing described buffering pixel in described position, do not belong to described buffering pixel if perhaps store integrogram and described integrogram in described position, then the respective pixel of the integrogram of described position is with the pixel of calculated product component is not adjacent as yet in the block of pixels of current sequence.Read unit further under the situation that the respective pixel of the integrogram of the block of pixels of current indication and buffer means stores overlaps, read the block of pixels of current indication the not integrogram of the pixel in memory storage of integrogram from snubber assembly, and for the pixel in described memory storage not of integrogram in the block of pixels of current indication, pixel value at image, between the integrogram integrogram of this pixel and described buffer means stores and this pixel adjacent pixels, perhaps at the pixel value of image, the integrogram of this pixel, there is under the situation of integrogram relation the integrogram of read pixel value and neighbor in integrogram described buffer means stores and this pixel adjacent pixels and the described memory storage and between the integrogram of this pixel adjacent pixels.Under the situation that computing unit can also overlap in the respective pixel of the integrogram of the block of pixels of current indication and buffer means stores, the integrogram that will read from snubber assembly is as the integrogram that is calculated of respective pixel, and at adjacent in the block of pixels of current indication, the integrogram pixel in memory storage not, according to above-mentioned integrogram relation and the integrogram that is read and the integrogram of this pixel of calculated for pixel values with the respective pixel of the integrogram of buffer means stores.
In the further embodiment of above-mentioned image processing equipment, the block of pixels of odd sequence can be arranged by the ascending order of positional value on the second direction.The block of pixels of even sequence can be by the descending sort of positional value on the second direction.Can align with tail block of pixels in a block of pixels of back sequence in the flanking sequence at presequence.Image processing equipment can also comprise pre-snubber assembly.Calculation element can also calculate the integrogram of the pixel of positional value maximum on the second direction that each sequence covered except that first sequence in advance.R/w cell can also be stored in precalculated integrogram in the pre-snubber assembly.Read unit further under the situation that the respective pixel of the block of pixels of current indication and the integrogram of pre-buffer means stores overlaps, read the block of pixels of current indication the not integrogram of the pixel in memory storage of integrogram from pre-snubber assembly.Under the situation that computing unit can also overlap in the respective pixel of the block of pixels of current indication and the integrogram of pre-buffer means stores, the integrogram that will read from pre-snubber assembly is as the integrogram that is calculated of respective pixel.
In the further embodiment of above-mentioned image processing equipment, the capacity of memory storage can only can be stored the integrogram of a block of pixels.
In the further embodiment of above-mentioned image processing equipment, the block of pixels of all sequences can be by the ascending order or the descending sort of positional value on the second direction.Can align with a block of pixels in a block of pixels of back sequence in the flanking sequence at presequence.
In the further embodiment of above-mentioned image processing equipment, the block of pixels of odd sequence can be arranged by one of the ascending order of positional value on the second direction and descending.The block of pixels of even sequence can be arranged by the ascending order of positional value on the second direction and the another kind of descending.Can align with tail block of pixels in a block of pixels of back sequence in the flanking sequence at presequence.
One embodiment of the present of invention are a kind of image processing methods.In the method, determine each block of pixels in a plurality of block of pixels of same size in the image and indicate described block of pixels in order.According to described order, one of picture altitude and Width, promptly on the first direction the identical block of pixels in position by wherein another, promptly the positional alignment on the second direction is a sequence.Each sequence is arranged by the ascending order of positional value on first direction.Adjacent pixel blocks is joined each other or is overlapped in the same sequence, and the position range of flanking sequence on first direction joins each other or overlap.Calculate the integrogram of indicated block of pixels.Integrogram according to each block of pixels comes carries out image processing respectively.Calculating can comprise that the integrogram that will be calculated stores memory storage into; Each pixel at integrogram the unknown in the block of pixels of current indication, there is under the situation that integrogram concerns the integrogram of read pixel value and neighbor at the integrogram of the integrogram of the neighbor of the pixel value of image and this pixel of being stored and this pixel; With the integrogram that concerns according to integrogram and read and the integrogram of this pixel of calculated for pixel values.
In the further embodiment of above-mentioned image processing method, the capacity of memory storage can be not enough to store the integrogram of the pixel of all block of pixels.Storage relates at each integrogram that is calculated, the position of following condition will be satisfied: the integrogram of not storing the block of pixels of current indication in this position in the integrogram write storage device, if perhaps store the integrogram of the block of pixels that does not belong to current indication in this position, then the respective pixel of this integrogram is with the pixel of calculated product component is not adjacent as yet in the block of pixels of current indication.
In the further embodiment of above-mentioned image processing method, can also in each block of pixels of the sequence of current calculating on first direction the position identical and join with the block of pixels of next sequence or be arranged in each pixel of the block of pixels of next sequence, it is the buffering pixel of next sequence, the integrogram of the buffering pixel calculated is write the position of off-capacity to satisfy following condition in the snubber assembly of storage than the integrogram of the more pixel of pixel of arranging along second direction in the described image: the integrogram of not storing described buffering pixel in described position, do not belong to described buffering pixel if perhaps store integrogram and described integrogram in described position, then the respective pixel of the integrogram of described position is with the pixel of calculated product component is not adjacent as yet in the block of pixels of current sequence.Under the situation that the respective pixel of the integrogram of the block of pixels of current indication and buffer means stores overlaps, from snubber assembly read integrogram the block of pixels of current indication not the pixel in memory storage integrogram and with the integrogram that reads the integrogram that is calculated as this pixel.For the pixel in described memory storage not of integrogram in the block of pixels of current indication, pixel value at image, between the integrogram integrogram of this pixel and described buffer means stores and this pixel adjacent pixels, perhaps at the pixel value of image, the integrogram of this pixel, exist in integrogram described buffer means stores and this pixel adjacent pixels and the described memory storage and between the integrogram of this pixel adjacent pixels under the situation of integrogram relation, the integrogram of read pixel value and neighbor, and according to integrogram relation and the integrogram that is read and the integrogram of this pixel of calculated for pixel values.
In the further embodiment of above-mentioned image processing method, the block of pixels of odd sequence can be arranged by the ascending order of positional value on the second direction.The block of pixels of even sequence can be by the descending sort of positional value on the second direction.Can align with tail block of pixels in a block of pixels of back sequence in the flanking sequence at presequence.Can calculate the integrogram of the pixel of positional value maximum on the second direction that each sequence covered except that first sequence in advance.Precalculated integrogram can be stored in the pre-snubber assembly.In the block of pixels of current indication and under the situation that the respective pixel of the integrogram of buffer means stores overlaps in advance, can read the block of pixels of current indication the not integrogram of the pixel in memory storage of integrogram from pre-snubber assembly, and with the integrogram that the read integrogram that is calculated as this pixel.
In the further embodiment of above-mentioned image processing method, the capacity of memory storage can only can be stored the integrogram of a block of pixels.
In the further embodiment of above-mentioned image processing method, the block of pixels of all sequences can be by the ascending order or the descending sort of positional value on the second direction.Can align with a block of pixels in a block of pixels of back sequence in the flanking sequence at presequence.
In the further embodiment of above-mentioned image processing method, the block of pixels of odd sequence can be arranged by one of the ascending order of positional value on the second direction and descending.The block of pixels of even sequence can be arranged by the ascending order of positional value on the second direction and the another kind of descending.Can align with tail block of pixels in a block of pixels of back sequence in the flanking sequence at presequence.
Description of drawings
With reference to below in conjunction with the explanation of accompanying drawing, can understand above and other purpose of the present invention, characteristics and advantage more easily to the embodiment of the invention.In the accompanying drawings, technical characterictic or parts identical or correspondence will adopt identical or corresponding Reference numeral to represent.Needn't go out the size and the relative position of unit in the accompanying drawings according to scale.
The block diagram of Fig. 1 shows the structure of image processing equipment according to an embodiment of the invention.
Fig. 2 shows the synoptic diagram of the scanning of explanation scanning window on image.
Fig. 3 a has schematically shown the arrangement mode of block of pixels in the determined scanning sequency of control device.
Fig. 3 b has schematically shown the various combination of the sortord of flanking sequence.
Fig. 3 c has schematically shown the various combination of the sortord of flanking sequence.
Fig. 4 a is illustrated in the example of the block of pixels sequence under the situation of a kind of combination shown in Fig. 3 b.
Fig. 4 b is illustrated in the example of the block of pixels sequence under the situation of the another kind combination shown in Fig. 3 b.
Fig. 4 c is illustrated in the example of the block of pixels sequence under the situation of a kind of combination shown in Fig. 3 c.
Fig. 4 d is illustrated in the example of the block of pixels sequence under the situation of the another kind combination shown in Fig. 3 c.
The process flow diagram of Fig. 5 shows image processing method according to an embodiment of the invention.
The block diagram of Fig. 6 shows the structure of image processing equipment in accordance with another embodiment of the present invention.
The block diagram of Fig. 7 shows the structure of image processing equipment in accordance with another embodiment of the present invention.
Fig. 8 is the block diagram that the exemplary configurations that wherein realizes computing machine of the present invention is shown.
Embodiment
Embodiments of the invention are described with reference to the accompanying drawings.Should be noted that for purpose clearly, omitted the parts that have nothing to do with the present invention, those of ordinary skills are known and the expression and the description of processing in accompanying drawing and the explanation.
The block diagram of Fig. 1 shows the structure of image processing equipment 100 according to an embodiment of the invention.
As shown in Figure 1, image processing equipment 100 comprises calculation element 102, control device 103, treating apparatus 104 and memory storage 105.Image processing equipment 100 also can comprise image memory device 101.Alternatively, image memory device 101 also can for example be connected with image processing equipment 100 by connection means such as peripheral bus, network, serial ports outside image processing equipment 100.
Image memory device 101 stores image to be processed.For example image memory device 101 can be implemented as the disk storage device such as hard disk, CD, memory card such as SD (Secure Digital Memory) card, CF (Compact Flash) card, memory stick, such as the storer of random access storage device (RAM), flash memory (FLASH MEMORY), or the like.
Image processing equipment 100 usually with a scanning window in the enterprising line scanning of image.Fig. 2 shows the synoptic diagram of the scanning of explanation scanning window 202 on image 201.As shown in Figure 2, image 201 comprises the pixel (shown in lattice) of broad ways X and short transverse Y arrangement.According to the needs of Flame Image Process, scanning window can be moved to the optional position in the image.Here, the position in the image be meant coordinate on Width X and short transverse Y of pixel in the image (x, y).The position of scanning window in image is meant the locations of pixels that certain reference point (for example top left corner apex of the square frame of scanning window 202 among Fig. 2) of scanning window is covered in image.The positional value of scanning window broad ways X or short transverse Y is meant that the x of the pixel that reference point is covered or y sit target value in image.In processing procedure, image processing equipment 100 calculates the integrogram of each pixel in the block of pixels that scanning window 202 covered when location scanning window 202 in image 201.The integrogram of all pixels is called the integrogram of this block of pixels in the block of pixels.Treating apparatus 104 comes carries out image processing according to the integrogram of each block of pixels, such as but not limited to detecting or identifying object, for example people's face, human body, automobile etc. in block of pixels.The size that should be noted that size of images and block of pixels is not limited to size shown in Figure 2, but can determine according to the needs of practical application.
The scanning sequency of control device 103 gated sweep windows 202 in image.That is to say that control device 103 is determined (each block of pixels in a plurality of block of pixels of H * W) (being covered by scanning window 202) of same size in the image by scanning sequency.Control device 103 is to determined each block of pixels of calculation element 102 indications.Correspondingly, the indication about block of pixels in the image of the controlled in order device 103 of calculation element 102.
According to this scanning sequency, one of picture altitude direction Y and Width X, promptly on the first direction the identical block of pixels in position by wherein another, promptly the positional alignment on the second direction is a sequence.Each sequence is arranged by the ascending order of positional value on first direction, and adjacent pixel blocks overlaps each other in the same sequence, and the position range of flanking sequence on first direction joins each other or overlap.Can understand, said here adjacent be meant the order on adjacent.
Fig. 3 a has schematically shown the arrangement mode of block of pixels in the control device 103 determined scanning sequencies, and wherein first direction is picture altitude direction Y, and second direction is picture traverse direction X.Under these circumstances, the position of block of pixels on first direction can represent that the position of block of pixels on second direction can be represented with the x coordinate of reference point (for example top left corner apex) with the y coordinate of reference point (for example top left corner apex).This y coordinate is also represented the position of sequence on first direction under the respective pixel piece.In same sequence, the position (be the y coordinate of reference point) of each block of pixels on first direction (being picture altitude direction Y) is identical.In scanning sequency, the positional value of different sequences on first direction arranged according to ascending order, and promptly the positional value on the first direction is more little, and then its scanning is preferential more.
Alternatively, first direction can be picture traverse direction X, and second direction can be picture altitude direction Y.Under these circumstances, the position of block of pixels on first direction can represent that the position of block of pixels on second direction can be represented with the y coordinate of reference point (for example top left corner apex) with the x coordinate of reference point (for example top left corner apex).This x coordinate is also represented the position of sequence on first direction under the respective pixel piece.In same sequence, the position (be the x coordinate of reference point) of each block of pixels on first direction (being picture altitude direction X) is identical.In scanning sequency, the positional value of different sequences on first direction arranged according to ascending order, and promptly the positional value on the first direction is more little, and then its scanning is preferential more.
No matter how are first direction and second direction, and the adjacent pixel blocks in the same sequence can be joined each other, and promptly both limits overlap, and also can overlap each other.In order to make diagram clear, Fig. 3 a only illustrates the block of pixels 302,303,304,305,306,307,308 of a sequence of scanning window process.Shown in Fig. 3 a, block of pixels 302 overlaps each other with block of pixels 303, and wherein the part of mesh lines mark is the pixel portion of overlapping, and the adjacent pixel blocks in the block of pixels 303 to 308 is joined each other.
In the same sequence each adjacent pixel blocks join and the combination of overlapping relationship is not limited to the situation shown in Fig. 3 a, join arbitrarily and the combination of overlapping relationship but can adopt according to the needs of Flame Image Process in the concrete application.In addition, join in the different sequences with the combination of overlapping relationship can be identical, also can be inequality, this depends on the needs of Flame Image Process in the concrete application.
Each block of pixels can be arranged according to the ascending order of the positional value of block of pixels on second direction or the sortord of descending in the same sequence.The sortord that is adopted in the different sequences can be identical, also can be different.Fig. 3 b has schematically shown the various combination of the sortord of flanking sequence, and wherein first direction is picture altitude direction Y, and second direction is picture traverse direction X.Shown in Fig. 3 b, in the combination of arrow 310 and 311 expressions, in the ascending order of the positional value of piece on the second direction arrangement according to pixels shown in arrow 310 of block of pixels in the presequence, block of pixels descending sort of the positional value of piece on second direction according to pixels shown in arrow 311 in the sequence of back.In the combination of arrow 312 and 313 expressions, in the ascending order of the positional value of piece on the second direction arrangement according to pixels shown in arrow 312 of block of pixels in the presequence, the block of pixels ascending order of the positional value of piece on second direction arrangement according to pixels shown in arrow 313 in the sequence of back.In the combination of arrow 314 and 315 expressions, in the descending sort of the positional value of piece on second direction according to pixels shown in arrow 314 of block of pixels in the presequence, the block of pixels ascending order of the positional value of piece on second direction arrangement according to pixels shown in arrow 315 in the sequence of back.In the combination of arrow 316 and 317 expressions, in the descending sort of the positional value of piece on second direction according to pixels shown in arrow 316 of block of pixels in the presequence, block of pixels descending sort of the positional value of piece on second direction according to pixels shown in arrow 317 in the sequence of back.Preferably, all adjacent odd sequences and even sequence (perhaps, even sequence and odd sequence) can only present a kind of combination in scanning sequency.
Fig. 3 c has schematically shown the various combination of the sortord of flanking sequence, and wherein first direction is picture traverse direction X, and second direction is picture altitude direction Y.Shown in Fig. 3 c, in the combination of arrow 320 and 321 expressions, in the ascending order of the positional value of piece on the second direction arrangement according to pixels shown in arrow 320 of block of pixels in the presequence, block of pixels descending sort of the positional value of piece on second direction according to pixels shown in arrow 321 in the sequence of back.In the combination of arrow 322 and 323 expressions, in the ascending order of the positional value of piece on the second direction arrangement according to pixels shown in arrow 322 of block of pixels in the presequence, the block of pixels ascending order of the positional value of piece on second direction arrangement according to pixels shown in arrow 323 in the sequence of back.In the combination of arrow 324 and 325 expressions, in the descending sort of the positional value of piece on second direction according to pixels shown in arrow 324 of block of pixels in the presequence, the block of pixels ascending order of the positional value of piece on second direction arrangement according to pixels shown in arrow 325 in the sequence of back.In the combination of arrow 326 and 327 expressions, in the descending sort of the positional value of piece on second direction according to pixels shown in arrow 326 of block of pixels in the presequence, block of pixels descending sort of the positional value of piece on second direction according to pixels shown in arrow 327 in the sequence of back.Preferably, all adjacent odd sequences and even sequence (perhaps, even sequence and odd sequence) can only present a kind of combination in scanning sequency.
As previously mentioned, the position range of flanking sequence on first direction joins each other or overlaps.The situation that with the first direction is picture altitude direction Y is an example, is respectively y at presequence and the position range that is listed on the first direction at postorder 1~y 2And y 3~y 4If y 2=y 3, then for joining.If y 2>y 3, then for overlapping.In the example shown in Fig. 3 a, comprise overlapping of block of pixels 308 at presequence and the position range that is listed on the first direction (being picture altitude direction Y) at postorder that comprises block of pixels 308.
In a further embodiment, in the flanking sequence a block of pixels of back sequence can with align at one of two end pixel pieces of presequence and join or overlap.For example, among Fig. 3 a by block of pixels 308 and 309 show the block of pixels 309 of back sequence with align in the head or tail block of pixels 308 of presequence and the relation of overlap (be with mesh lines partly represent the part that overlaps).Alignment and the relation of joining also are to understand easily, do not illustrate at this.Alignment is meant that the pixel of two block of pixels is identical in the scope of the position of second direction.In the combination of different flanking sequence a block of pixels of back sequence with one of two end pixel pieces of presequence join and overlapping relationship can be identical, also can difference.
In a preferred embodiment, all adjacent odd sequences and even sequence (even sequence and odd sequence) only adopt a kind of sortord combination, the sequence interior pixel interblock of all sequences join and the combination of overlapping relationship mutually the same, and in the combination of different flanking sequences in a block of pixels of back sequence with identical with overlapping relationship in joining of one of two end pixel pieces of presequence.Further, adjacent pixel blocks is to join each other or be and overlaps each other in the sequence of all sequences, and under situation about overlapping, overlapping measure-alike.Optional or further, in the different flanking sequence combinations a block of pixels of back sequence be the relation of joining or be overlapping relationship at one of two end pixel pieces of presequence, and it is measure-alike to overlap under situation about overlapping.
Get back to Fig. 1, control device 103 can be determined block of pixels in order and indicate determined each block of pixels of arranging in order to calculation element 102.Calculation element 102 can calculate the integrogram by the block of pixels of control device 103 indications, the i.e. integrogram of each pixel in the block of pixels.
The integrogram of the block of pixels that memory storage 105 can storage computation device 102 be calculated.Preferably, the access speed of memory storage 105 is faster than image memory device 101.For example, in a specific implementation, image memory device 101 can be the External memory equipment such as hard disk or CF card, and memory storage 105 can be the internal memory such as RAM.In another specific implementation, image memory device 101 can be the internal memory such as RAM, and memory storage 105 can be the storer faster such as high-speed cache.
As shown in Figure 1, calculation element 102 comprises and reads unit 1021, r/w cell 1022 and computing unit 1023.
R/w cell 1022 can store the integrogram of the block of pixels calculated in the memory storage 105 into.
Reading unit 1021 can be at each pixel p of integrogram the unknown in the block of pixels of current indication, the neighbor p of the pixel p of storage in the pixel value of the image of image memory device 101 storages and memory storage 105 AdjThe integrogram and the integrogram of pixel p exist under the situation of integrogram relation, read the related pixel value of this integrogram relation and the integrogram of neighbor.
Integrogram can be vertical integrogram, also can be the rotation integrogram.For example, Paul Viola and Michael Jones are at " Robust Real-time Obj ect Detection ", SecondInternational Workshop On Statistical And Computational Theories OfVision-Modeling, Learning, Computing, And Sampling, Vancouver, Canada, July 13, vertical integrogram has been described in 2001, and people such as R.Lienhart are at " Empirical Analysis of Detection Cascades of Boosted Classifiers forRapid Object Detection ", Intel Coiporation, Santa Clara, USA has described the rotation integrogram in 2002.
Suppose that pixel in the image is expressed as that (x, y), wherein x, y are respectively two orthogonal directionss at image, the position on directions X for example shown in Figure 2 and the Y direction, i.e. coordinate.
According to the definition of vertical integrogram, pixel (x, integrogram y)
II ( x , y ) = Σ i ≤ x , j ≤ y I ( i , j )
Wherein, I (i, j) remarked pixel (i, pixel value j).
According to the definition of vertical integrogram, for certain pixel (x, y), its integrogram can with the i≤x that satisfies condition, the integrogram of other pixel of j≤y and/or pixel value form the equation relation.For example,
II(x,y)=I(x,y)+II(x-1,y)+II(x,y-1)-II(x-1,y-1) (1)
II (x, y)=II (x, y-1)+S 1(x, y), wherein S 1 ( x , y ) = Σ i ≤ x I ( i , y ) - - - ( 2 )
II (x, y)=II (x-1, y)+S 2(x, y), wherein S 2 ( x , y ) = Σ i ≤ y I ( x , i ) - - - ( 3 )
II(x,y)=II(x-1,y-1)+S 1(x,y)+S 2(x,y)-I(x,y) (4)
Wherein S 1 ( x , y ) = Σ i ≤ x I ( i , y ) , S 2 ( x , y ) = Σ i ≤ y I ( x , i )
Wherein pixel (x-1, y), (x, y-1), (x-1 y-1) is pixel (x, neighbor y).Can understand, II (x-1, y), II (x, y-1), II (x-1, y-1) also can calculate with the formula of integrogram that relates to other pixel and/or pixel value (for example, above-mentioned formula (1), (2), (3), (4) or even directly according to the integrogram definition).With such formula substitute I I (x-1, y), II (x, y-1), II (x-1, y-1) can obtain other equation calculate II (x, y).Such equation is also referred to as the integrogram relation.For the integrogram that relates in the equation and pixel value and respective pixel thereof, we can say the integrogram relation that exists between these integrograms and pixel value corresponding to this equation, or have integrogram relation between these respective pixel corresponding to this equation.
According to the definition of rotation integrogram, pixel (x, integrogram y)
II ( x , y ) = Σ j ≤ y , | x - i | ≤ y - j I ( i , j )
Wherein, I (i, j) remarked pixel (i, pixel value j).
According to the definition of rotation integrogram, for certain pixel (x, y), its integrogram can with the j≤y that satisfies condition, | (i, integrogram j) and/or pixel value form the equation relation to other pixel of x-i|≤y-j.For example,
II(x,y)=II(x-1,y-1)+T 1(x,y-1)+T 1(x+1,y-1)+I(x,y) (5)
Wherein T 1 ( h , k ) = &Sigma; 0 < i &le; k , h + i &le; IMGW - 1 I ( h + i , k - i ) , IMGW is a picture traverse, perhaps
II(x,y)=II(x+1,y-1)+T 2(x,y-1)+T 2(x-1,y-1)+I(x,y) (6)
Wherein T 2 ( h , k ) = &Sigma; 0 < i &le; k , 0 < i &le; h I ( h - i , k - i ) , Perhaps
II(x,y)=II(x,y-1)+T 1(x+1,y-1)+T 2(x-1,y-1)+I(x,y) (7)
Wherein, pixel (x-1, y-1), (x+1, y-1), (x y-1) is pixel (x, neighbor y).Can understand, II (x-1, y-1), II (x+1, y-1), (x y-1) also can calculate with the formula of integrogram that relates to other pixel and/or pixel value (for example, above-mentioned formula (5), (6), (7) or even directly according to the integrogram definition) II.With such formula substitute I I (x-1, y-1), II (x+1, y-1), II (x, y-1) can obtain other equation calculate II (x, y).Such equation is also referred to as the integrogram relation.For the integrogram that relates in the equation and pixel value and respective pixel thereof, we can say the integrogram relation that exists between these integrograms and pixel value corresponding to this equation, or have integrogram relation between these respective pixel corresponding to this equation.
Can understand that in such integrogram relation, the integrogram that calculate is not necessarily on the left side of equation.Correspondence relates to the equation of N amount, as long as N-1 amount is known, just can calculate a unknown amount.
For the pixel of x<0 or y<0 (x, y), I (x, y)=0.Under the situation of vertical integrogram, for the pixel of x<0 or y<0 (x, y), (x y)=0, and reads unit 1021 it is considered as and can obtains from memory storage 105 II; Under the situation of rotation integrogram, (x, y), (x, y)=0, and reading unit 1021 is considered as it can obtain from memory storage 105 II for the pixel of y<0.
Because r/w cell 1022 can store the integrogram of the block of pixels calculated in the memory storage 105 into, therefore, when the integrogram of next block of pixels of beginning control device 103 indication calculated, the integrogram by the last block of pixels of control device 103 indications had been stored in the memory storage 105 at least.The memory capacity that depends on memory storage 105 also may store the integrogram of other block of pixels of formerly being indicated by control device 103 in the memory storage 105.Under the lack of memory capacity of memory storage 105 situation, can adopt various operating strategies (for example first in first out or the like) to come to abdicate storage space for the integrogram that newly calculates with the integrogram of storing all block of pixels.
The calculating of the integrogram of each pixel all uses corresponding integrogram relation.Should be appreciated that for the integrogram relation that relates to N integrogram, if N-1 integrogram is known, then can derive unknown integrogram, wherein involved pixel value can obtain from image memory device 101.In an embodiment of the present invention, related integrogram was the integrogram of neighbor during employed integrogram concerned.
The employed associated quad figure relation of the integrogram of calculating pixel can staticly be determined.For example, the ordinal relation of the block of pixels that will indicate according to control device 103 and the operating strategy of memory storage 105 can determine that when beginning to calculate the integrogram of each block of pixels b, the integrogram of which pixel is stored in the memory storage 105.Correspondingly, for each pixel p among the block of pixels b, can determine whether the integrogram of pixel p is stored in the memory storage 105.Therefore, for each block of pixels b, when the integrogram that can pre-determine block of pixels b calculates beginning among the block of pixels b integrogram be not stored in the pixel p of (integrogram the unknown) in the memory storage 105, promptly need the pixel p of calculated product component.
Can find out according to formula (1)-(7), there is the relation of propagation between the integrogram of neighbor, promptly in such integrogram relation, if related integrogram with pixel p adjacent pixels q integrogram the unknown is known, promptly can obtain, then can know the integrogram of pixel p from memory storage 105.For each pixel of wanting the calculated product component, can determine that the integrogram of which neighbor of each pixel can obtain from memory storage 105.Can specify the integrogram relation for a pixel p, wherein for vertical integrogram, the integrogram relation can be selected from formula (1)-(4), and for the rotation integrogram, the integrogram relation can be selected from formula (5)-(7).Integrogram for other pixel except that pixel p related in the integrable figure relation, if defining integrogram can not obtain from memory storage 105, then use the pixel value that defines based on integrogram and replace this integrogram, thereby obtain final integrogram relation.With can compare for the integrogram of other pixel appointment relation, the expense that reads of reading unit 1021 that is caused for the integrogram relation of pixel p appointment should be lower.When the integrogram of a pixel of new calculating, r/w cell 1022 can be stored in it in memory storage 105, thereby can change from the set of pixels that memory storage 105 obtains integrograms and can determine.So, determine that on this basis the integrogram of next pixel concerns, up to having specified the integrogram relation for the pixel of all integrogram the unknowns.Said sequence also is the order of the integrogram of calculating pixel.Under the identical situation of expense, can select more pixel near the block of pixels left upper apex.
Can understand, if the integrogram that is adopted concerns that related pixel value is few more, then the number of times from image memory device 101 reading of data is just few more, thereby improves computing velocity.As can be seen, in various integrograms relation, need the pixel p of calculated product component among the block of pixels b for current indication, relate to pixel p adjacent pixels p AdjMany more, the pixel value that then relates to is just few more.Therefore, for pixel p, be preferably its appointment and relate to the more pixel p that can obtain from memory storage 105 AdjThe integrogram relation of integrogram.The poorest situation is the integrogram relation that all relates to pixel value.Yet because joining or overlapping relationship between the block of pixels of control device 103 indications, the integrogram relation of pixel not all is a worst condition.
Can make the associated quad figure relation that integrogram, its computation sequence and each pixel that should calculate which pixel in the block of pixels are known in the unit of reading by for example pre-programmed or the configuration means that configuration information is set.
Read unit 1021 and can obtain corresponding preassigned integrogram relation at each pixel p of integrogram the unknown in the block of pixels of current indication.For the integrogram except that the integrogram of pixel p that relates in the integrogram relation, obtain such integrogram from memory storage 105.For the pixel value that relates in the integrogram relation, obtain such pixel value from image memory device 101.
Also can dynamically specify the integrogram relation for pixel.Under these circumstances, image processing equipment 100 can be determined to want in the pixel of calculated product component the pixel adjacent pixels p that can obtain from memory storage 105 with integrogram, and is a pixel p in the pixel p 1Appointment integrogram relation, wherein for vertical integrogram, the integrogram relation can be selected from formula (1)-(4), and for the rotation integrogram, the integrogram relation can be selected from formula (5)-(7).For the related pixel p of removing in the integrable figure relation 1Outside the integrogram of other pixel, can not obtain from memory storage 105 if define integrogram, then use based on the pixel value of integrogram definition and replace this integrogram, thereby obtain final integrogram relation.With can compare for the integrogram of other pixel p appointment relation, be pixel p 1The expense that reads of reading unit 1021 that the integrogram relation of appointment is caused should be lower.Correspondingly, calculation element 102 calculating pixel p 1Integrogram.When the integrogram of a pixel of new calculating, r/w cell 1022 can be stored in it in memory storage 105, thereby can change from the set of pixels that memory storage 105 obtains integrograms.So image processing equipment 100 is determined the integrogram relation of next pixel on this basis, up to having specified the integrogram relation (thereby also to calculate integrogram for the pixel of all integrogram the unknowns.Under the identical situation of expense, can select more pixel near the block of pixels left upper apex.The above-mentioned integrogram relation of dynamically specifying can be implemented in the unshowned device of image processing equipment 100, also can be implemented in calculation element 102 or the control device 103.
Under the situation of dynamically appointment, read unit 1021 and can obtain corresponding integrogram relation at each pixel p of integrogram the unknown in the block of pixels of current indication.For the integrogram except that the integrogram of pixel p that relates in the integrogram relation, obtain such integrogram from memory storage 105.For the pixel value that relates in the integrogram relation, obtain such pixel value from image memory device 101.
Computing unit 1023 is according to the integrogram of appointment relation and read the integrogram that reads unit 1021 and the integrogram of calculated for pixel values pixel.
Treating apparatus 104 comes carries out image processing according to the integrogram of each block of pixels respectively.
Below in conjunction with the example shown in Fig. 4 image processing equipment 100 is described.Though it is noted that among Fig. 4 only to show the situation of joining, yet can understand that according to the explanation of this paper the embodiments described herein also is applicable to the situation of overlapping for the simple purpose of diagram.
Fig. 4 a is illustrated in the example of the block of pixels sequence under the situation of combinations of the arrow 310 of Fig. 3 b and 311 expressions.At first scanning window scans shown in arrow 310, and wherein block of pixels 401 is first block of pixels in the sequence (also arrow being called sequence here) of arrow 310 indication.In such sequence, adjacent pixel blocks is in alignment with each other and joins or overlap.According to order of determining according to previously described mode and integrogram relation, the integrogram of each pixel of calculation element 102 calculating pixel pieces 401 also is stored in the memory storage 105.
For the subsequent block of pixels in the sequence 310 (for example block of pixels 402), at least in its last block of pixels in the pixel of right column and the subsequent block of pixels adjacent and its integrogram of the pixel of left column can from memory storage 105, obtain.Therefore, determine the mode that computation sequence and integrogram concern according to the front, definite meeting of the computation sequence of integrogram and integrogram relation is subjected to the influence of this state in the subsequent block of pixels.
Block of pixels 403 is tail block of pixels of sequence 310, and block of pixels 404 is first block of pixels in the sequence 311.Block of pixels 404 is in alignment with each other with block of pixels 403 and joins.At least in the block of pixels 403 in the most descending pixel and the block of pixels 404 adjacent and its integrogram of the most up pixel can from memory storage 105, obtain.Therefore, determine the mode that computation sequence and integrogram concern according to the front, definite meeting of the computation sequence of integrogram and integrogram relation is subjected to the influence of this state in the block of pixels 404.
For the subsequent block of pixels in the sequence 311 (for example block of pixels 405), at least in its last block of pixels in the pixel of left column and the subsequent block of pixels adjacent and its integrogram of the pixel of right column can from memory storage 105, obtain.Therefore, determine the mode that computation sequence and integrogram concern according to the front, definite meeting of the computation sequence of integrogram and integrogram relation is subjected to the influence of this state in the subsequent block of pixels.
Under the situation of the combinations of the arrow 312 of Fig. 3 b and 313 expressions, can repeat the processing that the front is described at sequence 310 with reference to Fig. 4 a respectively at sequence 312 and 313.
Fig. 4 b is illustrated in the example of the block of pixels sequence under the situation of combinations of the arrow 314 of Fig. 3 b and 315 expressions.At first scanning window scans shown in arrow 314, and wherein block of pixels 411 is first block of pixels in the sequence of arrow 314 indication.In such sequence, adjacent pixel blocks is in alignment with each other and joins or overlap.According to order of determining according to previously described mode and integrogram relation, the integrogram of each pixel of calculation element 102 calculating pixel pieces 411 also is stored in the memory storage 105.
For the subsequent block of pixels in the sequence 314 (for example block of pixels 412), at least in its last block of pixels in the pixel of left column and the subsequent block of pixels adjacent and its integrogram of the pixel of right column can from memory storage 105, obtain.Therefore, determine the mode that computation sequence and integrogram concern according to the front, definite meeting of the computation sequence of integrogram and integrogram relation is subjected to the influence of this state in the subsequent block of pixels.
Block of pixels 413 is tail block of pixels of sequence 314, and block of pixels 414 is first block of pixels in the sequence 315.Block of pixels 414 is in alignment with each other with block of pixels 413 and joins.At least in the block of pixels 413 in the most descending pixel and the block of pixels 414 adjacent and its integrogram of the most up pixel can from memory storage 105, obtain.Therefore, determine the mode that computation sequence and integrogram concern according to the front, definite meeting of the computation sequence of integrogram and integrogram relation is subjected to the influence of this state in the block of pixels 414.
For the subsequent block of pixels in the sequence 315 (for example block of pixels 415), at least in its last block of pixels in the pixel of right column and the subsequent block of pixels adjacent and its integrogram of the pixel of left column can from memory storage 105, obtain.Therefore, determine the mode that computation sequence and integrogram concern according to the front, definite meeting of the computation sequence of integrogram and integrogram relation is subjected to the influence of this state in the subsequent block of pixels.
Under the situation of the combinations of the arrow 316 of Fig. 3 b and 317 expressions, can repeat the processing that the front is described at sequence 314 with reference to Fig. 4 b respectively at sequence 316 and 317.
Fig. 4 c is illustrated in the example of the block of pixels sequence under the situation of combinations of the arrow 320 of Fig. 3 c and 321 expressions.At first scanning window scans shown in arrow 320, and wherein block of pixels 421 is first block of pixels in the sequence of arrow 320 indication.In such sequence, adjacent pixel blocks is in alignment with each other and joins or overlap.According to order of determining according to previously described mode and integrogram relation, the integrogram of each pixel of calculation element 102 calculating pixel pieces 421 also is stored in the memory storage 105.
For the subsequent block of pixels in the sequence 320 (for example block of pixels 422), at least in its last block of pixels in the most descending pixel and the subsequent block of pixels adjacent and its integrogram of the most up pixel can from memory storage 105, obtain.Therefore, determine the mode that computation sequence and integrogram concern according to the front, definite meeting of the computation sequence of integrogram and integrogram relation is subjected to the influence of this state in the subsequent block of pixels.
Block of pixels 423 is tail block of pixels of sequence 320, and block of pixels 424 is first block of pixels in the sequence 321.Block of pixels 424 is in alignment with each other with block of pixels 423 and joins.At least in the block of pixels 423 in the pixel of right column and the block of pixels 414 adjacent and its integrogram of the pixel of left column can from memory storage 105, obtain.Therefore, determine the mode that computation sequence and integrogram concern according to the front, definite meeting of the computation sequence of integrogram and integrogram relation is subjected to the influence of this state in the block of pixels 424.
For the subsequent block of pixels in the sequence 321 (for example block of pixels 425), at least in its last block of pixels in the most up pixel and the subsequent block of pixels adjacent and its integrogram of the most descending pixel can from memory storage 105, obtain.Therefore, determine the mode that computation sequence and integrogram concern according to the front, definite meeting of the computation sequence of integrogram and integrogram relation is subjected to the influence of this state in the subsequent block of pixels.
Under the situation of the combinations of the arrow 322 of Fig. 3 c and 323 expressions, can repeat the processing that the front is described at sequence 320 with reference to Fig. 4 c respectively at sequence 322 and 323.
Fig. 4 d is illustrated in the example of the block of pixels sequence under the situation of combinations of the arrow 324 of Fig. 3 c and 325 expressions.At first scanning window scans shown in arrow 324, and wherein block of pixels 431 is first block of pixels in the sequence of arrow 324 indication.In such sequence, adjacent pixel blocks is in alignment with each other and joins or overlap.According to order of determining according to previously described mode and integrogram relation, the integrogram of each pixel of calculation element 102 calculating pixel pieces 431 also is stored in the memory storage 105.
For the subsequent block of pixels in the sequence 324 (for example block of pixels 432), at least in its last block of pixels in the most up pixel and the subsequent block of pixels adjacent and its integrogram of the most descending pixel can from memory storage 105, obtain.Therefore, determine the mode that computation sequence and integrogram concern according to the front, definite meeting of the computation sequence of integrogram and integrogram relation is subjected to the influence of this state in the subsequent block of pixels.
Block of pixels 433 is tail block of pixels of sequence 324, and block of pixels 434 is first block of pixels in the sequence 325.Block of pixels 434 is in alignment with each other with block of pixels 433 and joins.At least in the block of pixels 433 in the pixel of right column and the block of pixels 434 adjacent and its integrogram of the pixel of left column can from memory storage 105, obtain.Therefore, determine the mode that computation sequence and integrogram concern according to the front, definite meeting of the computation sequence of integrogram and integrogram relation is subjected to the influence of this state in the block of pixels 434.
For the subsequent block of pixels in the sequence 325 (for example block of pixels 425), at least in its last block of pixels in the most descending pixel and the subsequent block of pixels adjacent and its integrogram of the most up pixel can from memory storage 105, obtain.Therefore, determine the mode that computation sequence and integrogram concern according to the front, definite meeting of the computation sequence of integrogram and integrogram relation is subjected to the influence of this state in the subsequent block of pixels.
Under the situation of the combinations of the arrow 326 of Fig. 3 c and 327 expressions, can repeat the processing that the front is described at sequence 324 with reference to Fig. 4 d respectively at sequence 326 and 327.
The process flow diagram of Fig. 5 shows image processing method 500 according to an embodiment of the invention.
As shown in Figure 5, method 500 is from step 501.In step 503, each block of pixels in definite in order image in a plurality of block of pixels of same size is also indicated described block of pixels, according to described order, one of picture altitude and Width, be on the first direction the identical block of pixels in position by wherein another, be that positional alignment on the second direction is a sequence, described sequence is arranged by the ascending order of positional value on first direction, adjacent pixel blocks is joined each other or is overlapped in the same sequence, and in the flanking sequence a block of pixels of back sequence with align at one of two end pixel pieces of presequence and join or overlap.The processing of step 503 can be identical in conjunction with the processing of control device 103 descriptions with the front.
In step 505, calculate the integrogram of indicated block of pixels.The processing of step 505 can be identical in conjunction with the processing of calculation element 102 descriptions with the front.
In step 507, the integrogram according to each block of pixels comes carries out image processing respectively.The processing of step 507 can be identical in conjunction with the processing for the treatment of apparatus 104 descriptions with the front.
In step 509, determine whether to exist untreated block of pixels, if having, then return step 503, otherwise method finishes in step 511.
Particularly, step 505 comprises step 513,515 and 517.
In step 513, each pixel at integrogram the unknown in the block of pixels of current indication, there is under the situation that integrogram concerns the integrogram of read pixel value and neighbor at the integrogram of the integrogram of the neighbor of the pixel value of image and this pixel of being stored and this pixel.The processing of step 513 can be identical in conjunction with the processing of reading to describe unit 1021 with the front.
In step 515, according to integrogram relation and the integrogram that is read and the integrogram of calculated for pixel values pixel.The processing of step 515 can be identical in conjunction with the processing of computing unit 1023 descriptions with the front.
In step 517, store the integrogram that is calculated into memory storage.The processing of step 517 can be identical in conjunction with the processing of r/w cell 1022 descriptions with the front.
Here, memory storage can be the memory storage 105 in conjunction with the embodiment description of Fig. 1.
Improve among the embodiment at image processing equipment 100 and image processing method 500 one, the off-capacity of memory storage 105 is with the integrogram of the pixel of storing all block of pixels.Under these circumstances, in image processing equipment 100, each integrogram that r/w cell 1022 can calculate at computing unit 1023, with the position of satisfying following condition in this integrogram write storage device 105:
1) do not store the integrogram of the block of pixels of current indication in this position, perhaps
2) if store the integrogram of the block of pixels that does not belong to current indication in this position, then the respective pixel of this integrogram is with the pixel of calculated product component is not adjacent as yet in the block of pixels of current indication.
In image processing equipment 500, step 517 can comprise at each integrogram that is calculated, with the position of satisfying following condition in this integrogram write storage device 105:
1) do not store the integrogram of the block of pixels of current indication in this position, perhaps
2) if store the integrogram of the block of pixels that does not belong to current indication in this position, then the respective pixel of this integrogram is with the pixel of calculated product component is not adjacent as yet in the block of pixels of current indication.
The block diagram of Fig. 6 shows the structure of image processing equipment 600 in accordance with another embodiment of the present invention.
As shown in Figure 6, image processing equipment 600 comprises calculation element 602, control device 603, treating apparatus 604, memory storage 605 and snubber assembly 606.Image processing equipment 600 also can comprise image memory device 601.Alternatively, image memory device 601 also can be outside image processing equipment 600.Calculation element 602 comprises reads unit 6021, r/w cell 6022 and computing unit 6023.
Control device 603, treating apparatus 604, memory storage 605 and image memory device 601 are identical with image memory device 101 with control device 103, treating apparatus 104, memory storage 105 respectively, no longer repeat specification here.
The off-capacity of snubber assembly 606 is with the integrogram of storage than the more pixel of pixel of arranging along second direction in the image.Particularly, if second direction is picture traverse direction X, then snubber assembly 606 can be stored the integrogram of IMGW pixel, and wherein IMGW is to be the picture traverse of unit with the pixel.If second direction is picture altitude direction Y, then snubber assembly 606 can be stored the integrogram of IMGH pixel, and wherein IMGH is to be the picture altitude of unit with the pixel.On the equipment that snubber assembly 606 can be identical with memory storage 605 positions, also can separate with memory storage 605.Preferably, the access speed of snubber assembly 606 is higher than image memory device 601.
R/w cell 6021 comprises the function of r/w cell 1021, and in each block of pixels of the sequence of current calculating on first direction the position identical and join with the block of pixels of next sequence or be arranged in each pixel of the block of pixels of next sequence, be the buffering pixel of next sequence, the integrogram of the buffering pixel calculated write the position of satisfying following condition in the snubber assembly 606:
1) do not store the integrogram that cushions pixel in this position, perhaps
2) if store buffering pixel that integrogram and this integrogram do not belong to next sequence in this position (promptly, this integrogram is the integrogram of the buffering pixel of current sequence), then the respective pixel of the integrogram of described position is with the pixel of calculated product component is not adjacent as yet in the block of pixels of current sequence.
The integrogram of the buffering pixel of current sequence is used to calculate the integrogram of the block of pixels of next sequence.Because the finite capacity of snubber assembly 606, in the integrogram computation process of the block of pixels of current sequence, the storage of integrogram in snubber assembly 606 of the buffering pixel that newly obtains should not have influence on current calculating.Above-mentioned condition 1) and 2) can guarantee to meet this requirement.
Read unit 6021 and comprise the function of reading unit 1021.In addition, under the situation that the respective pixel of the integrogram of the block of pixels of current indication and snubber assembly 606 storages overlaps, read unit 6021 and read the integrogram (can directly obtain under these circumstances, the integrogram of this pixel) of the pixel that integrogram (promptly needs the calculated product component) the block of pixels of current indication not in memory storage 605 from snubber assembly 606.In addition, the pixel p that not in memory storage 605, (promptly needs the calculated product component) for integrogram in the block of pixels of current indication, pixel value at image, between the integrogram of snubber assembly 606 integrograms storage and pixel p adjacent pixels q and pixel p, perhaps at the pixel value of image, snubber assembly 606 storage with integrogram pixel p adjacent pixels q, exist in the memory storage 605 and between the integrogram of the integrogram of pixel p adjacent pixels r and pixel p under the situation of integrogram relation, read the integrogram of described pixel value and neighbor (pixel q or pixel q and r).
Computing unit 6023 comprises the function of computing unit 1023.In addition, under the situation that the respective pixel of the integrogram of the block of pixels of current indication and snubber assembly 606 storages overlaps, the integrogram that will read from snubber assembly 606 is as the integrogram that is calculated of respective pixel.In addition, at adjacent in the block of pixels of current indication, the integrogram pixel p in memory storage 605 not, according to integrogram relation and the integrogram that is read and the integrogram of calculated for pixel values pixel p reading to be adopted unit 6021 with the respective pixel of the integrogram of snubber assembly 606 storage.
When specifying integrogram to concern for pixel, only under the situation that the integrogram in the integrogram relation is confirmed as obtaining from memory storage 605 and snubber assembly 606, just this integrogram is replaced with based on the pixel value of integrogram definition and, to obtain final integrogram relation.
The integrogram of the buffering pixel of storage helps reducing the quantity of the pixel value that relates in the integrogram relation in the snubber assembly 606, increases the quantity of related integrogram.
Various situations for the front is described in conjunction with Fig. 4 owing to the existence of snubber assembly 606, make block of pixels inner product component propagate relation and change, thereby corresponding appointment and the computation sequence that has influence on the integrogram relation.When specifying integrogram concern, only be confirmed as just being replaced by from the integrogram that memory storage 605 and snubber assembly 606 obtain based on the pixel value of integrogram definition and, concern thereby obtain final integrogram.
The processing of calculation element 602 is described with reference to various situations at vertical integrogram below.
1. situation one: sequence 310 and 311
With reference to Fig. 4 a, there are two kinds of situations:
1) sequence 310 is first sequences of scanning sequency, and wherein the x coordinate of block of pixels 401 left columns is 0, and the most up y coordinate of all block of pixels is 0.As starting condition, each virtual pixel of storage (x in the snubber assembly 606 b, y b), y b=-1, x b=0 ..., and the integrogram II of IMGW-1 (x, y)=0.
2) sequence 310 is one wherein the x coordinate of block of pixels 401 left columns is 0 in the back sequence, is y at the position range of first direction 1~y 2As result of calculation at presequence, storing one row pixel (x in the snubber assembly 606 b, y b), y 1-1≤y b<y 2, x b=0 ..., and the integrogram II of IMGW-1 (x, y).
1.1 a block of pixels at presequence
Block of pixels is a block of pixels 401, for pixel column (x b, y b) under pixel portion to be calculated, left upper end pixel (xs 401, ys 401) the integrogram, the integrogram of going up neighbor of integrogram, upper left neighbor of left neighbor can directly obtain, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 at first calculates the integrogram of this pixel.Afterwards, for pixel (xs 401+ 1, ys 401), the integrogram of the integrogram of its left neighbor, the integrogram of upper left neighbor, last neighbor can directly obtain, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 then calculates the integrogram of this pixel.The rest may be inferred, can repeat this process to specify integrogram relation and calculated product component for the later pixel of this row.
If there is pixel column (x b, y b) on pixel portion to be calculated, handle also and similar process at following part, be initial pixel be the lower-left end pixel of upper part, order becomes earlier from left to right more from top to bottom, neighbor becomes left neighbor, lower-left neighbor and following neighbor.
The rest may be inferred, for follow-up each row pixel, can repeat said process to specify integrogram relation and calculated product component.
1.2 subsequent block of pixels at presequence
For the subsequent block of pixels in the sequence 310 (for example block of pixels 402), the integrogram of the left neighbor of left column pixel to be calculated is in memory storage 605.Handle and above-mentioned 1.1 similar process.
1.3 a block of pixels in the back sequence
Sequence 311 be sequence 310 the back sequence.Block of pixels 404 is y at the position range of first direction 3~y 4As result of calculation at presequence, storing one row pixel (x in the snubber assembly 606 b, y b), y 3-1≤y b<y 4, x b=0 ..., and the integrogram II of IMGW-1 (x, y).
For the pixel to be calculated of block of pixels 404, left upper end pixel (xs 404, ys 404) the integrogram of last neighbor can directly obtain, thereby specify integrogram relation corresponding to formula (2), its visit expense is minimum, so calculation element 602 at first calculates the integrogram of this pixel.
Afterwards, for pixel (xs 404+ 1, ys 404), the integrogram of the integrogram of its left neighbor, the integrogram of upper left neighbor, last neighbor can directly obtain, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 then calculates the integrogram of this pixel.The rest may be inferred, can repeat this process to specify integrogram relation and calculated product component for the later pixel of this row.The rest may be inferred, for follow-up each row pixel, can repeat said process to specify integrogram relation and calculated product component.
1.4 subsequent block of pixels in the back sequence
For the subsequent block of pixels in the sequence 311 (for example block of pixels 405), the integrogram of the right neighbor of right column pixel to be calculated is in memory storage 605.
For pixel column (x b, y b) under pixel portion to be calculated, upper right side pixel (xs 405, ys 405) the integrogram, the integrogram of going up neighbor of integrogram, upper right neighbor of right neighbor can directly obtain, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 at first calculates the integrogram of this pixel.Afterwards, for pixel (xs 405-1, ys 405), can specify integrogram relation similarly corresponding to formula (1), its visit expense is minimum, so calculation element 602 then calculates the integrogram of this pixel.The rest may be inferred, can repeat this process to specify integrogram relation and calculated product component for the later pixel of this row.The rest may be inferred, for follow-up each row pixel, can repeat said process to specify integrogram relation and calculated product component.
If there is pixel column (x b, y b) on pixel portion to be calculated, handle and similar process at lower part, be initial pixel be the bottom righthand side pixel of upper part, order becomes earlier from right to left more from top to bottom, neighbor becomes right neighbor, bottom right neighbor and following neighbor.
2. situation two: sequence 312 and 313
Can repeat front 1.1 and 1.2 processing of describing respectively at sequence 312 and 313.
3. situation three: sequence 314 and 315
With reference to Fig. 4 b, there are two kinds of situations:
1) sequence 314 is first sequences of scanning sequency, and wherein the most up y coordinate of all block of pixels is 0, and the x coordinate of block of pixels 411 right columns is IMGW-1.As starting condition, each virtual pixel of storage (x in the snubber assembly 606 b, y b), y b=-1, x b=0 ..., and the integrogram II of IMGW-1 (x, y)=0.
2) sequence 314 is one wherein the x coordinate of block of pixels 411 right columns is IMGW-1 in the back sequence, is y at the position range of first direction 1~y 2As result of calculation at presequence, storing one row pixel (x in the snubber assembly 606 b, y b), y 1-1≤y b<y 2, x b=0 ..., and the integrogram II of IMGW-1 (x, y).
3.1 a block of pixels at presequence
For block of pixels 411 at pixel column (x b, y b) under pixel portion to be calculated, left upper end pixel (xs 411, ys 411) the integrogram of last neighbor can directly obtain, thereby specify integrogram relation corresponding to formula (2), its visit expense is minimum, so calculation element 602 at first calculates the integrogram of this pixel.
Afterwards, for pixel (xs 411+ 1, ys 411), the integrogram of the integrogram of its left neighbor, the integrogram of upper left neighbor, last neighbor can directly obtain, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 then calculates the integrogram of this pixel.The rest may be inferred, can repeat this process to specify integrogram relation and calculated product component for the later pixel of this row.
The rest may be inferred, for follow-up each row pixel, can repeat said process to specify integrogram relation and calculated product component.
If there is pixel column (x b, y b) on pixel portion to be calculated, handle also and similar process at following part, be initial pixel be the lower-left end pixel of upper part, order becomes earlier from left to right more from top to bottom, upper left neighbor aspect the neighbor, on neighbor become lower-left neighbor and following neighbor respectively.
3.2 subsequent block of pixels at presequence
For the subsequent block of pixels in the sequence 314 (for example block of pixels 412), the integrogram of the right neighbor of right column pixel to be calculated is in memory storage 605.Handle and above-mentioned 1.4 similar process.
3.3 a block of pixels in the back sequence
Sequence 315 be sequence 314 the back sequence.For its block of pixels 414, handle and above-mentioned 1.3 similar process.
3.4 subsequent block of pixels in the back sequence
For the subsequent block of pixels in the sequence 315 (for example block of pixels 415), the integrogram of the left neighbor of left column pixel to be calculated is in memory storage 605.Handle and above-mentioned 1.2 similar process.
4. situation four: sequence 316 and 317
Can repeat front 3.1 and 3.2 processing of describing respectively at sequence 316 and 317.
5. situation five: sequence 320 and 321
With reference to Fig. 4 c, there are two kinds of situations:
1) sequence 320 is first sequences of scanning sequency, and wherein the x coordinate of block of pixels 421 left columns is 0, and the most up y coordinate of all block of pixels is 0.As starting condition, each virtual pixel of storage (x in the snubber assembly 606 b, y b), x b=-1, y b=0 ..., and the integrogram II of IMGH-1 (x, y)=0.
2) sequence 320 is one wherein block of pixels 421 the most up y coordinates is 0 in the back sequence, is x at the position range of first direction 1~x 2As result of calculation at presequence, storage one row pixel (x in the snubber assembly 606 b, y b), x 1-1≤x b<x 2, y b=0 ..., and the integrogram II of IMGH-1 (x, y).
5.1 a block of pixels at presequence
Block of pixels is a block of pixels 421, for pixel column (x b, y b) the pixel portion to be calculated on the right side, left upper end pixel (xs 421, ys 421) the integrogram, the integrogram of going up neighbor of integrogram, upper left neighbor of left neighbor can directly obtain, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 at first calculates the integrogram of this pixel.Afterwards, for pixel (xs 421, ys 421+ 1), the integrogram of the integrogram of its left neighbor, the integrogram of upper left neighbor, last neighbor can directly obtain, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 then calculates the integrogram of this pixel.The rest may be inferred, can repeat this process to specify integrogram relation and calculated product component for the later pixel of these row.
If there is pixel column (x b, y b) the pixel portion to be calculated on a left side, handle also and similar process at the part on the right side, be initial pixel be the upper right side pixel of left part, order becomes earlier from top to bottom more from right to left, neighbor becomes right neighbor, upper right neighbor and last neighbor.The rest may be inferred, for follow-up each row pixel, can repeat said process to specify integrogram relation and calculated product component.
5.2 subsequent block of pixels at presequence
For the subsequent block of pixels in the sequence 320 (for example block of pixels 422), the integrogram of the last neighbor of up pixel to be calculated is in memory storage 605.Handle and above-mentioned 5.1 similar process.
5.3 a block of pixels in the back sequence
Sequence 321 be sequence 320 the back sequence.Block of pixels 424 is x at the position range of first direction 3~x 4As result of calculation at presequence, storage one row pixel (x in the snubber assembly 606 b, y b), x 3-1≤x b<x 4, y b=0 ..., and the integrogram II of IMGH-1 (x, y).
For the pixel to be calculated of block of pixels 424, left upper end pixel (xs 424, ys 424) the integrogram of left neighbor can directly obtain, thereby specify integrogram relation corresponding to formula (3), its visit expense is minimum, so calculation element 602 at first calculates the integrogram of this pixel.
Afterwards, for pixel (xs 424, ys 424+ 1), the integrogram of the integrogram of its left neighbor, the integrogram of upper left neighbor, last neighbor can directly obtain, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 then calculates the integrogram of this pixel.The rest may be inferred, can repeat this process to specify integrogram relation and calculated product component for the later pixel of these row.The rest may be inferred, for follow-up each row pixel, can repeat said process to specify integrogram relation and calculated product component.
5.4 subsequent block of pixels in the back sequence
For the subsequent block of pixels in the sequence 321 (for example block of pixels 425), the integrogram of the following neighbor of descending pixel to be calculated is in memory storage 605.
For pixel column (x b, y b) the pixel portion to be calculated on the right side, lower-left end pixel (xs 425, ys 425) left neighbor integrogram, lower-left neighbor integrogram, the integrogram of neighbor can directly obtain down, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 at first calculates the integrogram of this pixel.Afterwards, for pixel (xs 425, ys 425-1), can specify the integrogram relation corresponding to formula (1) similarly, its visit expense is minimum, so calculation element 602 then calculates the integrogram of this pixel.The rest may be inferred, can repeat this process to specify integrogram relation and calculated product component for the later pixel of these row.The rest may be inferred, for follow-up each row pixel, can repeat said process to specify integrogram relation and calculated product component.
If there is pixel column (x b, y b) the pixel portion to be calculated on a left side, handle and similar process at right part, be initial pixel be the bottom righthand side pixel of left part, order becomes earlier from right to left more from top to bottom, neighbor becomes right neighbor, bottom right neighbor and following neighbor.
6. situation six: sequence 322 and 323
Can repeat front 5.1 and 5.2 processing of describing respectively at sequence 322 and 323.
7. situation seven: sequence 324 and 325
With reference to Fig. 4 d, there are two kinds of situations:
1) sequence 324 is first sequences of scanning sequency, and wherein the x coordinate of the left column of all block of pixels is 0, and block of pixels 431 the most descending y coordinates are IMGH-1.As starting condition, each virtual pixel of storage (x in the snubber assembly 606 b, y b), x b=-1, y b=0 ..., and the integrogram II of IMGH-1 (x, y)=0.
2) sequence 324 is one wherein block of pixels 431 the most descending y coordinates is IMGH-1 in the back sequence, is x at the position range of first direction 1~x 2As result of calculation at presequence, storage one row pixel (x in the snubber assembly 606 b, y b), x 1-1≤x b<x 2, y b=0 ..., and the integrogram II of IMGH-1 (x, y).
7.1 a block of pixels at presequence
For block of pixels 431 at pixel column (x b, y b) the pixel portion to be calculated on the right side, left upper end pixel (xs 431, ys 431) the integrogram of left neighbor can directly obtain, thereby specify integrogram relation corresponding to formula (3), its visit expense is minimum, so calculation element 602 at first calculates the integrogram of this pixel.
Afterwards, for pixel (xs 431, ys 431+ 1), the integrogram of the integrogram of its left neighbor, the integrogram of upper left neighbor, last neighbor can directly obtain, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 then calculates the integrogram of this pixel.The rest may be inferred, can repeat this process to specify integrogram relation and calculated product component for the later pixel of these row.
The rest may be inferred, for follow-up each row pixel, can repeat said process to specify integrogram relation and calculated product component.
If there is pixel column (x b, y b) the pixel portion to be calculated on a left side, handle also and similar process at the part on the right side, be initial pixel be the upper right side pixel of left part, order becomes earlier from top to bottom more from right to left, becomes right neighbor, upper right neighbor respectively from left neighbor, upper left neighbor aspect neighbor.
7.2 subsequent block of pixels at presequence
For the subsequent block of pixels in the sequence 324 (for example block of pixels 432), the integrogram of the following neighbor of descending pixel to be calculated is in memory storage 605.Handle and above-mentioned 5.4 similar process.
7.3 a block of pixels in the back sequence
Sequence 325 be sequence 324 the back sequence.For its block of pixels 434, handle and above-mentioned 5.3 similar process.
7.4 subsequent block of pixels in the back sequence
For the subsequent block of pixels in the sequence 315 (for example block of pixels 435), the integrogram of the last neighbor of up pixel to be calculated is in memory storage 605.Handle and above-mentioned 5.2 similar process.
8. situation eight: sequence 326 and 327
Can repeat front 7.1 and 7.2 processing of describing respectively at sequence 326 and 327.
Correspondingly, in the further improvement of image processing method 500, step 517 also comprise in each block of pixels of the sequence of current calculating on first direction the position identical and join with the block of pixels of next sequence or be arranged in each pixel of the block of pixels of next sequence, be the buffering pixel of next sequence, the integrogram of the buffering pixel calculated write the position of off-capacity to satisfy following condition in the snubber assembly of storage than the integrogram of the more pixel of pixel of arranging along second direction in the described image:
1) do not store the integrogram of described buffering pixel in described position, perhaps
2) do not belong to described buffering pixel if store integrogram and described integrogram in described position, then the respective pixel of the integrogram of described position is with the pixel of calculated product component is not adjacent as yet in the block of pixels of current sequence.
Snubber assembly can be a snubber assembly 606.The integrogram of the buffering pixel of current sequence is used to calculate the integrogram of the block of pixels of next sequence.Because the finite capacity of snubber assembly, in the integrogram computation process of the block of pixels of current sequence, the storage of integrogram in snubber assembly of the buffering pixel that newly obtains should not have influence on current calculating.Above-mentioned condition 1) and 2) can guarantee to meet this requirement.
Step 513 also is included under the situation that the respective pixel of the integrogram of the block of pixels of current indication and buffer means stores overlaps, from snubber assembly read integrogram the block of pixels of current indication not the pixel in described memory storage integrogram and with the integrogram that reads the integrogram that is calculated as described pixel, and for the pixel in described memory storage not of integrogram in the block of pixels of current indication, pixel value at image, between the integrogram of integrogram described buffer means stores and this pixel adjacent pixels and this pixel, perhaps at the pixel value of image, described buffer means stores and integrogram this pixel adjacent pixels, exist in the described memory storage and between the integrogram of the integrogram of this pixel adjacent pixels and this pixel under the situation of integrogram relation, read the integrogram of described pixel value and neighbor.
Step 515 also comprises according to described integrogram relation and the integrogram that is read and the integrogram of the described pixel of calculated for pixel values.
The block diagram of Fig. 7 shows the structure of image processing equipment 700 in accordance with another embodiment of the present invention.
As shown in Figure 7, image processing equipment 700 comprises calculation element 702, control device 703, treating apparatus 704, memory storage 705, snubber assembly 706 and pre-snubber assembly 707.Image processing equipment 700 also can comprise image memory device 701.Alternatively, image memory device 701 also can be outside image processing equipment 700.Calculation element 702 comprises reads unit 7021, r/w cell 7022 and computing unit 7023.
Treating apparatus 704, memory storage 705, image memory device 701 and snubber assembly 706 are identical with snubber assembly 606 with treating apparatus 604, memory storage 605, image memory device 601 respectively, no longer repeat specification here.
Control device 703 comprises the function of control device 603.In addition, control device 703 also further makes the block of pixels of odd sequence (for example first, the 3rd ...) arrange by the ascending order of positional value on the second direction, the block of pixels of even sequence (for example second, the 4th ...) is by the descending sort of positional value on the second direction, in the flanking sequence a block of pixels of back sequence with align in the tail block of pixels of presequence and join or overlap.
Calculation element 7023 comprises the function of calculation element 6023.In addition, calculation element 7023 also calculates the integrogram of the pixel of positional value maximum on the second direction that each sequence covered except that first sequence in advance.
R/w cell 7022 comprises the function of r/w cell 6022.In addition, r/w cell 7022 also is stored in calculation element 7023 precalculated integrograms in the pre-snubber assembly 707.
Read unit 7021 and comprise the function of reading unit 6021.In addition, read unit 7021 also under the situation that the respective pixel of the block of pixels of current indication and the integrogram of pre-snubber assembly 707 storages overlaps, read the block of pixels of current indication the not integrogram of the pixel in memory storage 705 of integrogram from pre-snubber assembly 707.Computing unit 7023 is also under the situation that the respective pixel of the block of pixels of current indication and the integrogram of pre-snubber assembly 707 storages overlaps, and the integrogram that will read from pre-snubber assembly 707 is as the integrogram that is calculated of respective pixel.
When specifying integrogram to concern for pixel, only under the situation that the integrogram in the integrogram relation is confirmed as obtaining from memory storage 705, snubber assembly 706 and pre-snubber assembly 707, just this integrogram is replaced with based on the pixel value of integrogram definition and, to obtain final integrogram relation.
The integrogram of the pixel of positional value maximum helps reducing the quantity of the pixel value that relates in the integrogram relation on the second direction of storing in the pre-snubber assembly 707, increases the quantity of related integrogram.
The various situations of describing in conjunction with Fig. 4 for the front because the existence of pre-snubber assembly 707, make that the block of pixels inner product component of positional value maximum is propagated relation on the second direction to change, thereby corresponding appointment and the computation sequence that has influence on the integrogram relation.When specifying integrogram concern, only be confirmed as just being replaced by from the integrogram that memory storage 705, snubber assembly 706 and pre-snubber assembly 707 obtain based on the pixel value of integrogram definition and, concern thereby obtain final integrogram.
Correspondingly, bring change for 1.3 processing: the upper right side pixel (xs of the pixel to be calculated of block of pixels 404 404, ys 404) integrogram, the integrogram of upper right neighbor, the integrogram of right neighbor of last neighbor can directly obtain, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 at first calculates the integrogram of this pixel.Afterwards, for pixel (xs 404+ 1, ys 404), the integrogram of the integrogram of its right neighbor, the integrogram of upper right neighbor, last neighbor can directly obtain, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 then calculates the integrogram of this pixel.The rest may be inferred, can repeat this process to specify integrogram relation and calculated product component for the later pixel of this row.The rest may be inferred, for follow-up each row pixel, can repeat said process to specify integrogram relation and calculated product component.
Correspondingly, bring change for 5.3 processing: the lower-left end pixel (xs of the pixel to be calculated of block of pixels 424 424, ys 424) left neighbor integrogram, lower-left neighbor integrogram, the integrogram of neighbor can directly obtain down, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 at first calculates the integrogram of this pixel.Afterwards, for pixel (xs 424, ys 424-1), the integrogram of the integrogram of the integrogram of its left neighbor, lower-left neighbor, following neighbor can directly obtain, thereby specify integrogram to concern corresponding to formula (1), its visit expense is minimum, so calculation element 602 then calculates the integrogram of this pixel.The rest may be inferred, can repeat this process to specify integrogram relation and calculated product component for the later pixel of these row.The rest may be inferred, for follow-up each row pixel, can repeat said process to specify integrogram relation and calculated product component.
Can the further improvement embodiment of previous image disposal route 500 be made amendment, step 503 also comprises to be determined, make the block of pixels of odd sequence (for example first, the 3rd ...) arrange by the ascending order of positional value on the second direction, the block of pixels of even sequence (for example second, the 4th ...) is by the descending sort of positional value on the second direction, in the flanking sequence a block of pixels of back sequence with align in the tail block of pixels of presequence and join or overlap.Step 515 also comprises the integrogram that calculates the pixel of positional value maximum on the second direction that each sequence covered except that first sequence in advance.Step 517 also comprises precalculated integrogram is stored in the pre-snubber assembly.Pre-snubber assembly can be pre-snubber assembly 707.Under the situation that the respective pixel of the block of pixels that step 513 also is included in current indication and the integrogram of pre-buffer means stores overlaps, read the block of pixels of current indication the not integrogram of the pixel in memory storage of integrogram from pre-snubber assembly.And step 515 also comprises the integrogram that will the be read integrogram that is calculated as pixel.
In embodiment improvement, the capacity of memory storage only can be stored the integrogram of a block of pixels in front.From the angle of r/w cell, scanning process is the process that constantly repeatedly the integrogram of current pixel piece in the memory storage is replaced with the integrogram of next block of pixels.Under the situation of adjacent pixel blocks alignment and overlapping, the integrogram of the partial pixel of next block of pixels in memory storage, therefore needn't shift out memory storage.For adapting to such situation, block of pixels can be considered as form by the row on the first direction.Correspondingly, also the integrogram of block of pixels can be considered as form by the row on the first aspect.In memory storage, come the such row of index with chained list.Correspondingly, r/w cell can only upgrade the part of non-overlapping easily.
Equipment of the present invention and method can realize by the mode of hardware, software and the combination of the two.
Under by hard-wired situation, for each device that equipment comprises, can design the logic true value table of input and output according to its function, construct the respective logic circuit according to the Logical Design method by the logic true value table then.Also can programme to programmable logic device (PLD), to realize the respective logic circuit according to the logic true value table.Each device can pass through bus, special-purpose connection or network and link to each other.For each step of method, can design the logic true value table of input and output according to its function, construct the respective logic circuit of the function of execution in step then by the logic true value table according to the Logical Design method.Also can programme to programmable logic device (PLD), with the respective logic circuit of the function of performing step according to the logic true value table.It is continuous that the step that is connected can be passed through bus, special-purpose connection or network mutually.
Under situation about realizing, the function of each step of each apparatus and method of equipment can be compiled into computer program by the programming language such as C, BASIC, JAVA etc. by software.When carrying out such computer program, can realize the function of equipment and method such as the computing machine of personal computer.
Fig. 8 is the block diagram that the exemplary configurations of the computing machine of wherein realizing equipment of the present invention and method is shown.
In Fig. 8, CPU (central processing unit) (CPU) 801 is carried out various processing according to program stored among read-only mapping (enum) data (ROM) 802 or from the program that storage area 808 is loaded into random access mapping (enum) data (RAM) 803.In RAM 803, also store data required when CPU 801 carries out various processing or the like as required.
CPU 801, ROM 802 and RAM 803 are connected to each other via bus 804.Input/output interface 805 also is connected to bus 804.
Following parts are connected to input/output interface 805: importation 806 comprises keyboard, mouse or the like; Output 807 comprises display, such as cathode ray tube (CRT), LCD (LCD) or the like and loudspeaker or the like; Storage area 808 comprises hard disk or the like; With communications portion 809, comprise that network interface unit is such as LAN card, modulator-demodular unit or the like.Communications portion 809 is handled such as the Internet executive communication via network.
As required, driver 810 also is connected to input/output interface 805.Detachable media 811 is installed on the driver 810 as required such as disk, CD, magneto-optic disk, semiconductor mapping (enum) data or the like, makes the computer program of therefrom reading be installed to as required in the storage area 808.
Realizing by software under the situation of above-mentioned steps and processing, such as detachable media 811 program that constitutes software is being installed such as the Internet or storage medium from network.
It will be understood by those of skill in the art that this storage medium is not limited to shown in Figure 8 wherein having program stored therein, distribute separately so that the detachable media 811 of program to be provided to the user with method.The example of detachable media 811 comprises disk, CD (comprising read-only mapping (enum) data of CD (CD-ROM) and digital universal disc (DVD)), magneto-optic disk and (comprises mini-disk (MD) and semiconductor mapping (enum) data.Perhaps, storage medium can be hard disk that comprises in ROM 802, the storage area 808 or the like, computer program stored wherein, and be distributed to the user with the method that comprises them.
With reference to specific embodiment the present invention has been described in the instructions in front.Yet those of ordinary skill in the art understands, and can carry out various modifications and change under the prerequisite that does not depart from the scope of the present invention that limits as claims.

Claims (14)

1. image processing equipment comprises:
Calculation element is configured to calculate the integrogram by the block of pixels of control device indication;
Memory storage is used to store the integrogram that is calculated;
Control device, be configured in order to determine each block of pixels in a plurality of block of pixels of same size in the image and indicate described block of pixels to described calculation element, according to described order, one of picture altitude and Width, be on the first direction the identical block of pixels in position by wherein another, be that positional alignment on the second direction is a sequence, described sequence is arranged by the ascending order of positional value on first direction, adjacent pixel blocks is joined each other or is overlapped in the same sequence, and the position range of flanking sequence on first direction joins each other or overlap;
Treating apparatus is configured to respectively to come carries out image processing according to the integrogram of each described block of pixels,
Wherein said calculation element comprises:
R/w cell, the integrogram that is configured to be calculated stores described memory storage into;
Read the unit, be configured to each pixel at integrogram the unknown in the block of pixels of current indication, exist under the situation of integrogram relation at the integrogram of the neighbor of pixel described in the pixel value of described image and the described memory storage and the integrogram of described pixel, read the integrogram of described pixel value and neighbor; With
Computing unit is configured to according to described integrogram relation and the integrogram that is read and the integrogram of the described pixel of calculated for pixel values.
2. image processing equipment as claimed in claim 1, the off-capacity of wherein said memory storage be with the integrogram of the pixel of storing all block of pixels,
Wherein said r/w cell further is configured to each integrogram of calculating at described computing unit, described integrogram is write the position of satisfying following condition in the described memory storage:
Do not store the integrogram of the block of pixels of current indication in described position, perhaps
If store the integrogram of the block of pixels that does not belong to current indication in described position, then the respective pixel of this integrogram is with the pixel of calculated product component is not adjacent as yet in the block of pixels of current indication.
3. image processing equipment as claimed in claim 2 also comprises snubber assembly, and its off-capacity is with the integrogram of storage than the more pixel of pixel of arranging along second direction in the described image,
Wherein said r/w cell further be configured in each block of pixels of the sequence of current calculating on first direction the position identical and join with the block of pixels of next sequence or be arranged in each pixel of the block of pixels of next sequence, be the buffering pixel of next sequence, the integrogram of the buffering pixel calculated write the position of satisfying following condition in the described snubber assembly:
Do not store the integrogram of described buffering pixel in described position, perhaps
Do not belong to described buffering pixel if store integrogram and described integrogram in described position, then the respective pixel of the integrogram of described position is not with the pixel of calculated product component is not adjacent as yet in the block of pixels of current sequence,
The wherein said unit of reading further is configured under the situation that the respective pixel at the integrogram of the block of pixels of current indication and described buffer means stores overlaps, read the block of pixels of current indication the not integrogram of the pixel in described memory storage of integrogram from described snubber assembly, and for the pixel in described memory storage not of integrogram in the block of pixels of current indication, pixel value at image, between the integrogram integrogram of this pixel and described buffer means stores and this pixel adjacent pixels, perhaps at the pixel value of image, the integrogram of this pixel, exist in integrogram described buffer means stores and this pixel adjacent pixels and the described memory storage and between the integrogram of this pixel adjacent pixels under the situation of integrogram relation, read the integrogram of described pixel value and neighbor, and
Wherein said computing unit further is configured under the situation of the respective pixel overlapping of the integrogram of the block of pixels of current indication and described buffer means stores, the integrogram that will read from described snubber assembly is as the integrogram that is calculated of described respective pixel, and at adjacent in the block of pixels of current indication, the integrogram pixel in described memory storage not, according to described integrogram relation and the integrogram that is read and the integrogram of the described pixel of calculated for pixel values with the respective pixel of the integrogram of described buffer means stores.
4. image processing equipment as claimed in claim 3, wherein the block of pixels of odd sequence is arranged by the ascending order of positional value on the second direction, the block of pixels of even sequence is alignd with the tail block of pixels at presequence in a block of pixels of back sequence in the flanking sequence by the descending sort of positional value on the second direction
Wherein said image processing equipment also comprises pre-snubber assembly,
Wherein said calculation element further is configured to calculate in advance the integrogram of the pixel of positional value maximum on the second direction that each sequence covered except that first sequence,
Wherein said r/w cell further is configured to described precalculated integrogram is stored in the described pre-snubber assembly,
The wherein said unit of reading further is configured under the situation that the respective pixel at the integrogram of the block of pixels of current indication and described pre-buffer means stores overlaps, read the block of pixels of current indication the not integrogram of the pixel in described memory storage of integrogram from described pre-snubber assembly, and
Wherein said computing unit further is configured under the situation that the respective pixel of the integrogram of the block of pixels of current indication and described pre-buffer means stores overlaps, and the integrogram that will read from described pre-snubber assembly is as the integrogram that is calculated of described respective pixel.
5. as claim 2 or 3 or 4 described image processing equipments, the capacity of wherein said memory storage only can be stored the integrogram of a described block of pixels.
6. image processing equipment as claimed in claim 1, wherein the block of pixels of all sequences is alignd with the block of pixels at presequence in a block of pixels of back sequence in the flanking sequence by the ascending order or the descending sort of positional value on the second direction.
7. image processing equipment as claimed in claim 1, wherein the block of pixels of odd sequence is arranged by one of the ascending order of positional value on the second direction and descending, the block of pixels of even sequence is arranged by the ascending order of positional value on the second direction and the another kind of descending, aligns with the tail block of pixels at presequence in a block of pixels of back sequence in the flanking sequence.
8. image processing method comprises:
Each block of pixels in definite in order image in a plurality of block of pixels of same size is also indicated described block of pixels, according to described order, one of picture altitude and Width, be on the first direction the identical block of pixels in position by wherein another, be that positional alignment on the second direction is a sequence, described sequence is arranged by the ascending order of positional value on first direction, and adjacent pixel blocks is joined each other or overlapped in the same sequence, and the position range of flanking sequence on first direction joins each other or overlap;
Calculate the integrogram of indicated block of pixels; With
Integrogram according to each described block of pixels comes carries out image processing respectively,
Wherein said calculating comprises:
Store the integrogram that is calculated into memory storage;
Each pixel at integrogram the unknown in the block of pixels of current indication, exist under the situation that integrogram concerns at the integrogram of the integrogram of the neighbor of the pixel value of described image and the described pixel of being stored and described pixel, read the integrogram of described pixel value and neighbor; With
According to described integrogram relation and the integrogram that is read and the integrogram of the described pixel of calculated for pixel values.
9. image processing method as claimed in claim 8, the off-capacity of wherein said memory storage be with the integrogram of the pixel of storing all block of pixels,
Wherein said storage comprises at each integrogram that is calculated, and described integrogram is write the position of satisfying following condition in the described memory storage:
Do not store the integrogram of the block of pixels of current indication in described position, perhaps
If store the integrogram of the block of pixels that does not belong to current indication in described position, then the respective pixel of this integrogram is with the pixel of calculated product component is not adjacent as yet in the block of pixels of current indication.
10. image processing method as claimed in claim 9 also comprises:
At in each block of pixels of the sequence of current calculating on first direction the position identical and join with the block of pixels of next sequence or be arranged in each pixel of the block of pixels of next sequence, be the buffering pixel of next sequence, the integrogram of the buffering pixel calculated write the position of off-capacity to satisfy following condition in the snubber assembly of storage than the integrogram of the more pixel of pixel of arranging along second direction in the described image:
Do not store the integrogram of described buffering pixel in described position, perhaps
Do not belong to described buffering pixel if store integrogram and described integrogram in described position, then the respective pixel of the integrogram of described position is with the pixel of calculated product component is not adjacent as yet in the block of pixels of current sequence;
Under the situation that the respective pixel of the integrogram of the block of pixels of current indication and described buffer means stores overlaps, from described snubber assembly read integrogram the block of pixels of current indication not the pixel in described memory storage integrogram and with the integrogram that reads the integrogram that is calculated as described pixel; And
For the pixel in described memory storage not of integrogram in the block of pixels of current indication, pixel value at image, between the integrogram integrogram of this pixel and described buffer means stores and this pixel adjacent pixels, perhaps at the pixel value of image, the integrogram of this pixel, exist in integrogram described buffer means stores and this pixel adjacent pixels and the described memory storage and between the integrogram of this pixel adjacent pixels under the situation of integrogram relation, read the integrogram of described pixel value and neighbor, and according to described integrogram relation and the integrogram that is read and the integrogram of the described pixel of calculated for pixel values.
11. image processing method as claimed in claim 10, wherein the block of pixels of odd sequence is arranged by the ascending order of positional value on the second direction, the block of pixels of even sequence is alignd with the tail block of pixels at presequence in a block of pixels of back sequence in the flanking sequence by the descending sort of positional value on the second direction
Wherein said method also comprises:
Calculate the integrogram of the pixel of positional value maximum on the second direction that each sequence covered except that first sequence in advance;
Described precalculated integrogram is stored in the described pre-snubber assembly;
Under the situation that the respective pixel of the integrogram of the block of pixels of current indication and described pre-buffer means stores overlaps, read the block of pixels of current indication the not integrogram of the pixel in described memory storage of integrogram from described pre-snubber assembly, and with the integrogram that the read integrogram that is calculated as described pixel.
12. as claim 9 or 10 or 11 described image processing methods, the capacity of wherein said memory storage only can be stored the integrogram of a described block of pixels.
13. image processing method as claimed in claim 8, wherein the block of pixels of all sequences is alignd with the block of pixels at presequence in a block of pixels of back sequence in the flanking sequence by the ascending order or the descending sort of positional value on the second direction.
14. image processing method as claimed in claim 8, wherein the block of pixels of odd sequence is arranged by one of the ascending order of positional value on the second direction and descending, the block of pixels of even sequence is arranged by the ascending order of positional value on the second direction and the another kind of descending, aligns with the tail block of pixels at presequence in a block of pixels of back sequence in the flanking sequence.
CN2010101165889A 2010-03-01 2010-03-01 Image processing equipment and method Pending CN102194202A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010101165889A CN102194202A (en) 2010-03-01 2010-03-01 Image processing equipment and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010101165889A CN102194202A (en) 2010-03-01 2010-03-01 Image processing equipment and method

Publications (1)

Publication Number Publication Date
CN102194202A true CN102194202A (en) 2011-09-21

Family

ID=44602229

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010101165889A Pending CN102194202A (en) 2010-03-01 2010-03-01 Image processing equipment and method

Country Status (1)

Country Link
CN (1) CN102194202A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103236034A (en) * 2013-04-16 2013-08-07 重庆绿色智能技术研究院 Method and device for rapid generation of integral image based on LSI (large scale integration) circuit
CN107368834A (en) * 2016-05-12 2017-11-21 北京君正集成电路股份有限公司 A kind of direction gradient integrogram storage method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080037839A1 (en) * 2006-08-11 2008-02-14 Fotonation Vision Limited Real-Time Face Tracking in a Digital Image Acquisition Device
CN101369315A (en) * 2007-08-17 2009-02-18 上海银晨智能识别科技有限公司 Human face detection method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080037839A1 (en) * 2006-08-11 2008-02-14 Fotonation Vision Limited Real-Time Face Tracking in a Digital Image Acquisition Device
CN101369315A (en) * 2007-08-17 2009-02-18 上海银晨智能识别科技有限公司 Human face detection method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SHOAIB EHSAN等: "《2009 Digital Image Computing:Techniques and Applications》", 31 December 2009, article "Novel Hardware Algorithms for Row-Parallel Integral Image Calculation", pages: 61-65 *
居然: "Adaboost算法并行硬件架构研究与FPGA验证", 《中国优秀硕士学位论文全文数据库信息科技辑》, 15 December 2009 (2009-12-15) *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103236034A (en) * 2013-04-16 2013-08-07 重庆绿色智能技术研究院 Method and device for rapid generation of integral image based on LSI (large scale integration) circuit
CN103236034B (en) * 2013-04-16 2016-03-30 中国科学院重庆绿色智能技术研究院 Based on Quick integral image generation method and the device of LSI circuit
CN107368834A (en) * 2016-05-12 2017-11-21 北京君正集成电路股份有限公司 A kind of direction gradient integrogram storage method and device

Similar Documents

Publication Publication Date Title
US11113546B2 (en) Lane line processing method and device
JP5340088B2 (en) Information processing method and apparatus
CN100578545C (en) Method for generating label image and image processing system
KR102393665B1 (en) Graphics processing systems
JP6897042B2 (en) Image inspection equipment, image inspection method and image inspection program
JP5854802B2 (en) Image processing apparatus, image processing method, and computer program
CN108664981A (en) Specific image extracting method and device
JP7261226B2 (en) Arithmetic processing unit
KR102624587B1 (en) Compression of semantic information for task and motion planning
US11113361B2 (en) Electronic apparatus and control method thereof
CN105630449A (en) Multi-window data access method and system for video stitching processor
CN111223083A (en) Method, system, device and medium for constructing surface scratch detection neural network
CN104573675A (en) Operating image displaying method and device
CN107705270A (en) The treating method and apparatus of medium filtering, electronic equipment, computer-readable storage medium
CN111144494A (en) Object detection model training method, object detection device, object detection equipment and object detection medium
CN102750689A (en) Image processing apparatus and control method thereof
CN100595794C (en) Drawing device
CN104992146A (en) Method of face identification and apparatus thereof
AU2013273768A1 (en) Parallel rendering of region-based graphics representations
CN109978017B (en) Hard sample sampling method and system
CN102194202A (en) Image processing equipment and method
CN114359048A (en) Image data enhancement method and device, terminal equipment and storage medium
CN1564190A (en) Image processing method of detecting ellipsoid by utilizing restricted random Huff transition
CN116091297A (en) Image connected domain marking hardware implementation algorithm
CN113807407B (en) Target detection model training method, model performance detection method and device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20110921