Patent ID: 12223862

DESCRIPTION

A chip in a portion of a vehicle windshield providing a transparent display (TD) may be treated with a resin. The treated portion may cause spatial variations in the surface albedo of the windshield in which the TD is disposed, thereby causing brightness artifacts in images displayed on the TD. Projector photometric compensation aims to modify projector input images to compensate them for disturbances introduced by spatially varying albedo of a display surface. The disclosure provides apparatus and methods for photometric compensation of a TD for variations in surface albedo.

FIG.1is a block diagram of an example vehicle102including a vehicle system100suitable for implementing the apparatus and methods disclosed herein. Vehicle system100can include sensors108including one or more imaging sensors and one or more ranging sensors. Vehicle102includes a vehicle computer104, which may include one or more electronic control units (ECU) disposed within vehicle102to control operation of various devices and components110of vehicle102. Computer104can be generally programmed to send and/or receive, messages via vehicle network114to communicate with other devices disposed within the vehicle e.g., sensors108, actuators, components110, communications modules, a human machine interface (HMI)112, etc.

Vehicle system100can include one or more vehicle networks114over which the various electronic control units (ECU), including computer104can intercommunicate to send commands and/or exchange, send or receive data. A vehicle network114could include but is not limited to one or more of a controller area network (CAN), local interconnect network (LIN), Ethernet, Wi-Fi®, and/other wired or wireless communication networks. In some implementations vehicle computer104and/or other components of vehicle system100may be configured to communicate with a remote server118via a wide area network (WAN)116.

A computing device104includes a processor and a memory such as are known. Further, the memory includes one or more forms of computer-readable media, and stores instructions executable by the processor for performing various operations, including as disclosed herein. For example, the computing device104may include programming to operate one or more of vehicle brakes, propulsion (i.e., control of acceleration in the vehicle102by controlling one or more of an internal combustion engine, electric motor, hybrid engine, etc.), steering, climate control, interior and/or exterior lights, etc., as well as to determine whether and when the computing device104, as opposed to a human operator, is to control such operations.

The computing device104may include or be communicatively coupled to, i.e., via a vehicle communications bus as described further below, more than one computing devices, i.e., controllers or the like included in the vehicle102for monitoring and/or controlling various vehicle components, i.e., propulsion, braking, steering, etc. The computing device104is generally arranged for communications on a vehicle communication network114, i.e., including a bus in the vehicle102such as a controller area network (CAN) or the like; the vehicle102network114can additionally or alternatively include wired or wireless communication mechanisms such as are known, i.e., Ethernet or other communication protocols.

Via the vehicle network114, the computing device104may transmit messages to various devices in the vehicle and/or receive messages from the various devices, i.e., controllers, actuators, sensors, etc., including sensors108. Alternatively, or additionally, in cases where the computing device104actually comprises multiple devices, the vehicle communication network114may be used for communications between devices represented as the computing device104in this disclosure. Further, as mentioned below, various controllers or sensing elements such as sensors108may provide data to the computing device104via the vehicle communication network114.

In addition, the computing device104may be configured for communicating through a vehicle-to-infrastructure (V2X) interface with a remote server computer118, i.e., a cloud server, via a network116, which, as described below, includes hardware, firmware, and software that permits computing device104to communicate with a remote server computer118via a network116such as wireless Internet (WI-FI®) or cellular networks. A V2X interface may accordingly include processors, memory, transceivers, etc., configured to utilize various wired and/or wireless networking technologies, i.e., cellular, Bluetooth®, Bluetooth® Low Energy (BLE), Ultra-Wideband (UWB), Peer-to-Peer communication, UWB based Radar, IEEE 802.11, and/or other wired and/or wireless packet networks or technologies. Computing device104may be configured for communicating with other vehicles102through V2X (vehicle-to-everything) interface using vehicle-to-vehicle (V-to-V) networks, i.e., according to including cellular communications (C-V2X) wireless communications cellular, Dedicated Short Range Communications (DSRC) and/or the like, i.e., formed on an ad hoc basis among nearby vehicles102or formed through infrastructure-based networks. The computing device104also includes nonvolatile memory such as is known. Computing device104can log data by storing the data in nonvolatile memory for later retrieval and transmittal via the vehicle communication network114and a vehicle to infrastructure (V2X) interface to a server computer118or a user mobile device.

