WO2002005206A2 - Distortion-free image contrast enhancement - Google Patents
Distortion-free image contrast enhancement Download PDFInfo
- Publication number
- WO2002005206A2 WO2002005206A2 PCT/CA2001/000982 CA0100982W WO0205206A2 WO 2002005206 A2 WO2002005206 A2 WO 2002005206A2 CA 0100982 W CA0100982 W CA 0100982W WO 0205206 A2 WO0205206 A2 WO 0205206A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- image
- data
- points
- range
- point
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 87
- 230000006870 function Effects 0.000 claims description 32
- 238000009966 trimming Methods 0.000 claims description 3
- 230000001629 suppression Effects 0.000 claims description 2
- 230000000295 complement effect Effects 0.000 claims 1
- 238000012937 correction Methods 0.000 abstract description 44
- 238000013459 approach Methods 0.000 description 17
- 238000004458 analytical method Methods 0.000 description 15
- 238000004364 calculation method Methods 0.000 description 11
- 238000007792 addition Methods 0.000 description 10
- 238000003491 array Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 238000000926 separation method Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 210000004072 lung Anatomy 0.000 description 5
- 230000003321 amplification Effects 0.000 description 4
- 230000000052 comparative effect Effects 0.000 description 4
- 238000003199 nucleic acid amplification method Methods 0.000 description 4
- 238000010420 art technique Methods 0.000 description 3
- 230000001965 increasing effect Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- LWCVWGNRFYSORH-UHFFFAOYSA-N BBBBBBB Chemical compound BBBBBBB LWCVWGNRFYSORH-UHFFFAOYSA-N 0.000 description 2
- 239000000654 additive Substances 0.000 description 2
- 230000000996 additive effect Effects 0.000 description 2
- 230000003466 anti-cipated effect Effects 0.000 description 2
- 238000011976 chest X-ray Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 238000012804 iterative process Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000009304 pastoral farming Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000940835 Pales Species 0.000 description 1
- 206010033546 Pallor Diseases 0.000 description 1
- OAICVXFJPJFONN-UHFFFAOYSA-N Phosphorus Chemical compound [P] OAICVXFJPJFONN-UHFFFAOYSA-N 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 230000001609 comparable effect Effects 0.000 description 1
- 238000002591 computed tomography Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003467 diminishing effect Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000003702 image correction Methods 0.000 description 1
- 210000001930 leg bone Anatomy 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000004197 pelvis Anatomy 0.000 description 1
- 238000003908 quality control method Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 210000004872 soft tissue Anatomy 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 210000001519 tissue Anatomy 0.000 description 1
- 230000002792 vascular Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/40—Image enhancement or restoration by the use of histogram techniques
-
- G06T5/94—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10116—X-ray image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30004—Biomedical image processing
Definitions
- the present invention relates to methods for improving the contrast between neighboring data in digital X-ray images. More particularly, the method determines the actual contrast between neighboring digital image data and stretches each point's intensity to the image's dynamic range without distorting the image.
- An X-ray image is typically with standard X-ray machines using film photography. In these cases the resulting X-ray image is turned into a computer file by the use of digital scanning technology. More recently, there are X-ray machines that use a bank of light-sensitive sensors for directly capturing a digital version of the X-ray image. The X-ray image is used as a medical diagnostic tool. While there are other related imagery processes that are superior, in particular CAT scans and MRI-s, X-ray images are still widely used and comprise the majority of such images and this is very likely to continue because they are comparatively inexpensive. The current invention improves the usefulness of X-ray images to doctors.
- Maack For instance in US patent 5,357,549 to Maack et al. (Maack), a technique is provided for stretching image intensity in only a particular area of interest - such as the lung area of a chest X-ray.
- Maack refers to this as dynamic range compression. Maack locates low frequency components, determines equalization factors and applies them to the image for compressing low frequency components; thus leaving the remainder of the dynamic range available for higher frequency areas of the image intensities. This approach is unable to enhance more than one image intensity area which has been selected and is of immediate interest to the diagnostician, with loss of data the other areas.
- US patent 5,835,618 to Fang improves on Maack using a method of dynamic range remapping for enhancing the image in both dark and bright intensity areas.
- This remapping or correction technique amounts to smoothing the data (such as through a low-pass filter), determining the data mean, adjusting the smoothed data to the mean, and then applying that smoothed, adjusted data to the original data.
- Two curves of adjusted data are provided, each offset from the mean, one of which is offset upwardly by a constant ( ⁇ 1)
- the original data within the range is adjusted by the difference in the data's original and mean intensity, this difference being scaled by a user-defined control parameter between 0 and 1. Then the adjusted data is scaled to the full dynamic range of the image. Data outside the range is adjusted using a different algorithm.
- the method of Fang treats data within and without the range differently with the result that artificial details and other distortions result, such as the creation of a discontinuity at the range boundary.
- Data just inside the range data just outside the range can result in very different values, distorting stronger signals.
- the adjusting algorithms produce these distortions whenever the smoothed image deviates from the mean of the entire image, the magnitude of the deviation affecting the magnitude of the distortion.
- Fang recognizes that the user can manipulate the degree of dynamic compression.
- the user must manipulate each of: the attenuation of the correction, the upward offset, and the downward offset. For instance, the larger the chosen range, then the more the distortion is minimized but also the more the subtle details are lost.
- a smaller range can enhance weaker signals, however, the stronger signals become badly distorted. That is to say, the process requires time and effort and experience on the part of the user to manage three parameters to try to both minimize the image distortion while maximizing the image enhancement.
- the process is applied to images where variation between neighboring points is digitally significant but the contrast is too low for the human eye to discern.
- Such cases include X-ray images.
- the current invention enhances this information in order to make a more revealing, processed X-ray image.
- the achievements of the current invention are:
- an image is enhanced through the local enhancement of the contrast between neighboring point intensities by fitting a first low frequency upper curve or surface to the local maximums and fitting a second independent, and low frequency lower curve or surface to the local minimums, the space or volume between forming a fairway.
- the raw image data resides within the fairway.
- a local range between the fairway local maximum intensity and fairway local minimum intensity is extracted for each point.
- a local scaling factor is determined as the ratio between the local range and the dynamic range for the image.
- Each point is then scaled by its local scaling factor so as to maximize the variation in intensity between it and its neighboring points.
- the low frequency curves are determined using a two dimensional moving average, accommodating variations in point intensities both between neighboring columns and neighboring rows.
- outlier points falling outside the fairway are enhanced, not by a distorting truncation process but, through a histogram correction which rescales the enhanced image based upon a determination of intensity range of the outliers.
- the locally scaled outliers have intensities outside the image's dynamic range and thus are temporarily stored or preserved at a higher precision.
- all of the data stored as high precision intensities, including outliers are placed in a histogram having a predetermined or expanded range greater than the image's dynamic range and large enough to capture substantially all of the outliers.
- a histogram count is made and a predetermined trim rate is applied to the histograms low end and top end.
- the trimmed image points have a trimmed range which defines a new range having a minimum intensity and a new maximum intensity. All the points are scaled a second time, this time at a scaling factor determined as the ratio of the trimmed range and the image's dynamic range.
- the low frequency curves are determined using a two dimensional moving average and, more preferably, using filter box mean determination which markedly reduces the number of calculations required by taking the preceding filter box sums and merely subtracting the lagging point intensities and adding the leading point intensities to obtain a new filter box sum.
- filter box mean determination which markedly reduces the number of calculations required by taking the preceding filter box sums and merely subtracting the lagging point intensities and adding the leading point intensities to obtain a new filter box sum.
- filter box mean determination which markedly reduces the number of calculations required by taking the preceding filter box sums and merely subtracting the lagging point intensities and adding the leading point intensities to obtain a new filter box sum.
- filter box mean determination which markedly reduces the number of calculations required by taking the preceding filter box sums and merely subtracting the lagging point intensities and adding the leading point intensities to obtain a new filter box sum.
- Merely normalizing each box sum by dividing by the sum by the number of points in the
- Figure 1 is an X-ray of a chest in which many details are immediately visible, but other detail appears lost in the seemingly uniform light areas of the pelvis and vertebral column, and the uniformly dark vascular areas of the lung;
- Figure 2 is a digitally enhanced image of the X-ray of Fig. 1 , after application of the preferred method of the present invention
- Figure 3 illustrates a fanciful representation of the mathematical selection of one sample column of data from the image of the X-ray of Fig. 1 for processing using the method of the present invention.
- the sample column is shown extracted from the image of Fig. 1 and set aside, the extracted column being shown with an exaggerated width for ease of viewing;
- Figures 4a and 4b are related graphs which illustrate the variation in data intensity within the sample column of data of Fig. 3,
- the image's bottom to top corresponds to the graph's left to right.
- Fig. 4b is a copy of the corresponding sample column, again exaggerated in width for viewing;
- Figure 5a and 5b are graphs of a simple prior art form of contrast stretching, applied to the data of Fig. 4a.
- Fig. 5a illustrates the data of Fig. 4a with a smoothed low frequency mean plotted thereon and Fig. 5b which illustrates rescaled output data based upon local data variations from the mean which have then been being stretched to the full dynamic range;
- Figures 6a - 6c illustrate related graphs, in which the process of the present invention was applied to the data of Fig. 4a.
- Fig. 6a illustrates the upper and lower bounding curves of the fairway.
- Fig. 6b illustrates the corresponding output data.
- Fig. 6c is a copy of the corresponding image column, exaggerated in width for viewing;
- Figures 7a and 7b are graphs of the raw input data of Fig. 4 having scaling fairways plotted thereon; the fairway of Fig. 7a being an ideal, freehand sketch; and the fairway of Fig. 7b being calculated using a preferred moving average process of the present invention;
- Figure 7c is a fanciful and partial representation of 2D bounding surfaces with the raw data residing therebetween;
- Figures 8a and 8b are isolated images which result from plotting the low frequency upper and lower bounding curves or smoothed trending functions respectively;
- Figure 9a and 9b are graphs which illustrate and compare the raw input data and a first fairway correction scaled data stored at a precision greater than the dynamic range;
- Figures 10a and 10b are graphs which illustrate the initial steps in determining the upper trending function.
- Fig. 10a illustrates a low frequency mean superimposed on the raw input data and
- Fig. ⁇ 0b illustrates the residual points at or greater than the mean;
- Figures 11a and 11b illustrate the iterative convergence determination from the data of Fig. 10b wherein a new mean is iteratively determined for the residual data remaining after applying the previous means so as to reduce the data population to a new and smaller number of residual points;
- Figure 12 is a graph illustrating data mirroring at the image edges;
- Figures 13a and 13f illustrate pseudo-code and variable definitions respectively for applying an efficient moving average technique to the image data
- Figures 13b - 13e are fanciful illustrations of the moving average technique for improving the efficiency of the summations, Fig. 13b for one 7- point row of column summations incremented one column; Fig. 13c using a 7x7 box column by column of row summations; and Fig. 13d and 13e using a 2D box with a row by row of column summations, and then incremented one column;
- Figures 14a - 14c illustrate pseudo-code and Figure 14d illustrate variable definitions for demonstrating one embodiment of the iterative method for applying the moving average data of Fig. 13a and determining the upper and lower bounding curves;
- Figure 15a illustrates pseudo-code for an improved convergence technique to replace the technique of Fig. 14b;
- Figure 15b is a graph which illustrates a faster convergence, iterative determination of the upper bounding curve for the data of Fig. 4a and according to the pseudo code of Fig. 15a;
- Figure 16 is a graph which illustrates, the resulting upper and lower bounding curves of a fairway obtained using the faster convergence technique of Fig. 15a;
- Figures 17a and 17b illustrate related graphs, more particularly, Fig. 17a illustrates the upper and lower bounding curves of the fairway according to Fig. 16, and Fig. 17b illustrates the corresponding output data after a second histogram correction step;
- Figures 18a and 18b illustrate pseudo-code and Figure 18c illustrates variable definitions for applying the upper and lower bounding curves determined according to Figs. 13a, 14a-14d and application of the first fairway and second histogram corrections for outputting corrected image data such as the image of Fig. 2;
- Figures 19, 20a, and 20b illustrate output images which result from variation of the extent of noise suppression. Specifically,
- Fig. 19 applies minimum bound separation (surfjridff) of 1.5%
- Figs. 20a and 20b apply a minimum separation of the bounding curves of 3% and are identical images to Fig. 2, reproduced for comparative convenience, and
- Fig. 21 applies minimum bounding curve separation of 12%.
- Figures 22 - 25 illustrate output images which result from a variation of the extent of filtering (imag_pcnt), as it applies to the demonstrated moving average technique.
- Fig. 22 applies a filter of 5% of the image size and again is an identical image to Fig. 2, reproduced for comparative convenience
- Fig. 23 applies a filter at 7%
- Fig. 24 applies a filter at 10%
- Fig. 25 applies a filter at 20% of the image size.
- Every digital device has a dynamic range which is a measure of it's ability to record relative energy fluctuations.
- a dynamic range is usually set by the recording or scanning resolution and the digital storage means (data file).
- a typical digital file uses 8 bit storage which gives a dynamic range of 0 - 255.
- files using 10 bit storage which gives a dynamic range of 0 - 1024, 12 bit storage which gives a range of 4096, and 16 bit storage which gives a range of 0 - 65,535.
- Applicant illustrates the process of the present invention using an 8 bit storage (0 - 255), the process being independent of the actual image dynamic range, and not intending that the disclosed range being limiting.
- the present invention recognizes that one part of maximizing local contrast is to stretch the local range to the dynamic range. Relative contrasts, from point to nearby point, are preserved at the local level - each significant sized sub-section of the processed image must make use of most of the dynamic range of the technology being used. Another part of the enhancement technique is to determine the local ranges to be stretched. Another part is to minimize or prevent distortions associated with clipping at the extremes of the dynamic range. Clipping occurs where contrast stretching scales an intensity value to a theoretical value beyond the minimum or maximum. For example, for a dynamic range of 0-255, scaled output values in the hypothetical range of 256 - 300 can only be recorded as 255 and thus details within such areas are lost.
- an image 10 is provided for image enhancement.
- the present invention was applied to generate the output image 30 of Fig. 2.
- Image 10 comprises a data array of about 878 by 1007 pixels, each pixel having being stored with a sample dynamic resolution of 0 - 255 levels of intensity.
- the majority of this disclosure illustrates application of the present invention as it applies in a one dimensional manner to only one sample of the 878 columns of data. As is also described herein, the process actually is performed in two dimensions using nested operations for analyzing both rows and columns.
- This one dimensional, mid-processing columnar example is introduced as follows.
- a column of data 11 selected from about 2/3 of the way across the image, from the left, is shown as physically being extracted from the image 10 (illustrative purposes only).
- the raw data of the sample column 11 is plotted as high frequency curve 14.
- the left-hand side of the graph corresponds to the bottom of the X-ray image 10.
- the horizontal axis corresponds to an index of the number of dots or points counted from the bottom of the image 10 (0-1007).
- the vertical axis is the relative intensity of each point in terms of a fraction of the dynamic range.
- the value 1.0 means as white as possible (the top of the dynamic range limit of 255 for this particular file) and 0 is as black as possible (the lower dynamic range limit). While substantially the entire dynamic range (0 to 1) of black to white was used in this image, this particular column or subset of data only uses only about 75% of it. For example, the relative intensity of the data at the spine of image 10 is nearly 1.0.
- Fig. 4b the sample column data 11 is illustrated shown corresponding to the orientation of the raw data curve 14.
- Fig. 5a and 5b it is known in the art to preserve local contrast by removing the low frequency components from raw data 11 of Fig. 4a and stretching the resulting range to the full dynamic range.
- Fig. 5a a calculated and smoothed low frequency curve or trend 15 is superimposed on the real data 14 from which it was calculated using known techniques.
- an output curve 16 is produced as a result of subtracting the trend 15 from the raw data 14 and then the minimum and maximum for the data are scaled to the dynamic range.
- This simple approach preserves the local detail, however, the residual data graph of Fig. 5b is inadequate in terms of how the dynamic range is used locally.
- the data at 17, having a very small peak-to-trough range at points 330 to 350, data at 18 at 580 to 620 and the data at 19 that spans from 780 to 850 would ideally be corrected to a similar use of the dynamic range.
- the range of data at 18 uses about only about one fifth of the dynamic range whereas the data at 17, uses about half, and the data at 19, uses nearly all of the dynamic range.
- This method treats all sets of data 14 the same and thus does not maximize the visibility of the detail within an X-ray image.
- Fig. 5b one can see that due to the large range intensity data at 19, causes the small intensity range for data at 18 to only be stretched to about 25% of the dynamic range.
- curves 20,21 represent one concept of providing an ideal bounding of the raw data 14.
- These bounding curves 20,21 have a low frequency and further have the characteristic that they graze the raw data's local extreme values; the upper bound grazing local maximums (20j,20j + ⁇ ...20 n ) and the lower bound grazing the local minimums (21 j,21 i+1 ...21 n ).
- the low frequency aspect of the two curves 20,21 ensures that the local relative intensities or local contrast are preserved, just as in the case of the single trend curve 15 of Fig. 5a.
- the bounding curves 20,21 are independently responsive to the actual data 14 and not on a mean value 15.
- the upper and lower bounding curves 20,21 form a bounding fairway 22 which can be analogous to a defined data range which will be ultimately stretched to the dynamic range.
- the intensity range data 18 at 580 - 620 and data 19 at 780 - 850 are both directly scalable to about 100% of the dynamic range, in contradistinction to the mere 25% of prior art Fig. 5b.
- the challenge for the present invention is to determine where these upper and lower bounding curves 20,21 are to be placed and how, and to overcome complicating limitations imposed by computer processing systems.
- the remainder of this specification discloses methods for determining these bounding curves 20,21.
- a mathematical correction as introduced in Equation 1 , (also a R, Fig. 18a) applies the bounding curves 20,21 to adjust each raw input data point, one at a time.
- An input data point is a pixel or point having a known intensity, for the selected column 11 from Fig. 3, selected from the sample images 1007 points or rows in each column 11.
- Image Point - is the value of the input data at a given point
- Lower Bound - is the value of the minimum curve at the very same point
- Upper Bound - is the value of the maximum curve at the very same point
- Dynamic Range Limit - is the Dynamic Range Limit for the file or system (here 256);
- Output Data - is the corrected data value.
- the success of this first correction depends upon the method of determining the upper and lower bounding curves 20,21 , determined from the raw input image data 14 and two predetermined variables or parameters.
- the eptire length of the upper curve 20, for the sample column of Fig. 3,4a produces a failure rate of clipped data of only about 0.2% of the population of the column's data 14. Any clipped data turns out to be the least important of the points as they are spread throughout the corrected image 30 with the result that no neighboring group of points of the original image 10 is distorted. So, even though the bounding curves 20,21 themselves may be associated with a failure rate of about 10% at the first step, the second and final correction results in the much lower failure rate of 0.2%.
- Eqn. 1 is applied to the raw data of image 10 and the image results are temporarily stored using a variable type having more precision than the image dynamic range limit.
- a dynamic range limit of 0-255 (8 bit), 1023 (10 bit), or 4095 (12 bit) as are currently common values for stored image data, a standard 2 byte (16 bit) signed integer variable would suffice.
- the 2 byte integer allows for a larger range, to approximately +/- 32,000 and includes negative numbers as well. Accordingly, a 2 byte signed integer can holds the outliers without incurring any distortion effects.
- Equation 1 applies Equation 1 to the sample column data 14 of Fig. 3,4a, and using the dynamic range limit of 0-255 as an example, the calculated temporary data 24 ranges almost from -50 to 350.
- the resulting data ranges would produce distortions for outlier points lower than 0 and greater than 255 except that they are being temporarily stored in the higher precision 2 byte integer variables.
- a second histogram correction is applied to appropriately scale the resulting data 24 of this fairway correction, Fig. 9b, to the actual dynamic range.
- the temporary high precision image data of Fig. 9b is, for the most part, forced back into the dynamic range of the image.
- Various means can be employed.
- One approach is employs a forced failure rate. Simply, a histogram of the temporary data 24 is calculated and a very small level of outlier points 23 are sacrificed for the good of the majority of the data 14. A reasonable first pass is to clip or trim about 1 %; that is, the bottom 1 % and the top 1 % of the data is trimmed and the remaining points are scaled back to the image's dynamic range.
- the second correction uses a histogram to assembly the fairway correction temporary data 24 of Fig. 9b and trims the lowest and highest 1% of the data.
- the remaining trimmed range of point values in the higher precision temporary variables are then scaled back again to the lower precision of the dynamic range of 0 to 255.
- the resulting output data 34 is shown in Fig. 6b with the entire output data for all points being represented in the output image 30 of Fig. 2.
- the effect on the output data 34 for the sample column 11 is illustrated in Fig. 6b, wherein contrast is significantly increased, and to the same dynamic range, regardless of whether the points were originally neighboring in a substantially low intensity (dark) region of the image 10, or substantially high intensity (light) region. Compare column 31 of Fig. 6b, representing the enhanced data 34, with the original column 11 and data 14 of Fig. 4b.
- the fairway's upper and lower bounding curves 20,21 define local dynamic ranges which are all nearly equal, even though they encompass each of the medium range of intensity data 17 present at points 330 to 350, the small range of data 18 at 580 to 620 and one of the largest local ranges of data 19 at 780 to 850.
- the trim rate is found to be far less than 1 %.
- the criteria define the rules which, in one sense, attempt to best duplicate the freehand curves of Fig. 7a.
- the criteria include that:
- the frequency of each curve 20,21 is low enough (smooth enough) to preserve the local detail and yet is high enough to separate sub-areas of interest (for example, so as to preserve each of the contrast within a rib of Fig. 3, contrast within the lung between the ribs, and contrast between a rib and the lung);
- two bounding curves 20,21 are fit to the raw input data.
- One upper curve 20 having a low order or low frequency is fit, as best as possible, to the maximum intensities for the data 14.
- a second curve 21 also having a low order or low frequency is fit, as best as possible, to the minimum intensities for the data 14. Ignoring any outliers 23, each point which is between the two bounding curves 20,21 can be scaled to the image's dynamic range. Because it is inevitable to have outliers 23 with any numerical method used to determine the upper and lower bounding curves 20,21 , the above described second histogram technique is provided to minimize their effects on the image enhancement.
- One method of determining the upper and lower bounding curves 20,21 is to apply a moving average. This simply means that a trend 15 is produced which is made up of a series of points, each of which is an average of its surrounding or neighboring data.
- a one dimensional (1 D) analysis would simply be to sum the intensity data 14 contained within a predetermined interval, and then repeat that for each point up and down the sample column 11.
- a 2D analysis averages all of the intensity data within an area surrounding each point as it is analyzed.
- the concept of an area as a rectangular box is implemented, with the average or mean being applied at its center.
- This box or filter box is dimensioned as a specified number of rows either side of the point (as would be the case in a solely 1 D analysis), and a number of columns either side of the point.
- Upper and lower bounding curves 20,21 are determined for the selected column 11. Use of a 2D analysis ensures that, not only is continuity maintained between adjacent points in a column 11 but, also continuity between adjacent columns 11 ,11,11 ... is maintained. In fact, using a 2D analysis, the example column-by-column analysis provides exactly the same effect as a row- by-row analysis.
- Each column 11 is made up of a plurality of neighboring points, one point in each column-intersecting row, each of which is associated with an intensity value (within the dynamic range).
- a first moving average is performed so as to place a low frequency or smoothed curve 15 through the mean of the raw intensity data.
- This mean curve divides the raw data 14 into a residual upper population 40 of points; those having an intensity greater than the first mean curve 15. It also divides the raw data 14 into a residual lower population 41 of points; those having an intensity less than the first mean curve 15.
- each successive mean curve lies shifted further and further towards the maximal and minimal intensities 20 r 20 n and 21 r 2.1 n of the raw data 14 respectively.
- a moving average technique is applied to the raw data of Fig. 4a.
- a first mean low frequency curve 15 is calculated and superimposed on the raw data 14 of Fig. 4a.
- the result is a partial low frequency curve 24 s ; partial because only the residual' population 40 of points greater than the low frequency curve 24j have been plotted.
- determination of the upper bounding curve 20 and the lower bounding curve 21 are performed in the same manner, iteratively determining successive mean curves and reducing the respective data populations 40,41.
- the description for the upper bounding curve 20 applies equally to the lower bounding curve 21.
- the first step is to replace input data that is lower than the calculated mean low frequency components data. Having reference to Fig. 10b, the resulting data 24j is depicted, and for clarity, the lower points (used for determining the lower bounding curve 21) are shown omitted from the graph.
- the first step is to identify the residual upper population 40j and create an artificial image that is composed, on a point by point basis, of the greater of the input data and the previously calculated low frequency component's data, in this case the first mean curve 15.
- the resulting population 40j of artificial data has detail at the local peaks and has only low frequency components at the local valleys.
- a successive and new mean curve 24j+ ⁇ is calculated.
- the new low frequency components of this residual population being composed of the greater values of the real data local peaks and the valleys of the low frequency mean curve 24j+ ⁇ , on a point by point basis, are calculated and a second residual population 40j+ ⁇ is again created being composed of the maximum of the residual population and its low frequency components.
- this process is repeated in an iteration loop from i to n iterations, each successive mean curve retiring to become a previous mean curve 24-, as each successive mean curve 24j+ ⁇ is calculated.
- the fairway 22 of the columnar data 14 can be extended in the second dimension (adjacent columns) for each successive analyzed set of raw data 14, and is analogous as the volume between two smooth surfaces made up of each adjacent upper bounding curve 20,20,20 ... (20+) and each adjacent lower bounding curve 21 ,21 ,21 ... (21+).
- bounding curves 20,21 and surfaces 20+,21+ are used interchangeably herein and generally reflect the context of the analysis process, such as whether the image is analyzed on a line-by-line 1 D curve basis or in 2D simultaneously defining surfaces for efficiency purposes.
- the criteria can be restated in a slightly modified form, being: the maximum and minimum bounding surfaces 20+, 21+ are made of low frequency components; the maximum and minimum surfaces graze the local extreme data points (20r20 n or 21j-21 n ); and the fairway 22 separating the surfaces is close to the extreme ranges of the data with only a small number of outliers 23 ending up outside of the volume between the surfaces.
- the final iteration 40 n ends up with a maximum bounding curve 20 that satisfies each of the criteria above.
- one conventional approach to determining low frequency components of a data set is to use a moving average technique or filter, simply stated to: consider a subset of the data (the image); calculate the average of this subset (average intensity); and place this value in a second image data array at the center of the subset (mean intensity).
- the most straightforward two dimensional (2D) implementation is to use a filter box having an odd number of points in each of the row and column dimension, making the mean point easy to determine and index in various data arrays.
- a rectangular filter box is disclosed; the average of the points within the box being calculated and the result being stored at the point located at the box's center. The center of the moving average filter box is moved over one point and a new average is then calculated for the next output point.
- Efficient algorithms ensure that repeated calculations are minimized and in this sense there may never be a physical manifestation of the box. This process is performed for all points in the image.
- Other shapes, such as circles, can be used and weighted averaging schemes can also be used as well.
- the size of the box determines whether the order or frequency is low or high. For instance, for the 1007 data points of the example column of raw input data, a filter box of 503 points would hypothetically result in two mean points or a linear curve of zero frequency, blending all of the data of image 10 and obscuring any contrast variations. If the box is merely one or three points wide, the mean would be virtually identical to the raw data, resulting in a high frequency curve which would not preserve the local data at all. The choice of the size of the filter is discussed in greater detail below.
- a moving average filter analysis has several practical weaknesses, including: one being that there is no data past the edges and thus artificial techniques are required to calculate the low frequency components near the edges; and another being that there is a high computational inefficiency, due to many redundant additions.
- a temporary data array (imag) is provided which is larger than the dimensions of the image data.
- the image data is stored in the array with sufficient room available at the beginning and at the end of the image data for the mirrored data.
- the amount of points mirrored is dependent upon the size of the moving average filter box. At least as many points as Vz of the filter box size (dimensions of col_pad and row_pad) must be mirrored to place the filter box at the image edge and still calculate a mean and store it at the image's edge. More particularly, and having reference to Fig.
- the original input data is the same as previous graphs except that there is a larger range of point numbers; for the 878x1007 point image of Fig. 1 , going into the negative numbers lower than point 1 and beyond the image edge of 1007.
- the mirrored data 44 is shown prior to point 1 and after point 1007 as denoted by solid vertical lines 51.
- the extra artificial data is exactly a point-by-point mirror image of the real data 14, which ranges from points 1 to 1007 on this graph.
- This mirroring is one practical way to handle the image's edges because the resulting artificial mirrored data 44 has similar characteristics to the real data 14 including: the point to point contrasts between real data-and-artificial data or artificial data-and-artificial data are the same as that found within the actual input raw data; and basic statistical qualities of the input data and the artificial data are similar.
- the normally inefficient moving average can be made more efficient through the repeated use of values calculated once and applied many times.
- This determination is also referred to in the pseudo code of Fig. 14a as subroutine effc_2dma when used to calculate the upper and lower bounding curves 20,21.
- Mirrored data 44 is generated all around the edges of the image 10, by a sufficient number of rows and columns to satisfy at least Yz of the anticipated dimensions of the filter box.
- moving average technique can be applied to find the low frequency bounding curves 20,21.
- a moving average technique is computationally inefficient as there are many repeated calculations (additions). This is of particular concern as the moving average technique is to be used in an iterative process.
- the overall image dimensions are initialized as rmin and rmax, including the mirrored data of dimension rows-pad.
- the filter box column dimensions are initialized as c2bg and c3en.
- a rectangular moving average filter box with uniform weighting (of 1.0) is applied.
- the intensity values for a subset of a line (1 D) or a box of points (2D), the filter box is summed.
- the surrounding filter box of points is incremented one point, each point is summed and a mean is calculated.
- the number of operations is each to the number of point addition and a division to get the mean.
- Efficiency is improved by acknowledging that the bulk of the filter box averaging calculations are repeated.
- a filter box having a demonstrated dimension of 1 row by seven column points BBBBBBB are summed (7 additions) and are divided by 7 to determine the mean, as indicated in a highlighted square at the center of the BBBBBBB.
- the filter is incremented one column, the value of the point in the leftmost column is subtracted from the sum and the value of the point in the rightmost column is added, all of which is again divided by 7.
- the result is only 2 arithmetic operations and one division. For larger filter boxes, this results in large computational savings. Applicant has improved this known approach to apply in work in 2D and can apply it to an entire image 10 while avoiding repeat calculations in these very large arrays of points.
- Fig. 13c a plurality of filter subset points in adjacent rows (seven high, three below center and three above) are summed and then the resulting row sums are summed across a plurality of filter columns (7 wide). Resulting in the same calculated mean, in Fig. 13d a plurality of filter subset points in adjacent columns (seven wide, three left of center and three right) are summed and then the resulting column sums are summed across a plurality of filter rows (7 high).
- Fig. 13e illustrates a 2D application of a row-by-row traverse of the efficient calculation approach as described in Fig. 13b for one dimension.
- Figs. 13d, 13e are only visually illustrative of a moving average technique applied in 2D. Actually, as can be seen in the code in Fig. 13a at C and D, the analysis is actually staged into two iterative steps and a normalization step.
- one dimensional filter box column sums are calculated for the plurality of points within the filter box dimension, and are stored in the array (stot). For the entire image, each successive filter box column sum is calculated using the efficient 1 D approach.
- the array (stot) is indexed by the center point for the filter box column sum.
- a point by point moving average analysis is performed, effectively determining every moving average curve in the image simultaneously.
- the filter box column sums (stot) below the point, at, and above the point are summed - pulling the column sums from the stot array.
- the division by the number of filter box points or normalization step is not yet done.
- the same efficient concept is applied by subtracting each previous filter box column sum stot and adding each successive sum as the calculation loop traverses, and whether on a column-by-column or row-by-row basis.
- every point in the image is normalized by the number of points (npts) in the filter box.
- a first nested loop for irow and ico2
- image data for neighboring columns is summed (the filter box column sums or partial sums) for the filter box of the first sample column 11.
- the first nested loop (ico2) calculates the partial sums for points in columns either side of the sample column direction (the width of the filter box), and at a particular row position for the first column of the input data.
- the second nested loop (irow) then increments the partial sum routine, row-by-row and up the column between the image limits.
- the second of the nested loops calculates the partial sums for each successive column.
- efficiencies are improved as described above; as one moves from the first column to the last column, and re-calculates the partial sums, the new sum is merely the last sum, less a trailing point and plus a leading point.
- the partial sums for the next incremental filter box are the same as dropping the previous first element (ico ⁇ ) and adding the current last element (ico4). In this way each partial sum is only done the one time, and not each time the box is moved.
- the total number of operations for the partial sums are very nearly equal to one addition and one subtraction for each point in the image.
- the filter box sums are performed. Note that a calculation consuming separate step is not required to obtain subtotals for the filter box row dimensions as they were done at C and indexed in an array (stot).
- the first nested loop at D calculates the filter box by combining the partial sums from C and the sums for neighboring points in the filter box for rows straddling the first row.
- the second nested loop at D then successively calculates the full filter box sums for the rest of the columns and for the rest of the rows. Again, this second step is again done as efficiently as possible. As the central point of the filter box only moves one position, the new sum is the same as dropping the previous first partial sum (iro ⁇ ) and adding the last current partial sum (iro4).
- the moving average filter box dimensions are set and the moving average mean curves 24j-24 n and 26
- the filter box dimensions can use predetermined default values. As is shown later, enhanceriient of the image 10 is rather insensitive to even large variations of the box size. For a certain type of image, a default value produces acceptable results.
- Fig. 14a at F one convenient way to reference the filter box size is to set it as a fraction of the dimensions of the image 10.
- Box parameters rows_pad and cols_pad are calculated from the number of image rows and columns; simply as a percentage of the dimension divided by two so as to provide the ! box dimension, either side of the box's center. Note that this is also how many data points 44 at the end points that need to be mirrored.
- array limits are defined to hold various temporary versions of the image data.
- the variables cmin, cmax, rmin and rmax were chosen so that the index values referring to the same data point in the original sized image 10 or mirrored sized data arrays are the same. It is understood that the storage, reading and writing of the original image and how columnar, rows and intensity data are extracted from data files or image arrays, is system and programming language specific, the means of which is known to those skilled in the art and is not detailed herein.
- image_wrk1 contains the raw data
- image_wrk2 contains the current upper bound data
- image_wrk3 contains the current lower bound data
- image_wrk4 holds the filter box sums for efficient processing.
- image_wrk2 is initialized to hold mirrored raw data and then routines data_mirr and effc_2dma calculate the moving average of the mirrored data and place it in image_wrk2, which is then copied to image__wrk3.
- data_mirr and effc_2dma calculate the moving average of the mirrored data and place it in image_wrk2, which is then copied to image__wrk3.
- the current approximations of the upper and lower extreme surfaces 20+, 21+ are, at this early point, are identical and simply equal to the moving average mean curve 15.
- the subroutines are only called once for the sake of efficiency.
- a tolerable failure rate, frat, for outliers 23 is set to an arbitrary value of 5% (for either above or below).
- the nature of the histogram correction is such that as long as the failure rate, during the iteration, is not huge, no problems are experienced.
- the upper surface iteration array imag_wrk2 is loaded up with the greater of the residual population of data 40 and the last iteration 50j of the upper surface 20+.
- the lower surface iteration array imag_wrk3 is loaded up with the lesser of the residual population 41 of data and the previous iteration 51 j of the lower surface 21. It is this first step that forces the data in the two arrays to be the upper and lower surfaces 20+, 21+.
- the third step of the iteration the low frequency components 50,51 of both residual upper and lower populations 40,41 of artificial data sets are found.
- the two latest approximations of the extreme upper and lower curves 20 are output from the subroutine effc_2dma and are stored in the arrays imag_wrk2 and imag_wrk3.
- the minimum and maximum surfaces 20+.21+ are required to have at least a specified minimum separation surfjndff. Whenever the surfaces are separated by less than the minimum, one point by point basis, the surfaces are then readjusted so that they are separated by the minimum; otherwise insignificant variations, possibly even noise, end up being scaled to the full dynamic range. This separation is done symmetrically, half to each surface.
- the four conditional "If statements at the end of the nested loop readjust the surfaces in the unlikely, but possible, event the previous adjustment pushes one outside of the dynamic range. After this step, the two surfaces will be separated by at least the minimum value everywhere.
- This fourth separation step J4 also aids in convergence of the iteration as it is less likely that data local to this correction will be found outside the adjusted volume between the surfaces 20+,21 +.
- the fifth step the number of outliers 23 outside of the volume between the two surfaces 20+.21+ establishes a failure rate.
- the process is aware of the degree that the current attempt at the extreme surfaces has failed to contain the data.
- the sixth and final step of the iteration a determination is made whether the iteration should continue or if the current upper and lower bounding curves 50 n ,51 n are sufficient.
- the iteration will end if the iteration flag (itrf) is set to no, otherwise the loop repeats the do loop of J1.
- the itrf flag will only be set to no, signaling convergence if one of two conditions are met: if the failure rate on both the positive and negative sides is less then the acceptable failure rate; or if the number of iterations is too high. In this case, an arbitrary number of 10 is used. It is important to point out, again, that the failure rate here is not that important due to the secondary correction. Still, a balance is found between the quality of the curve fit and the amount of effort expended without iterating forever.
- the extreme upper and lower bounding surfaces 50 n ,20+ and 51 n ,21+ are known and can be output themselves as image files (as illustrated in Figs. 8a, 8b), or as other computer files, for quality control purposes. Process for outputting such images for display or storage is not disclosed herein as it is known by those anyone skilled in the art and is dependent upon such variables as the particular image format and display hardware used. Now that the upper and lower bounding curves are established the first fairway and second histogram corrections can be performed to enhance the image of Fig. 1 and produce the image of Fig. 2.
- the data analyzed for the next iterative mean curve 60 is not simply the residual data populations 40,41 , as in Figure 11b, but instead comprises an exaggeration of the data.
- the difference between the extreme points of residual data 40,41 and the curve 50,51 of the current iteration is multiplied by the number of iteration passes. This makes for a quicker convergence as each pass gives more and more correction to the repeated failure points. There are checks to ensure that no extra correction is beyond 20% of the dynamic range and that no value is replaced with a value outside of the dynamic range.
- a moving average of the raw input data is once again calculated initially. Then, the difference of the raw data 14 and the moving average mean curve 15 is calculated. Finally, the standard deviation of the residual data of Fig. 5b, is calculated using the same size filter box of original data as the moving average. Using the same essential logic as the efficient 2D moving average filter of Fig. 13a, but modified to suit a moving standard deviation, a local measure of the standard deviation of every point could efficiently be determined. The extreme surfaces would then be calculated as the moving average +/- (a constant * moving standard deviation) for each point. This constant is set to a number that would typically yield something like a 1% failure rate. Empirically, a suitable constant appears to have a value near 2.0. Note that in the true Gaussian data, or perfect bell curve, that about 98% of the data falls within 3 standard deviations of the mean.
- the fairway correction is illustrated in pseudo-code form, wherein the raw data imag_wrk1 less the lower curve imag_wrk3 is scaled by the fairway's range (imag_wrk2-imag_wrk3) to the dynamic range (drlm), the corrected data being stored in imag_wrk4.
- the second histogram correction allows for control on exactly how much of the data is to be clipped or trimmed. Also, as the data from the first fairway correction is already residual in its nature, only a small amount of data to be trimmed will also be sparsely distributed throughout the image resulting in no noticeable distortion in the image at all.
- the fairway correction by the application of Equation 1 (at R) retains the outlier information by temporarily storing them in a higher precision variable than is needed for the dynamic range. This fairway correction also allows for negative numbers.
- Data below the lower extreme curve 21 is calculated as negative and values above the upper extreme curve 20 are calculated as numbers above the dynamic range of the input image file/data.
- the histogram correction is, then, performed on data that has very similar statistical qualities of what will be the output data, seen by comparing Figs. 9b and 6b.
- a histogram of the first fairway corrected data is made using a broader range of events than is likely to occur. Empirically, it has been found that the range of values calculated by the fairway correction are unlikely to exceed three times the dynamic range and these limits are arbitrarily used to set the histogram dimensions.
- the histogram count is then made by looping through the first fairway corrected data and counting the number of occurrences of each intensity value. Referring to Fig. 18a again, at S, the histogram is counted normally where in the fairway correction data lies within the expected range of -drlm to drl2 (three times the output dynamic range). While it is unlikely that any fairway correction data values would be outside this range, these possibilities are dealt with nonetheless. Merely extending the range beyond 3*drlm is no guarantee.
- the histogram count is incremented at the extremes of the histogram. It is expected that the histogram counts at the extreme will be zero in virtually all cases and very close to zero in even all but exceptional cases.
- the Select Case coding jumps out of the counting routine at the first logically correct Case statement. A running total of the histogram is made until the value reaches the acceptable trim (failure) rate, set at step U to 1% of the image data.
- the trimming points are found by using a running total. As shown at V, for the lower trim point, the loop starts at the low end of the histogram and works up until the running total is above the acceptable trim rate. The position of the trim point is then readjusted down by one value to bring the running total to just below the acceptable rate. This value is constrained to (-drlm) or greater, regardless of the remote likelihood of such a situation.
- Fig. 2 is the result of only about 0.2% or about 1800 of some
- RAM electronic
- the present invention utilizes the input image and two numeric parameters. These parameters have been previously referred to in the sample code and they are:
- parameter surfjndff is set to a value 8, that means that the two extreme surfaces 20+,21+will be constrained so that they will never be less than 8 units of intensity apart. If surfjndff is expressed in terms of percent of dynamic range, then 3% of 0-255 becomes 8.
- the moving average filter box dimensions will be set to 200 by 150 dots, all of which are averaged to determine the value for a single low frequency point. Note that this is 30,000 additions per point - thus the need for an efficient algorithm. More exactly, the filter box will be set to 151 by 201 points.
- the parameter surfjndff manages noise issues. In this sense, noise is considered to be the more or less random fluctuations of the numeric intensity value at each point. Indeed, surfjndff is a tolerance with respect to the intensity of any given dot expressed in terms of percent of the dynamic range.
- the parameter imag_pcnt represents the area of points to be considered at one instant (the filter box). Expressed in Cartesian coordinates, imagj cnt is a control for both the x and y axis (the domain) and surfjndff is a control of the z axis (the range).
- Default values can be provided for images which have a known and historical noise component, and thus is taken completely from the hands of the user. Otherwise, general guidelines can assist the non-technical user in specifying the parameter from higher level choices, such as whether the noise in the image is clean, noticeable, or serious to which values for surfjndff could be specified for the user at 3%, 6% (a typical default), or 12% of the dynamic range limit.
- the parameters numeric value is assigned internally in the program by a small lookup table of 3 elements and a multiplication or two. This is a particularly useful approach where the present invention is coded into a GUI and the process is done interactively. The user could estimate the noise level at a glance and then choose from a drop down menu with the above choices. The robustness of the parameter is such that this limited choice of three choices should be perfectly adequate. Note that the details of this scheme are not intending to be limiting but to point the way to a practical implementation.
- imagjpcnt its selection and magnitude is primarily an issue of the detail within the image.
- a similar scheme can be used for it.
- the following values were determined empirically; for a chest X-ray - 5%, for a hand - 10% (typical default), or for a leg bone at level of detail at 20% of the image size.
- the user can estimate the parameter by simply knowing what the subject was.
- the robustness of the parameter is such that this limited choice of three should be perfectly adequate.
- a finer level of choice can be implemented as an option for technically proficient or curious and a coarser level of options available for every user.
- the default evaluations of the user input parameters are also found to produce acceptable results without the user actually being consulted at all.
- FIGs. 19 - 21 images are presented which are the result of processing the same input image (Fig. 1 ) with different choices of a value for surfjndff.
- Fig. 19 used a surfjndff value of 1.5%
- Figs. 20a and 20b are identical at 3%
- Fig. 21 used 12%.
- Figs. 2, 20a and 20b are identical and have been duplicated for comparative purposes only.
- FIGs. 22 - 25 images are presented which are the result of processing the same input image (Fig. 1) with different parameter choices for imagjpcnt. Parameter surfjndff values remain constant but the imagjpcnt value varies.
- Fig. 2 is used as the reference and has a value of 5% of the image size.
- Fig. 2 has been duplicated as Fig. 22.
- Fig. 23 uses a filter box at 7% and Fig. 24 at 10%, and Fig. 25 at 20% of image size.
Abstract
Description
Claims
Priority Applications (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP01951267A EP1299858B1 (en) | 2000-07-07 | 2001-07-05 | Distortion-free image contrast enhancement |
KR1020037000239A KR100572444B1 (en) | 2000-07-07 | 2001-07-05 | Distortion-free image contrast improvement |
AU2001272251A AU2001272251B2 (en) | 2000-07-07 | 2001-07-05 | Distortion-free image contrast enhancement |
DE60144150T DE60144150D1 (en) | 2000-07-07 | 2001-07-05 | DECORATION-FREE PICTURE CONTRAST GAIN |
AU7225101A AU7225101A (en) | 2000-07-07 | 2001-07-05 | Distortion-free image contrast enhancement |
JP2002508738A JP4175461B2 (en) | 2000-07-07 | 2001-07-05 | Increase the contrast of undistorted images |
MXPA02012756A MXPA02012756A (en) | 2000-07-07 | 2001-07-05 | Distortion-free image contrast enhancement. |
NZ523251A NZ523251A (en) | 2000-07-07 | 2001-07-05 | Distortion-free image contrast enhancement |
AT01951267T ATE500569T1 (en) | 2000-07-07 | 2001-07-05 | DISTORTION-FREE IMAGE CONTRAST ENHANCEMENT |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/611,773 US6633684B1 (en) | 2000-07-07 | 2000-07-07 | Distortion-free image contrast enhancement |
US09/611,773 | 2000-07-07 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2002005206A2 true WO2002005206A2 (en) | 2002-01-17 |
WO2002005206A3 WO2002005206A3 (en) | 2002-12-19 |
Family
ID=24450368
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CA2001/000982 WO2002005206A2 (en) | 2000-07-07 | 2001-07-05 | Distortion-free image contrast enhancement |
Country Status (12)
Country | Link |
---|---|
US (1) | US6633684B1 (en) |
EP (1) | EP1299858B1 (en) |
JP (1) | JP4175461B2 (en) |
KR (1) | KR100572444B1 (en) |
CN (1) | CN1251147C (en) |
AT (1) | ATE500569T1 (en) |
AU (2) | AU2001272251B2 (en) |
CA (1) | CA2352678A1 (en) |
DE (1) | DE60144150D1 (en) |
MX (1) | MXPA02012756A (en) |
NZ (1) | NZ523251A (en) |
WO (1) | WO2002005206A2 (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1521209A2 (en) * | 2003-09-30 | 2005-04-06 | Konica Minolta Medical & Graphic, Inc. | Radiation image enhancement |
DE102007037795A1 (en) | 2007-08-10 | 2009-02-12 | Nabaltec Ag | Stabilizer systems for halogen-containing polymers |
DE102008018872A1 (en) | 2008-04-14 | 2009-10-15 | Ika Innovative Kunststoffaufbereitung Gmbh & Co. Kg | Stabilizer system for halogen-containing polymers |
DE102008020203A1 (en) | 2008-04-22 | 2009-10-29 | Catena Additives Gmbh & Co. Kg | Solvent-free high solids (one-pack) stabilizers for halogen-containing polymers |
DE102009045701A1 (en) | 2009-10-14 | 2011-04-21 | Ika Innovative Kunststoffaufbereitung Gmbh & Co. Kg | Stabilizer combinations for halogen-containing polymers |
WO2011110395A1 (en) | 2010-03-11 | 2011-09-15 | Ika Innovative Kunststoffaufbereitung Gmbh & Co. Kg | Stabilizer mixtures for halogen-containing plastics by underwater pelletization |
DE102010020486A1 (en) | 2010-05-14 | 2011-11-17 | Catena Additives Gmbh & Co. Kg | Flame retardant halogenated polymers with improved thermal stability |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040146221A1 (en) * | 2003-01-23 | 2004-07-29 | Siegel Scott H. | Radiography Image Management System |
JP4261290B2 (en) * | 2003-08-25 | 2009-04-30 | 富士フイルム株式会社 | Image processing apparatus and method, and program |
USD533875S1 (en) * | 2003-10-17 | 2006-12-19 | Nuvasive, Inc. | Graphic user interface for a medical monitor |
US20050219578A1 (en) * | 2004-01-13 | 2005-10-06 | Yasushi Hiraoka | Image processing apparatus, image processing method, and computer program product |
US8483567B2 (en) * | 2004-04-09 | 2013-07-09 | Immediate Response Technologies, Inc | Infrared communication system and method |
US20050244045A1 (en) * | 2004-04-30 | 2005-11-03 | Elekta Ab (Publ) | Method and system for automatically improving the usability of a medical picture |
US7415147B2 (en) * | 2004-06-04 | 2008-08-19 | Analogic Corporation | Method of and system for destreaking the photoelectric image in multi-energy computed tomography |
GB2417381A (en) * | 2004-08-20 | 2006-02-22 | Apical Limited | Dynamic range compression preserving local image contrast |
US8050512B2 (en) * | 2004-11-16 | 2011-11-01 | Sharp Laboratories Of America, Inc. | High dynamic range images from low dynamic range images |
KR101221865B1 (en) * | 2005-01-26 | 2013-01-14 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | Sparkle processing |
US8014034B2 (en) * | 2005-04-13 | 2011-09-06 | Acd Systems International Inc. | Image contrast enhancement |
JP4690204B2 (en) * | 2006-01-16 | 2011-06-01 | 富士フイルム株式会社 | Image reproduction apparatus and program thereof |
US7430494B2 (en) * | 2006-05-31 | 2008-09-30 | Sun Microsystems, Inc. | Dynamic data stream histograms for no loss of information |
TWI314424B (en) * | 2006-06-23 | 2009-09-01 | Marketech Int Corp | System and method for image signal contrast adjustment and overflow compensation |
US8115967B2 (en) * | 2006-11-28 | 2012-02-14 | Silverbrook Research Pty Ltd | Localized signal data preservation within signal bandwidth |
US8111895B2 (en) * | 2006-12-06 | 2012-02-07 | Siemens Medical Solutions Usa, Inc. | Locally adaptive image enhancement for digital subtraction X-ray imaging |
USD723577S1 (en) * | 2014-08-29 | 2015-03-03 | Nike, Inc. | Display screen with emoticon |
USD724606S1 (en) * | 2014-08-29 | 2015-03-17 | Nike, Inc. | Display screen with emoticon |
USD726199S1 (en) | 2014-08-29 | 2015-04-07 | Nike, Inc. | Display screen with emoticon |
USD725131S1 (en) * | 2014-08-29 | 2015-03-24 | Nike, Inc. | Display screen with emoticon |
USD723046S1 (en) * | 2014-08-29 | 2015-02-24 | Nike, Inc. | Display screen with emoticon |
USD725129S1 (en) * | 2014-08-29 | 2015-03-24 | Nike, Inc. | Display screen with emoticon |
USD725130S1 (en) * | 2014-08-29 | 2015-03-24 | Nike, Inc. | Display screen with emoticon |
USD724099S1 (en) * | 2014-08-29 | 2015-03-10 | Nike, Inc. | Display screen with emoticon |
USD724098S1 (en) | 2014-08-29 | 2015-03-10 | Nike, Inc. | Display screen with emoticon |
USD723579S1 (en) * | 2014-08-29 | 2015-03-03 | Nike, Inc. | Display screen with emoticon |
USD723578S1 (en) * | 2014-08-29 | 2015-03-03 | Nike, Inc. | Display screen with emoticon |
CN108169560A (en) * | 2017-12-21 | 2018-06-15 | 哈尔滨工程大学 | A kind of segmentation Sine-Fitting decomposition method |
CN109146814B (en) | 2018-08-20 | 2021-02-23 | Oppo广东移动通信有限公司 | Image processing method, image processing device, storage medium and electronic equipment |
US20210342496A1 (en) * | 2018-11-26 | 2021-11-04 | Hewlett-Packard Development Company, L.P. | Geometry-aware interactive design |
CN117635506B (en) * | 2024-01-24 | 2024-04-05 | 成都航天凯特机电科技有限公司 | Image enhancement method and device based on AI-energized Mean Shift algorithm |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5224177A (en) | 1991-10-31 | 1993-06-29 | The University Of Chicago | High quality film image correction and duplication method and system |
US5357549A (en) | 1990-10-24 | 1994-10-18 | U.S. Philips Corporation | Method of dynamic range compression of an X-ray image and apparatus effectuating the method |
Family Cites Families (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4975970A (en) | 1987-03-18 | 1990-12-04 | General Electric Company | Image display having automatic image adjustment |
US5051904A (en) | 1988-03-24 | 1991-09-24 | Olganix Corporation | Computerized dynamic tomography system |
US4991092A (en) | 1988-08-12 | 1991-02-05 | The Regents Of The University Of California | Image processor for enhancing contrast between subregions of a region of interest |
JP2808773B2 (en) | 1990-01-09 | 1998-10-08 | 株式会社日立製作所 | Automatic gradation conversion device |
DE69224110T2 (en) | 1991-07-15 | 1998-07-16 | Agfa Gevaert Nv | Processing methods for radiation image recording systems |
DE69214229T2 (en) | 1991-08-14 | 1997-04-30 | Agfa Gevaert Nv | Method and device for improving the contrast of images |
US5905820A (en) | 1991-12-18 | 1999-05-18 | Eastman Kodak Company | Enhancement of digital images for electronic displays |
IL119767A (en) | 1993-08-13 | 1998-02-08 | Sophis View Tech Ltd | System and method for diagnosis of living tissue diseases |
US5542003A (en) | 1993-09-13 | 1996-07-30 | Eastman Kodak | Method for maximizing fidelity and dynamic range for a region of interest within digitized medical image display |
US5592571A (en) | 1994-03-08 | 1997-01-07 | The University Of Connecticut | Digital pixel-accurate intensity processing method for image information enhancement |
US5715334A (en) | 1994-03-08 | 1998-02-03 | The University Of Connecticut | Digital pixel-accurate intensity processing method for image information enhancement |
US5796865A (en) | 1994-07-04 | 1998-08-18 | Fuji Photo Film Co., Ltd. | Gradation correcting method and apparatus |
US5715326A (en) * | 1994-09-08 | 1998-02-03 | Neopath, Inc. | Cytological system illumination integrity checking apparatus and method |
US5588071A (en) * | 1994-10-26 | 1996-12-24 | Minnesota Mining And Manufacturing Company | Identifying an area of interest using histogram data arranged in predetermined sequence |
US5734740A (en) | 1994-10-31 | 1998-03-31 | University Of Florida | Method for automated radiographic quality assurance |
US5774599A (en) | 1995-03-14 | 1998-06-30 | Eastman Kodak Company | Method for precompensation of digital images for enhanced presentation on digital displays with limited capabilities |
US5633511A (en) | 1995-12-22 | 1997-05-27 | Eastman Kodak Company | Automatic tone scale adjustment using image activity measures |
US5825909A (en) | 1996-02-29 | 1998-10-20 | Eastman Kodak Company | Automated method and system for image segmentation in digital radiographic images |
JP3130266B2 (en) | 1996-03-09 | 2001-01-31 | 三星電子株式会社 | Image improvement method and circuit using average separation histogram equalization |
KR980003998A (en) | 1996-06-27 | 1998-03-30 | 김광호 | Image quality improvement method using histogram transformation with limited distribution |
US5835618A (en) | 1996-09-27 | 1998-11-10 | Siemens Corporate Research, Inc. | Uniform and non-uniform dynamic range remapping for optimum image display |
US6343158B1 (en) * | 1996-12-18 | 2002-01-29 | Fujitsu Limited | Apparatus for converting gray levels of an image, a method thereof, a program storage device thereof, and an infrared camera |
JPH10191100A (en) * | 1996-12-26 | 1998-07-21 | Fujitsu Ltd | Video signal processing method |
US5963676A (en) | 1997-02-07 | 1999-10-05 | Siemens Corporate Research, Inc. | Multiscale adaptive system for enhancement of an image in X-ray angiography |
US6341172B1 (en) * | 1997-02-28 | 2002-01-22 | Siemens Medical Systems, Inc. | Acquisition scheme for an electron portal imaging system |
JP3649556B2 (en) * | 1997-08-20 | 2005-05-18 | 富士通株式会社 | Method and apparatus for chromatic dispersion control and dispersion amount detection method |
US6173083B1 (en) * | 1998-04-14 | 2001-01-09 | General Electric Company | Method and apparatus for analyzing image structures |
US6546124B1 (en) * | 1999-07-02 | 2003-04-08 | General Electric Company | Method and apparatus for performing an adaptive extended dynamic range algorithm |
US6449584B1 (en) * | 1999-11-08 | 2002-09-10 | Université de Montréal | Measurement signal processing method |
US6757418B2 (en) * | 2000-09-07 | 2004-06-29 | Siemens Corporate Research, Inc. | Method and system for automatic computed radiography (CR) image composition by white band detection and consistency rechecking |
-
2000
- 2000-07-07 US US09/611,773 patent/US6633684B1/en not_active Expired - Lifetime
-
2001
- 2001-07-05 CA CA002352678A patent/CA2352678A1/en not_active Abandoned
- 2001-07-05 AU AU2001272251A patent/AU2001272251B2/en not_active Ceased
- 2001-07-05 EP EP01951267A patent/EP1299858B1/en not_active Expired - Lifetime
- 2001-07-05 DE DE60144150T patent/DE60144150D1/en not_active Expired - Lifetime
- 2001-07-05 KR KR1020037000239A patent/KR100572444B1/en active IP Right Grant
- 2001-07-05 MX MXPA02012756A patent/MXPA02012756A/en active IP Right Grant
- 2001-07-05 AU AU7225101A patent/AU7225101A/en active Pending
- 2001-07-05 WO PCT/CA2001/000982 patent/WO2002005206A2/en active IP Right Grant
- 2001-07-05 JP JP2002508738A patent/JP4175461B2/en not_active Expired - Fee Related
- 2001-07-05 NZ NZ523251A patent/NZ523251A/en not_active IP Right Cessation
- 2001-07-05 CN CNB018124224A patent/CN1251147C/en not_active Expired - Lifetime
- 2001-07-05 AT AT01951267T patent/ATE500569T1/en not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5357549A (en) | 1990-10-24 | 1994-10-18 | U.S. Philips Corporation | Method of dynamic range compression of an X-ray image and apparatus effectuating the method |
US5224177A (en) | 1991-10-31 | 1993-06-29 | The University Of Chicago | High quality film image correction and duplication method and system |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1521209A3 (en) * | 2003-09-30 | 2011-02-23 | Konica Minolta Medical & Graphic, Inc. | Radiation image enhancement |
EP1521209A2 (en) * | 2003-09-30 | 2005-04-06 | Konica Minolta Medical & Graphic, Inc. | Radiation image enhancement |
DE102007037795A1 (en) | 2007-08-10 | 2009-02-12 | Nabaltec Ag | Stabilizer systems for halogen-containing polymers |
EP2792707A2 (en) | 2008-04-14 | 2014-10-22 | IKA Innovative Kunststoffaufbereitung Gmbh & Co.Kg | Stabiliser systems for polymers containing halogens |
DE102008018872A1 (en) | 2008-04-14 | 2009-10-15 | Ika Innovative Kunststoffaufbereitung Gmbh & Co. Kg | Stabilizer system for halogen-containing polymers |
EP2110405A1 (en) | 2008-04-14 | 2009-10-21 | IKA Innovative Kunststoffaufbereitung Gmbh & Co.Kg | Stabiliser systems for polymers containing halogen |
DE102008020203A1 (en) | 2008-04-22 | 2009-10-29 | Catena Additives Gmbh & Co. Kg | Solvent-free high solids (one-pack) stabilizers for halogen-containing polymers |
DE102009045701A1 (en) | 2009-10-14 | 2011-04-21 | Ika Innovative Kunststoffaufbereitung Gmbh & Co. Kg | Stabilizer combinations for halogen-containing polymers |
WO2011045168A1 (en) | 2009-10-14 | 2011-04-21 | Ika Innovative Kunststoffaufbereitung Gmbh & Co. Kg | Stabiliser combinations for halogenated polymers |
WO2011110395A1 (en) | 2010-03-11 | 2011-09-15 | Ika Innovative Kunststoffaufbereitung Gmbh & Co. Kg | Stabilizer mixtures for halogen-containing plastics by underwater pelletization |
DE102010011191A1 (en) | 2010-03-11 | 2011-09-15 | Ika Innovative Kunststoffaufbereitung Gmbh & Co. Kg | Stabilizer mixtures for halogenated plastics by underwater granulation |
DE102010020486A1 (en) | 2010-05-14 | 2011-11-17 | Catena Additives Gmbh & Co. Kg | Flame retardant halogenated polymers with improved thermal stability |
EP2392612A1 (en) | 2010-05-14 | 2011-12-07 | CATENA Additives GmbH & Co. KG | Flame-proof polymers containing halogen with improved thermostability |
Also Published As
Publication number | Publication date |
---|---|
US6633684B1 (en) | 2003-10-14 |
EP1299858B1 (en) | 2011-03-02 |
ATE500569T1 (en) | 2011-03-15 |
MXPA02012756A (en) | 2004-04-05 |
CN1251147C (en) | 2006-04-12 |
JP4175461B2 (en) | 2008-11-05 |
AU2001272251B2 (en) | 2006-07-27 |
AU7225101A (en) | 2002-01-21 |
NZ523251A (en) | 2004-06-25 |
EP1299858A2 (en) | 2003-04-09 |
KR20030012934A (en) | 2003-02-12 |
KR100572444B1 (en) | 2006-04-18 |
JP2004503029A (en) | 2004-01-29 |
WO2002005206A3 (en) | 2002-12-19 |
DE60144150D1 (en) | 2011-04-14 |
CA2352678A1 (en) | 2002-01-07 |
CN1440542A (en) | 2003-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6633684B1 (en) | Distortion-free image contrast enhancement | |
AU2001272251A1 (en) | Distortion-free image contrast enhancement | |
US6611627B1 (en) | Digital image processing method for edge shaping | |
US7092573B2 (en) | Method and system for selectively applying enhancement to an image | |
US7570829B2 (en) | Selection of alternative image processing operations to maintain high image quality | |
US8355595B2 (en) | Contrast enhancement methods and apparatuses | |
Russo | A method for estimation and filtering of Gaussian noise in images | |
White et al. | Image thresholding for optical character recognition and other applications requiring character image extraction | |
US7181086B2 (en) | Multiresolution method of spatially filtering a digital image | |
CA2108797C (en) | Method and apparatus for adaptively thresholding grayscale image data | |
JP4460839B2 (en) | Digital image sharpening device | |
US8457429B2 (en) | Method and system for enhancing image signals and other signals to increase perception of depth | |
JP4456819B2 (en) | Digital image sharpening device | |
US6721458B1 (en) | Artifact reduction using adaptive nonlinear filters | |
JP2000050081A (en) | Automatic tone control method by contrast gain control of edge | |
US5953461A (en) | Image emphasis processing method and apparatus | |
US20110205227A1 (en) | Method Of Using A Storage Switch | |
US7269300B2 (en) | Sharpening a digital image in accordance with magnification values | |
EP0383269A2 (en) | Regionally adaptive imaging techniques | |
JP2019016117A (en) | Image adjusting device, local contrast quantity calculating device, method, and program | |
CN112911166B (en) | Method, device, chip, medium and camera equipment for adjusting image brightness | |
EP2309447A1 (en) | Image contrast enhancement | |
Zamperoni | Image enhancement | |
Santhi et al. | Contrast enhancement by modified octagon histogram equalization | |
van Ginneken et al. | Applications of locally orderless images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2001272251 Country of ref document: AU |
|
WWE | Wipo information: entry into national phase |
Ref document number: PA/a/2002/012756 Country of ref document: MX Ref document number: 523251 Country of ref document: NZ |
|
AK | Designated states |
Kind code of ref document: A3 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020037000239 Country of ref document: KR Ref document number: 018124224 Country of ref document: CN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2001951267 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 1020037000239 Country of ref document: KR |
|
WWP | Wipo information: published in national office |
Ref document number: 2001951267 Country of ref document: EP |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWP | Wipo information: published in national office |
Ref document number: 523251 Country of ref document: NZ |
|
WWG | Wipo information: grant in national office |
Ref document number: 523251 Country of ref document: NZ |
|
WWG | Wipo information: grant in national office |
Ref document number: 1020037000239 Country of ref document: KR |