发明名称 Method for retaining edges in an enlarged digital image
摘要 The invention described here provides a novel method of preventing the loss of focus and range of colors when digital image files are expanded to a larger size. Unlike interpolation algorithms and algorithms using Fourier analysis to create new pixels, the present system uses a combination of pseudo-randomizing functions and user controlled edge detection to enhance edges initially softened by expansion using interpolation algorithms. The resulting images can be optimized to provide a superior approximation to what would be an accurate photographic representation at the larger image size. Furthermore, the flexibility in edge detection sensitivity allows the operator to strongly mitigate the structural artifacts produced by lossy compression algorithms such as the jpeg system and sampling errors widespread in very small images. As a result files as small as 200 kilobytes can be effectively expanded to 250 or even 500 megabytes in many cases.
申请公布号 US9235878(B1) 申请公布日期 2016.01.12
申请号 US201414505693 申请日期 2014.10.03
申请人 发明人 Hirsh Allen Gene
分类号 G06T5/00 主分类号 G06T5/00
代理机构 代理人
主权项 1. A method for identifying and sharpening edges in a digital image comprising: loading into a memory linked to a computer processor unit (CPU) a first block of numbers defining pixels of a digital image in which each pixel is defined by k independent color value channels, wherein k≧3, and a horizontal position of the pixel is calculated to be between a lowest value and a maximum value in each line of pixels in the image and a vertical position of the pixel is defined by a line number with a value which is greater than or equal to that of a lowest line of pixels in the image, and less than or equal to a maximum line number of the lines in the image; loading into the memory linked to the CPU a second block of numbers that is an identical copy of the first block of numbers defining the pixels of the digital image; for each channel of each pixel storing a difference between a color value of that channel and a color value of the same channel in each of the nearest n2−1 pixels, wherein n is a fixed integer and n≧—3, then raising an absolute value of each of the differences to an exponentiation power m, wherein m≧0, then summing the exponentiated values to get a sum of channel specific differences between the pixel and the nearest n2−1 pixels; comparing each sum of channel specific differences to a first predetermined chosen value for identifying an edge, wherein the first predetermined chosen value is greater than or equal to 0, and is less than or equal to a maximum possible value of the sum of such channel specific differences, and a second predetermined chosen value for identifying the edge, wherein the second predetermined chosen value is greater than or equal to 0, and is less than the first predetermined chosen value; if the sum of the channel specific differences is greater than or equal to the second predetermined chosen value and is less than or equal to the first predetermined chosen value, then that pixel is deemed to be on an identified edge pixel; calculating a sum of the color values of each channel of each of the nearest n2−1 pixels of each edge pixel plus the color value of each channel of the edge pixel times a weighting factor wchannel specific to that channel, wherein wchannel is >0, and dividing by n2−1+wchannel to obtain a mean channel value for the nearest n2−1 pixels of each edge pixel plus the edge pixel; for each channel of each of the nearest n2−1 pixels of each edge pixel, use the color value of that channel or a difference between that color value and the color value of that channel of the edge pixel as an independent variable in a mathematical function to yield a second value; all of the second values for each channel of each of the nearest n2−1 pixels of the edge pixel are summed to produce a third value; the third value for each channel is added to the original color value of that channel in the edge pixel to produce a modified color value of the color value of that channel; comparing the mean channel value of each channel to the original color value of that channel in the edge pixel; if the mean channel value is less than or equal to the original color value of that channel in the edge pixel, multiplying the modified color value of the color value of that channel in the edge pixel by a predetermined bright edge value to create a second modified color value of that channel in the edge pixel; if the mean channel value is greater than the original color value of that channel in the edge pixel, multiplying the modified color value of the color value of that channel in the edge pixel by a predetermined dark edge value to create a second modified color value of that channel in the edge pixel; calculating a maximum color value of the original channel color values in the edge pixel; for each original color value of a channel in the edge pixel that is less than the maximum color value of the original channel color values in the edge pixel, calculate a third modified color value by the formula A*(B/C), wherein A is equal to the second modified color value of the maximum color value of the original channel color values in the edge pixel, B is equal to the color value of the original channel color values in the edge pixel, and C is equal to the maximum color value of the original channel color values in the edge pixel; pointing to the second block of numbers in the memory that is a same number of bytes from the beginning of the second block of numbers as the first channel color value of the edge pixel is from the beginning of the first block of numbers; replacing the color value in the second block of numbers with the second modified value if the color value is equal to the maximum color value of the original channel color values in the edge pixel or replacing it with the third modified color value if the color value is less than the maximum color value of the original channel color values in the edge pixel; and saving the second block of numbers to permanent memory as a second digital image when the replacements are complete for each channel of each pixel.
地址