As already mentioned, generally included in instructions stored in the memory and executable by the processor of the computing device104is programming for operating one or more vehicle102components, i.e., braking, steering, propulsion, etc., without intervention of a human operator. Using data received in the computing device104, i.e., the sensor data from the sensors108, the server computer118, etc., the computing device104may make various determinations and/or control various vehicle102components and/or operations. For example, the computing device104may include programming to regulate vehicle102operational behaviors (i.e., physical manifestations of vehicle102operation) such as speed, acceleration, deceleration, steering, etc., as well as tactical behaviors (i.e., control of operational behaviors typically in a manner intended to achieve efficient traversal of a route) such as a distance between vehicles and/or amount of time between vehicles, lane-change, minimum gap between vehicles, left-turn-across-path minimum, time-to-arrival at a particular location and intersection (without signal) minimum time-to-arrival to cross the intersection.

Sensors108may include a variety of imaging devices such as cameras and/or other devices known to provide data via the vehicle communications bus. For example, a radar fixed to a front bumper (not shown) of the vehicle102may provide a distance from the vehicle102to a next vehicle in front of the vehicle102, or a global positioning system (GPS) sensor disposed in the vehicle102may provide geographical coordinates of the vehicle102.

FIG.2is a block diagram of an apparatus300for photometric projection compensation of a transparent display (TD)230for variations in surface albedo due to a chip, pit232, and/or epoxy filler in a vehicle windshield250. In the example ofFIG.2a HUD system200includes one or more transparent displays such as TD230. TD230comprises a holographic film on which a hologram of a hologram of an optical element is recorded as an interference pattern. The film bearing the hologram implements a holographic optical element (HOE) (not visible inFIG.2). The film is disposed in a portion of windshield250(or other glazing of a vehicle) between an outer and inner surface of the glazing. In the example implementations disclosed herein, TD230is a reflection hologram. A reflection hologram is manufactured by recording light waves arriving at opposite sides of the recording medium to create the interference pattern. In the example, the HOE recording is ‘played back’ by projecting optical image light onto the film. The interference pattern responds to the projected image light in accordance with the optical transfer function of the optical element whose hologram produced it. A reflection HOE implementing a diffraction optical element (DOE) diffracts selected incident light back through the medium through which it arrived to form an image in a viewing area or ‘eyebox’.

In essence TD230is a diffraction grating disposed in glass serving as a projection surface or ‘screen’. Thus, TD230has wavelength and angular selectivity and has a diffraction efficiency that varies as a function of angle of incidence. For TDs without surface defects about 60% of the light projected onto the TD passes through the ‘screen’, i.e. through the HOE and the windshield glass. This allows a vehicle occupant to ‘see through’ the HOE to perceive the driving environment outside the vehicle.

A chip or pit in the windshield glass changes the surface albedo in the area of the chip. The chip or pit may be repaired by treating the glazing, e.g., with an epoxy resin. However, the epoxy resin treatment also causes variations in the surface albedo. The effects may not be noticeable under typical ambient lighting conditions. However, when light beams project onto the TD from a DLP projector, it can manifest noticeable aberrations in brightness and color in areas of optical images displayed on the TD in the treated areas.

Photometric projection compensation is a technique for neutralizing the effects of variations in projection screen surface albedo on displayed images by compensating projected image pixel intensities in areas of the screen manifesting the aberrations. The compensation values for the projected images are typically calculated using a projector-camera system with the camera serving as a proxy for a human observer. The camera senses and measures the reflectance properties for each pixel of an image displayed on the screen surface. A series of transforms determine pixel intensities which, when converted to an optical image by a projector and projected onto the screen surface, would modulate to intensities that would be expected if the display surface had uniform albedo.

Camera based techniques are not always a practical solution for photometric projection compensation of vehicle HUD projectors. Vehicle cabin size and space constraints, off-axis projection arrangements and viewing area (eyebox area) constraints can make reliable camera measurements challenging.

Accordingly, the disclosure provides a photometric compensation apparatus300that can be used without a camera to compensate a projected optical image for effects of variations in surface albedo of a windshield surface. In the examples described herein a projection surface comprises a TD230of a HUD system200, including an HOE. The TD is disposed within the windshield.

