Aspects vary object illumination values within a digital photograph in response to relocating light-emitting objects. Embodiments generate a three-dimensional model of a digital photograph defined by pixel data that plots a representation of a light source at a first location in a three-dimensional physical space relative to plotted locations of remaining other digital photograph pixels; relocate the representation of the light source within the three-dimensional model to a different, second location within the model three-dimensional physical space; revise a brightness value of a first pixel in proportion to an amount of a change in distance from the first pixel to the second location, relative to a distance to the first, plotted light source location; and generate a revised version of the photograph from the pixel data inclusive of the revised brightness value of the first pixel.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A computer-implemented method, comprising: generating a three-dimensional model of a digital photograph that is defined by a plurality of pixels that plots a representation of a light source at a first location in a three-dimensional physical space relative to plotted locations of remaining others of the digital photograph pixels via identifying a second pixel of the digital photograph pixels that has a brightness intensity value that is greater than a total of illumination contribution values attributable to light sources identified within the digital photograph by a surplus value, and estimating the first location for the light source as physically external to outer boundaries of a geographic area represented by the digital photograph pixels as a function of comparing the surplus value to a distance of a location of the second pixel plotted within the three-dimensional model to the estimated location of the light source; relocating the representation of the light source within the three-dimensional model from the first location to a different, second location within the three-dimensional physical space of the model; revising a brightness value of a first pixel of the digital photograph pixels in proportion to an amount of a change in distance from the first pixel to the second location of the light source, relative to a distance of the first pixel to the first, plotted location of the light source; and generating a revised version of the photograph from the plurality of pixels inclusive of the revised brightness value of the first pixel; and wherein the revising the brightness value of the first pixel comprises: decreasing the brightness value in proportion to an increase in distance from the first pixel to the second location of the light source, relative to the distance to the first, plotted location; and increasing the brightness value in proportion to a decrease in distance from the first pixel to the second location of the light source, relative to the distance to the first, plotted location.
2. The method of claim 1 , further comprising: determining the brightness intensity values for each of the digital photograph pixels as a value “I” defined by the expression “(I=sqrt((0.241*R*R)+(0.691*G*G)+(0.068*B*B)”, wherein “R” is a value of red wavelength light intensity, “G” is a value of green wavelength light intensity and “B” is a value of blue wavelength light intensity.
3. The method of claim 1 , further comprising: identifying a group of the digital photograph pixels that have brightness values that meet a light source threshold and are adjacent to each other as a cluster of pixels that defines the light source.
4. The method of claim 3 , further comprising: defining a total brightness intensity value for the light source as a function of brightness intensity values of individual ones of the cluster of pixels; and revising the brightness value of the first pixel by a fraction of the total brightness intensity value determined in proportion to the amount of change in distance from the first pixel to the second location of the light source.
5. The method of claim 1 , wherein the second pixel is one of a plurality of outside illumination pixels of the digital photograph pixels that each have respective brightness intensity values that are greater than total of illumination contribution values attributable to light sources identified within the digital photograph by different respective surplus values, the method further comprising: determining a distribution pattern of variation in illumination contributions to each of the outside illumination pixels as a function of comparison of the respective surplus values; and estimating the location for the light source by extrapolating the determined distribution pattern to a point of origin that is located external to the outer boundaries of the digital photograph geographic area.
6. The method of claim 1 , further comprising: integrating computer-readable program code into a computer system comprising a processor, a computer readable memory in circuit communication with the processor, and a computer readable storage medium in circuit communication with the processor; and wherein the processor executes program code instructions stored on the computer-readable storage medium via the computer readable memory and thereby performs the generating the three-dimensional model of the digital photograph, the relocating the representation of the light source within the three-dimensional model from the first location to the second location, the revising the brightness value of the first pixel, and the generating the revised version of the photograph.
7. The method of claim 6 , wherein the computer-readable program code is provided as a service in a cloud environment.
8. A computer system, comprising: a processor; a computer readable memory in circuit communication with the processor; and a computer readable storage medium in circuit communication with the processor; wherein the processor executes program instructions stored on the computer-readable storage medium via the computer readable memory and thereby: generates a three-dimensional model of a digital photograph that is defined by a plurality of pixels that plots a representation of a light source at a first location in a three-dimensional physical space relative to plotted locations of remaining others of the digital photograph pixels via identifying a second pixel of the digital photograph pixels that has a brightness intensity value that is greater than a total of illumination contribution values attributable to light sources identified within the digital photograph by a surplus value, and estimating the first location for the light source as physically external to outer boundaries of a geographic area represented by the digital photograph pixels as a function of comparing the surplus value to a distance of a location of the second pixel plotted within the three-dimensional model to the estimated location of the light source; relocates the representation of the light source within the three-dimensional model from the first location to a different, second location within the three-dimensional physical space of the model; revises a brightness value of a first pixel of the digital photograph pixels in proportion to an amount of a change in distance from the first pixel to the second location of the light source, relative to a distance of the first pixel to the first, plotted location of the light source; and generate a revised version of the photograph from the plurality of pixels inclusive of the revised brightness value of the first pixel; and wherein the computer readable memory revises the brightness value of the first pixel by: decreasing the brightness value in proportion to an increase in distance from the first pixel to the second location of the light source, relative to the distance to the first, plotted location; and increasing the brightness value in proportion to a decrease in distance from the first pixel to the second location of the light source, relative to the distance to the first, plotted location.
9. The system of claim 8 , wherein the processor executes the program instructions stored on the computer-readable storage medium via the computer readable memory and thereby: identifies a group of the digital photograph pixels that have brightness values that meet a light source threshold and are adjacent to each other as a cluster of pixels that defines the light source.
10. The system of claim 9 , wherein the processor executes the program instructions stored on the computer-readable storage medium via the computer readable memory and thereby: defines a total brightness intensity value for the light source as a function of brightness intensity values of individual ones of the cluster of pixels; and revises the brightness value of the first pixel by a fraction of the total brightness intensity value determined in proportion to the amount of change in distance from the first pixel to the second location of the light source.
11. The system of claim 8 , wherein the second pixel is one of a plurality of outside illumination pixels of the digital photograph pixels that each have respective brightness intensity values that are greater than total of illumination contribution values attributable to light sources identified within the digital photograph by different respective surplus values; and wherein the processor executes the program instructions stored on the computer-readable storage medium via the computer readable memory and thereby: determines a distribution pattern of variation in illumination contributions to each of the outside illumination pixels as a function of comparison of the respective surplus values; and estimates the location for the light source by extrapolating the determined distribution pattern to a point of origin that is located external to the outer boundaries of the digital photograph geographic area.
12. A computer program product, comprising: a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising instructions for execution by a processor that cause the processor to: generate a three-dimensional model of a digital photograph that is defined by a plurality of pixels that plots a representation of a light source at a first location in a three-dimensional physical space relative to plotted locations of remaining others of the digital photograph pixels via identifying a second pixel of the digital photograph pixels that has a brightness intensity value that is greater than a total of illumination contribution values attributable to light sources identified within the digital photograph by a surplus value, and estimating the first location for the light source as physically external to outer boundaries of a geographic area represented by the digital photograph pixels as a function of comparing the surplus value to a distance of a location of the second pixel plotted within the three-dimensional model to the estimated location of the light source; relocate the representation of the light source within the three-dimensional model from the first location to a different, second location within the three-dimensional physical space of the model; revise a brightness value of a first pixel of the digital photograph pixels in proportion to an amount of a change in distance from the first pixel to the second location of the light source, relative to a distance of the first pixel to the first, plotted location of the light source; and generate a revised version of the photograph from the plurality of pixels inclusive of the revised brightness value of the first pixel; and wherein the computer readable program code instructions for execution by the processor further cause the processor to revise the brightness value of the first pixel by: decreasing the brightness value in proportion to an increase in distance from the first pixel to the second location of the light source, relative to the distance to the first, plotted location; and increasing the brightness value in proportion to a decrease in distance from the first pixel to the second location of the light source, relative to the distance to the first, plotted location.
13. The computer program product of claim 12 , wherein the computer readable program code instructions for execution by the processor further cause the processor to: identify a group of the digital photograph pixels that have brightness values that meet a light source threshold and are adjacent to each other as a cluster of pixels that defines the light source; define a total brightness intensity value for the light source as a function of brightness intensity values of individual ones of the cluster of pixels; and revise the brightness value of the first pixel by a fraction of the total brightness intensity value determined in proportion to the amount of change in distance from the first pixel to the second location of the light source.
14. The computer program product of claim 12 , wherein the second pixel is one of a plurality of outside illumination pixels of the digital photograph pixels that each have respective brightness intensity values that are greater than total of illumination contribution values attributable to light sources identified within the digital photograph by different respective surplus values; and wherein the computer readable program code instructions for execution by the processor further cause the processor to: determine a distribution pattern of variation in illumination contributions to each of the outside illumination pixels as a function of comparison of the respective surplus values; and estimate the location for the light source by extrapolating the determined distribution pattern to a point of origin that is located external to the outer boundaries of the digital photograph geographic area.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
December 3, 2018
March 23, 2021
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.