It will be appreciated; the disclosure is not limited to TDs disposed in vehicle windshields or within glass surfaces. The disclosure encompasses other vehicle glazing such as windows, including vista glass roofs and rear windows in which a TD may be disposed. Those of ordinary skill upon reading this disclosure will appreciate a wide range of practical applications for the disclosed apparatus and methods. Any glazing having spatially varying surface albedo that would introduce observable brightness aberrations in displayed images may benefit from photometric projection compensation disclosed herein.

Apparatus300enables a user2, who is a human observer, to interact with a HUD projector, e.g., projector235, via a touchscreen355to empirically establish pixel intensity compensation values using the human eye as a light sensor instead of a camera. User2manipulates touchscreen355by touching an area, e.g.,334to adjust intensity of light projected by projector235onto TD230in a corresponding area of a pit or chip232of windshield250, which user2observes to exhibit brightness aberrations.

In the example ofFIG.2apparatus300includes a video image output port344. A processor310of apparatus300is configured to establish a communication link via video output port344with projector235via a corresponding projector communication port244. Processor310may be implemented as a single processor structure or as a plurality of processor structures. Apparatus300sends frames372of digital images to projector235via video output port344. The digital image frames are generated by user2interacting with touchscreen355. Projector235receives frames372, converts the digital images to optical images, and projects the optical images onto TD230. TD230displays the optical images. User2can directly observe TD230to perceive the effects of spatially varying surface albedo on the displayed optical images.

FIG.3is a block diagram of apparatus300including an exploded view of display panel350. Display panel350comprises an emitter array358, a common electrode layer356, a touchscreen layer355and a transparent cover layer352. In the example ofFIG.3, emitter array358is an array of light emitting elements359(also referred to as display pixels359). Each display pixel359comprises a red subpixel (red light emitter60), a green subpixel (green light emitter61) and a blue sub-pixel (blue light emitter62). In the example ofFIG.3red, green, and blue light emitters60,61,62are light emitting diodes (LEDs). Thus, each display pixel of emitter array358comprises at least one red LED60, at least one green LED61and at least one blue LED62. The disclosure is not limited by the particular display technology shown in the example ofFIG.3. Those of ordinary skill will appreciate a wide range of display technologies will be suitable for implementing display panel350, emitter array358and pixels359.

Apparatus300can further include a frame buffer349and a frame grabber348. Frame buffer349consists of a portion of random-access memory (RAM) comprising memory320configured to buffer, or temporarily stores a digital image, e.g., reference image270to be displayed on display panel350. Frame buffer349is configured to drive pixels359of emitter array358with pixel intensity values specified by the digital image stored in frame buffer349. As the LEDs comprising the pixels illuminate, an optical image is formed on display panel350.

In the example ofFIG.3reference image270is a red channel image. Accordingly, reference image270comprises an array of intensity values for driving red subpixels of emitter array358. In the methods disclosed herein, reference images and reference compensated images can include red channel images, green channel images, blue channel images, and/or RGB images comprising all three color channel images. In the example reference images described herein, the reference intensity values of subpixels in a subpixel array are the same, e.g., 128.

When the intensity values of the reference image are adjusted (e.g., from the reference value of 128) by user interaction with touchscreen355, the result is a compensated reference image, i.e., the intensity adjustments to the reference image compensate the reference image for brightness aberrations that would otherwise be caused by the chip or repair if the reference image were projected without compensation. The compensated reference image may be produced by one or more ‘rounds’ of user adjustments that produce a modified reference compensated image. For example, the reference image may be displayed on display panel350of apparatus300and compensated in a first round of user manipulation of pixel intensity values via touchscreen355. This first round may produce an intermediate compensated reference image, i.e., a modified compensated reference image. For example, the user can make further adjustments in another round in which the intermediate compensated reference replaces the reference image on display panel350, while at the same time being sent to projector235for projection onto TD230of HUD system200(as described below). The displayed intermediate compensated image may be observed by the user as the user manipulates touchscreen355to make further adjustments.

After the user makes the last user adjustment, processor310is configured to map pixel values of the compensated reference image to pixel values of the reference image. The mapping can be encoded in a look up table (LUT) and stored in the projector. Thereafter, when a HUD digital image is received by the projector, it may use the LUT to adjust pixels of the HUD digital image in accordance with the same mapping applied to the reference image to produce a compensated HUD image. The compensated HUD image can then be projected by a projector of a head up display (HUD) system onto the transparent display through the chipped or repaired vehicle windshield surface. The intensity-adjusted light comprising the compensated HUD optical image counters the brightness aberration effects that would otherwise be introduced in the HUD optical image displayed on the TD without compensation in the area of chip or repair334.

As the user manipulates touchscreen355, frame grabber348captures (i.e., “grabs”) frames (images) from frame buffer349and sends the frames to projector235via a video output port344. Frame grabber348allows images displayed on display panel350to be simultaneously projected onto any one or more of TDs220,230240of HUD system200(best illustrated inFIG.4).

Processor310can be configured by a graphical image manipulation program327to generate, modify and otherwise manipulate the reference images and reference compensated images described herein. Processor310may be configured by a multimedia platform323to implement frame grabber348and to perform decoding, encoding, transcoding, multiplexing, demultiplexing, streaming and filtering of any type of images including graphical images described herein, in any format.

In the examples described herein images are described in terms of an ‘RGB’ (red, green blue) color model. An RGB image comprises three image channels: red, green, and blue. A red image channel comprises a frame of intensity values for red subpixels of an RGB image, where red ‘subpixels’ of an RGB image correspond to an array of red light emitters (example illustrated at60) of the display device, and/or an array of red light sensors of an imaging device such as a camera (not used in the illustrated examples). Likewise, a green image channel comprises a frame of intensity values for green subpixels (61), and so on for a blue image channel. However, the disclosure is not limited in application to RGB images. Other suitable color models include YUV wherein Y specifies luminance, U specifies blue chrominance and V specifies red chrominance; CMYK (cyan, magenta, yellow and key (black)); and HSV (hue saturation value).

In the example implementations described herein RGB images are 24-bit images, each channel providing 8 bits to represent light intensity levels between 0 and 255 for each subpixel. In some implementations the RGB image can be 48-bit, wherein each channel has 16-bits to represent intensity levels for a pixel color.

A red channel image comprises an array in which red subpixel intensity values of an RGB image maintain their values in the RGB image, i.e., values range between 0 and 255. Green and blue subpixel intensity values of the RGB image are set to 0. A green channel image comprises an array in which green subpixel intensity values of the RGB image maintain their values in the RGB image, i.e., values range between 0 and 255. Red and blue subpixel intensity values are set to 0. A blue channel image comprises an array in which blue subpixel intensity values are maintained in the RGB image, i.e., values range between 0 and 255. Red and green subpixel intensity values are set to 0. In other words, to display a color representation of a given color channel of an RGB image, the given color channel maintains its original pixel intensity values and pixel intensity values in the other two color channels are set to 0.

In this specification a ‘digital image’ refers to digital values while the term ‘optical image’ refers to light. The digital values specify relative intensities of light that will be emitted when the values are applied to drive light emitters. The relative values specify mixtures of red, green and blue light defining color and brightness of each pixel.

A displayed image is an optical image comprising image modulated light propagating away from a display screen. A projected image is an optical image comprising light propagating from a projector toward a display screen. A display screen is any surface illuminated by light from a projector for the purpose of displaying optical images thereon.

A red, green and blue (RGB) color image comprises a red image subchannel which consists of an array of red light intensity values for the red subpixels comprising the red subarray of emitter array358, a green image subchannel consisting of an array of green light intensity values for the green subarray of emitter array358, and a blue image subchannel consisting of an array of blue light intensity values for the blue subarray of emitter array358. In combination, the red, green and blue subchannel intensity values specify mixtures of red, green and blue light for display pixels359of emitter array358.

FIG.3shows an example red channel reference digital image270loaded into frame buffer349for display as an optical image on display panel350. User2adjusts the red subpixel intensity values by manipulating touch sensitive elements, e.g.,354of touchscreen355. Processor310is configured by graphical image manipulation application327to interpret the sensed touch as adjustments to pixel intensity values of a displayed image in an area corresponding to the area of the touch so that user manipulation of touchscreen355produces an array of pixel intensity adjustment values374.

Processor310is configured by graphical image manipulation application327to provide a color channel projection reference compensated image by adjusting the subpixel intensity values of reference image270in frame buffer349by amounts given by the intensity adjustment values of intensity adjustment array374, e.g., increasing or decreasing the subpixel intensity values from their reference values of 128 in accordance with the user's touch sensed by touchscreen355. The value 128 is half the maximum intensity value of 256 in implementations in which 8 binary digits (bits) are used to represent pixel intensity values. Processor310is configured to provide reference compensated images for red, green and blue image channels.

Processor310loads each successive, respective reference compensated image for the red, green and blue image channels into frame buffer349where it is displayed on display panel350, and also grabbed by frame grabber348. Processor310is configured by multimedia platform323to format the reference compensated image comprising the grabbed frame for compatibility with projector235and to send the properly formatted reference compensated image to projector235for projection onto transparent display230. Thus, apparatus300enables user2to observe the reference compensated image displayed on transparent display230at the same time user2manipulates the reference compensated image displayed on display panel350of apparatus300.

In such implementations frame grabber348may be configured to convert frames grabbed from frame buffer349to a format compatible with projector235based, e.g., on a device profile375for projector235, which is stored in memory320of apparatus300. Device profile375may provide geometric mapping between pixels of display panel350and pixels of projector235.

Projector235converts the received arrays to optical images271in accordance with the pixel intensity values, and projects optical images271onto TD230. TD230displays the optical images by diffracting the optical image light to an eyebox area where the displayed optical images can be observed by user2. User2can use apparatus300to adjust pixel intensity values based on the observed brightness aberrations in the optical images displayed on transparent display230.

In that manner, apparatus300enables user2to define photometric projection compensation for any image to be displayed on TD230. When the compensated projected optical images are displayed on TD230the projected optical image light will modulate to increase brightness uniformity of the displayed optical image on TD230.

Apparatus300maps pixel values comprising a reference array270to pixel values comprising a compensation array thereby providing pixel maps. Processor310constructs one or more lookup tables (LUTs) based on the pixel value mappings. Apparatus300provisions projector235with the one or more LUTs. Projector235stores the one or more LUTs. Subsequently, in routine operation of the vehicle, any images to be projected onto TD230can be provided to the LUT. The LUT adjusts the red image pixels, the blue image pixels and the green image pixels in accordance with the mappings stored in the one or more LUTs, thereby providing photometric projection compensation to the images to be projected onto a TD. When TD230displays the compensated optical images, the compensated optical images have an increased brightness and color uniformity in the area of the chip or epoxy resin treatment232as compared to their uncompensated counterpart reference images.

FIG.4is a block diagram showing apparatus300shown inFIGS.2and3and a head up display system200. Head up display (HUD) system200comprises respective projectors225,235,245and respective corresponding projector controllers226,236,246disposed within vehicle102(illustrated inFIG.1) and arranged to project HUD optical input images272onto corresponding respective transparent projection surfaces comprising transparent displays220,230,240. In the example ofFIG.4, TD230has a surface chip or pit232. A media interface platform275can store HUD digital images for producing HUD optical images272and may include interfaces to receive other media from sources external to HUD system200for projection onto one or more of TD220,230,240.

Apparatus300comprises a memory320, processor310, display panel350(best illustrated inFIG.3), frame buffer349and frame grabber348(also shown inFIG.3). In some implementations, apparatus300can comprise a graphics tablet configured with a special purpose touch screen drawing application. An example of a suitable touch screen drawing application is ‘Artist Pro 16TP Drawing Display’ available from XPPen Technology Co. 15350 Fairfield Ranch Road Unit G1, Chino Hills, CA, 91709 (https://www.xp-pen.com/store/).

Memory320can store reference images326, pixel maps328generated by methods500and600described below, libraries, routines and other components implementing a multimedia platform323, device profiles375, processor executable instructions324and processor executable instructions comprising a graphics image manipulation program327. Processor executable instructions324configure processor310to perform the processes, functions and methods disclosed and described herein.

Graphical image manipulation application327comprises processor executable instructions that configure processor310to perform image generation and manipulation functions described herein. The image manipulation functions can be provided by any suitable image manipulation program with touchscreen image manipulation capability. Examples of suitable touchscreen image manipulation programs for Linux, Windows and macOS devices include GIMP 2.99 (GNU Image Manipulation Program) which is freely distributed and available from www.gimp.org.

In an example implementation, multimedia platform323implements frame grabber348as part of a cross-platform multimedia framework such as Fast Forward Moving Picture Experts Group (FFmpeg) platform, available from FFmpeg.org. FFmpeg is published under the GNU Lesser General Public License (LGPL) 2.1 or later, or 2.0 or later depending on which options are enabled.

FIG.5is a flowchart of a method500for photometric projection compensation.

At block501processor310receives an indication of a user selection of a transparent projection screen for photometric projection compensation.

At block502processor310generates or acquires a first color channel reference image for the selected transparent projection screen based on a device profile of a projector corresponding to the transparent projection screen.

At block504processor310displays the reference image on a display panel of the user graphics device.

At block506processor310sends the reference image to the projector for projection to the projection screen selected at block501.

At block508processor310receives subpixel intensity adjustment values for the reference image via a touchscreen of the user graphics device.

At block510processor310applies the subpixel intensity adjustment values to the reference image to provide a first color channel reference compensated image.

At block512processor310sends the first color channel reference compensated image to the projector for projection onto the transparent projection screen. When the projector projects the reference compensated image onto the transparent projection screen, user2can observe the displayed image including any brightness aberrations in the area of the chip or repair.

At block514processor310determines whether the user will make more adjustments to the first color channel reference image. If so, processor310proceeds to block508where processor310receives further subpixel intensity adjustments via the touchscreen. Processor310repeats blocks510,512and514until processor310determines no further adjustments are to be made in the first color channel of the reference image.

If no further adjustments are to be made to the first color channel reference image, processor310proceeds to block516. At block516processor310maps pixel values of the reference image (before adjustment) to pixels of the reference compensated image.

At block518processor310constructs a look up table (LUT) based on the map provided at block516.

At block520processor310provisions the LUT to the projector.

At block522processor310determines whether a reference compensated image has been provided for each of the three image color channels. If not, processor310returns to block502. At block502processor310generates another reference image for a second color channel and repeats blocks508,510,512,514,516,518and520until the last of the three color channel LUTs has been provisioned to the projector at block522and the method ends.

FIG.6is a flowchart of a method600for providing photometric projection compensation for a projector of a head up display (HUD).

At block602processor310combines red, green and blue channel reference compensated images generated at block510of method500shown in the flowchart ofFIG.5to provide an RGB reference compensated image.

At block604processor310combines red, green and blue channel reference images generated at block502of the method500illustrated in the flowchart ofFIG.5to provide an RGB reference image.

At block606processor310maps pixel values of the RGB reference image to pixel values of the RGB reference compensated image.

At block608processor310constructs an RGB LUT based on the map.

At block610processor310provisions the projection with the RGB LUT and the method ends.

FIG.7is a flowchart of a method of performing a preliminary eligibility evaluation to determine if windshield250is eligible for repair and/or photometric projection compensation. Some types of windshield damage require replacement of the windshield. For example, some insurance companies, states, or countries mandate windshield replacement if the chip is in the driver's primary field of view (FoV).

At block702processor310enters photometric projection compensation eligibility mode.

At block704processor310determines geographic location of vehicle102. In an example implementation, memory320stores graphics representations of reference windshields for a plurality of geographic regions. To determine the geographic region of the vehicle, apparatus300can query a vehicle GPS system. Apparatus300can retrieve a graphic representation of a reference windshield indicating reference windshield zones in which repairs are permitted, or not permitted based on the determined geographic region.

At block706processor310displays a screen900showing the repair zone map950(illustrated inFIG.9) indicating which windshield zones A, B, C, D may be repaired based on the geographic location determined at block704. Table I shows criteria for repairing a windshield chip according to British Standard Code of Practice BS AU 242 1998. In that case, for example, if the chip is located in windshield zone A, damage of up to 10 mm can be repaired.

TABLE IWS ZONEREPAIR CRITERIAAdamage of up to 10 mm can be repairedBdamage of up to 15 mm can be repairedCdamage of up to 25 mm can be repairedDdamage of up to 45 mm can be repaired

At block708processor310receives a touch input indicating which of the displayed windshield zones has the chip or repair.

At block709processor310receives touch input indicating dimension of the damage.

At block710processor310determines if repair is permitted based on the indicated windshield zone and the dimension of the damage.

If processor310determines repair is not permitted, processor310proceeds to block712and terminates the method.

If processor determines repair is permitted, processor310proceeds to block714. At block714processor310performs method800according to the flowchart shown inFIG.8.

At block716processor310determines whether method800has completed. If method800has not been completed, processor310continues to perform the procedure at block714. If method800has completed, processor310ends method700.

FIG.8is a flowchart of a method for photometric projection compensation. At block802processor310displays a graphical image representing windshield250on display panel350. Graphical representation includes graphical objects representing TDs220,230240.

At block804processor310receives an indication of a user selection of one of TD220,230,240, e.g., TD230having a chip232.

At block806processor310constructs one or more a photometric projection compensation LUTs266(illustrated inFIG.4) for selected TD230, e.g., by performing methods600or700.

At block808, processor310provisions the one or more photometric projection compensation LUTs266to projector235and the method ends.

Once provisioned with a projection compensation LUT266, a controller236of projector235can provide projector input images (e.g., images272illustrated inFIG.4) to LUT266. For the pixels of the input images, LUT266can look up corresponding pixel intensity adjustment values in red, green and/or blue image channels to compensate the input images for the variations in surface albedo around chip or treated portion232, i.e., pixel intensity adjustment values by which pixels of the reference image in the same array position as the pixels in the input images were adjusted to provide the reference compensated images.

Computing devices such as those discussed herein generally each include instructions executable by one or more computing devices such as those identified above, and for carrying out blocks or steps of processes described above. For example, process blocks discussed above may be embodied as computer-executable instructions.

Computer-executable instructions may be compiled or interpreted from computer programs created using a variety of programming languages and/or technologies, including, without limitation, and either alone or in combination, Java™, C, C++, Visual Basic, Java Script, Perl, HTML, etc. In general, a processor (e.g., a microprocessor) receives instructions, e.g., from a memory, a computer-readable medium, etc., and executes these instructions, thereby performing one or more processes, including one or more of the processes described herein. Such instructions and other data may be stored and transmitted using a variety of computer-readable media. A file in a computing device is generally a collection of data stored on a computer readable medium, such as a storage medium, a random-access memory, etc.

A computer-readable medium includes any medium that participates in providing data (e.g., instructions), which may be read by a computer. Such a medium may take many forms, including, but not limited to, non-volatile media, volatile media, etc. Non-volatile media include, for example, optical or magnetic disks and other persistent memory. Volatile media include dynamic random-access memory (DRAM), which typically constitutes a main memory. Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any other memory chip or cartridge, or any other non-transitory storage medium from which a computer can read stored data or instructions.

In the drawings, the same reference numbers indicate the same elements. Further, some or all of these elements could be changed. With regard to the media, processes, systems, methods, etc. described herein, it should be understood that, although the steps of such processes, etc. have been described as occurring according to a certain ordered sequence, such processes could be practiced with the described steps performed in an order other than the order described herein. It further should be understood that certain steps could be performed simultaneously, that other steps could be added, or that certain steps described herein could be omitted. In other words, the descriptions of processes herein are provided for the purpose of illustrating certain embodiments and should in no way be construed so as to limit the claimed invention.

Accordingly, it is to be understood that the above description is intended to be illustrative and not restrictive. Many embodiments and applications other than the examples provided would be apparent to those of skill in the art upon reading the above description. The scope of the invention should be determined, not with reference to the above description, but should instead be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled. It is anticipated and intended that future developments will occur in the arts discussed herein, and that the disclosed systems and methods will be incorporated into such future embodiments. In sum, it should be understood that the invention is capable of modification and variation and is limited only by the following claims.

All terms used in the claims are intended to be given their broadest reasonable constructions and their ordinary meanings as understood by those skilled in the art unless an explicit indication to the contrary is made herein. In particular, use of singular articles such as “a,” “the,” “said,” etc. should be read to recite one or more of the indicated elements unless a claim recites an explicit limitation to the contrary.