A portion of the disclosure of this patent document contains material that is subject to copyright protection. The copyright owner has no objection to the reproduction of the patent document or the patent disclosure, as it appears in the U.S. Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
An invention as set forth in the present disclosure relates generally to color sensors. More particularly, this invention relates to a device, system and method for enabling accurate wireless color sensing, storage and comparison of color information for the full range of colors in the visible spectrum.
Designers, painters, contractors, photographers, and, in general, anyone interested in looking for an accurate color information may find the current range of color measurement tools to be limited, bulky, or lacking in convenience.
It would be desirable to provide a sensor that a person can take with themselves anywhere, scan a color, obtain accurate color information, and automatically store the color information on a mobile computing device that the user will always have available (such as for example an iPhone or Android device).
A color sensing device according to the present disclosure enables accurate wireless color sensing, storage, and comparison of color information for the full range of colors in the visible spectrum. Color information and user interface is controlled wirelessly from the sensor by a smartphone/smart device (such as an Apple iPhone, Apple iPad, or Android device) over a Bluetooth connection.
By making use of sensors and illumination separately from the user interface and color specific software, the present disclosure enables features unique to the color sense arena.
One exemplary aspect of a device and system according to the present disclosure may include a hardware design which includes a controlled, known light source and isolation from outside light.
Another exemplary aspect of the present disclosure may include the ability to control LEDs (turn off/on/various light levels) to enable measurement of color from emissive light sources, measurement of color from color samples using reflective light, and managing varying reflectivity.
Another exemplary aspect of the present disclosure may include color computation offloaded from the color sensor device, and performed remotely in the smartphone application.
Another exemplary aspect of the present disclosure may include the ability to get a color reading showing information in CIE XYZ (Tristimulus), CIE L*a*b*, RGB, and other formats as are known in the art via mathematical conversion based on a priori calibration using the MacBeth ColorChecker.
Another exemplary aspect of the present disclosure may include the ability to store thousands of color readings (meaning a user could store readings from an entire designer color sample book).
Yet another exemplary aspect of the present disclosure may include the ability to label or rename any color reading, and store color readings into customizable color collections.
Yet another exemplary aspect of the present disclosure may include the ability to get a graphical view of what a color may look like in different lighting conditions.
Still other exemplary aspects of the present disclosure may include the ability to compare a scanned color against other stored colors, or more specifically: the ability to have a visual side by side view of the color comparison and/or the ability to see CIE DeltaE measurements showing the exact color difference between two colors.
Another exemplary aspect of the present disclosure may include the ability to send color information as obtained or determined according to aspects otherwise described above via email or social media to other people (or more particularly, to devices or systems associated with other people).
Another exemplary aspect of the present disclosure may include the ability for users to fully customize their own software interface to the system as the system is provided with an open application programming interface (API).
Another exemplary aspect of the present disclosure may include the ability to verify the base module and the color sensing module are stationary for accurate measurements by using a motion sensor active within the base module, to which the color sensing module is connected.
Another exemplary aspect of the present disclosure may include the ability to accurately measure colors based on the ambient temperature. This is made possible using the base module (or host module) connected to two peripheral modules: the color sensing module and a temperature sensing module. The temperature sensing module measures ambient air temperature, while the color sensing module measures color. Color sensors are generally temperature sensitive, but by implementing a temperature sensing module, it is possible to accurately measure color in varying temperature environments.
a to 6e represent various user interfaces as may be generated on a display unit of a user computing device by program instructions associated with a host system according to the present disclosure.
Throughout the specification and claims, the following terms take at least the meanings explicitly associated herein, unless the context dictates otherwise. The meanings identified below do not necessarily limit the terms, but merely provide illustrative examples for the terms. The meaning of “a,” “an,” and “the” may include plural references, and the meaning of “in” may include “in” and “on.” The phrase “in one embodiment,” as used herein does not necessarily refer to the same embodiment, although it may.
Referring generally to
An exemplary color sensing system 10 as represented in
The term “communications network” as used herein with respect to data communication between two or more parties or otherwise between communications network interfaces associated with two or more parties may refer to any one of, or a combination of any two or more of, telecommunications networks (whether wired, wireless, cellular or the like), a global network such as the Internet, local networks, network links, Internet Service Providers (ISP's), and intermediate communication interfaces.
A color sensing device 12 of the present disclosure may be defined by the color sensing module 16 alone or a combination of the base 14 and color sensing modules 16 via direct coupling of the color sensing module 16 to the base module 14. In an embodiment, the base module enables remote communications to and from the color sensing module with respect to the user computing device 18. The base module may further define a base, processing unit, communications interface and/or power supply for any one or more of a plurality of sensing modules that may be detachably coupled to the base module at any given time.
In one embodiment, the color-sensing module 16 may be a Chroma™ sensor module selected from a family of sensor modules offered by Variable, Inc. for use with a base module (or host module), which may be a NODE™ device also as offered by Variable, Inc.
Referring generally now to
The light source 36 may include a plurality of (e.g., eight) light-emitting diodes (LEDs) 36 that provide or otherwise collectively define a controlled 6500 Kelvin light source to shine on a color sample. A clear cover 38 over the LEDs may be provided in order to reduce glare and focus light on the target surface of interest. A black plastic shroud around the outside of the module may be provided to block out ambient light and prevents scratches of the colored surface of interest.
The color sensor 34 may in an embodiment comprise a color sensor chip that further includes a color sensing array of photodiodes with red, green, blue, clear, etc. The color sensor 34 may be mounted on a circuit board 40 having appropriate circuitry and/or programming in conjunction with the color sensor effective for controlling gain, pre-scaler, and integration time—all of which may typically be used for fine-tuning the sensor for a given environment. A rubber cover 48 with for example a 1.0 mm to 1.59 mm aperture hole 44 may be provided to further allow only reflected light from a color sample in to the color sensor array. A clear epoxy lens 50 on the rubber cover 48 may be provided in order to isolate the sensor from dust, moisture, and other external elements while still allowing light in for accurate color measurement.
In an embodiment, the color sensing module 16 further comprises a CryptoAuthentication chip or an equivalent as known in the art, which enables restricting use of the color sensing module 16 with respect to the base module 14 or any other proprietary system as desired. This chip may also further enable storage of unique calibration information for each color sensing device 12.
The color sensing module 16 may further include an electrical connector 54 enabling easy, fast interchanging of the color sensor module 16 to a corresponding connector 52 for the base module 14.
As previously noted, the base module 14 may in one embodiment be a NODE unit as offered by Variable, Inc. The base module 14 in this embodiment is an intermediate hardware component with a microprocessor and communication peripherals that handle Bluetooth communication with a user device 18 such as a smartphone or the like. As represented in
In one embodiment, the color sensing device 12 may include a color sensing module 16 and a base module 14 having associated motion sensing functionality. A color sensing method of the present disclosure may accordingly only be enabled when the base module verifies that the color sensing device is stationary and thereby assure more accurate color measurements.
In one embodiment, the color sensing device 12 may include a color sensing module 16 and an air temperature sensing module (not shown) both interchangeably connectable to either of a plurality of connection ports on the base module 14, wherein the color sensing system may have an enhanced color measurement method based further upon a sensed ambient temperature. In a particular embodiment, the temperature sensing module is a Clima device as offered by Variable, Inc. which is further effective to sense barometric pressure, ambient light, humidity, etc., representative outputs for each of which may supplement color measurements or otherwise be displayed on the user device.
The computer program product of a color sensing system 10 of the present disclosure may typically comprise computer instructions residing on a non-transitory computer-readable medium in a computing device such as for example a smart phone or tablet computer. Alternatively, the computer program product may reside in a non-transitory computer-readable medium such as a server system remote from the computing device but communicatively linked to the computing device such that execution of the computer program product directs the performance of a color sensing, storage and comparison method according to the present disclosure, at least part of which includes steps for generating a user interface on a display of the computing device and receiving user input regarding, e.g., various display parameters.
In an exemplary embodiment, the computer program product may be or include the Chroma smartphone application as provided by Variable, Inc., which enables many unique features including base module (i.e., NODE) connectivity, color sensing, color display, color comparison, color information storage, history lookup, and others as listed in the sections below. Five preliminary screenshots of program functionality are represented by reference to
a demonstrates a first exemplary user interface 61 wherein the system may identify a device according to its current functionality according to a determined “pairing” of a base module and the one or more coupled sensing modules. The interface may for example include a “Refresh” tab 611, one or more display portions identifying device pairings 612, and an “Unpair” tab 613.
b demonstrates a second exemplary user interface 62 wherein a user is enabled to select tabs 621 associated with light conditions such as “Daylight”, “Horizon”, “Fluorescent” and “Tungsten.” In accordance with the user selection, the system may direct the lighting output from the light source in the color sensing module at an associated power level.
c demonstrates a third exemplary user interface 63 wherein a color history may be extracted from a hosted data storage network, data repository, etc., and made accessible via user selection from a displayed list including color data identifiers. The identifiers may be associated with historical results associated with the user or predefined colors and associated characteristics for appropriate comparison with current observed results.
d demonstrates a fourth exemplary user interface 64 wherein a first color 641 (e.g., representing an observed color via the color sensing module) may be displayed alongside a second color 642 (representing a selected color, e.g., via user selection from a catalog of colors or as directly entered according to a corresponding color code or value). A value 643 representing a similarity or difference between the first and second colors 641, 642 may be generated by the system in a manner further described below and displayed.
e demonstrates a fifth exemplary user interface 65 wherein a similarity or difference between the first and second colors may be represented with additional data in a number of forms which may in various embodiments be user-selectable.
An exemplary color sensing method according to the present disclosure may include an algorithm for sensor calibration using a priori estimation. Thanks to the linearity of the color sensing chip used in various embodiments of the present disclosure (including the Chroma color sensing module), an a priori sensor calibration algorithm 700 as represented in
In accordance with one example of the method 700, known MacBeth CIE Lab values are converted to CIE XYZ Tristimulus (XYZ) values, which at this stage are all based on d50 light (step 701). Chromatic adaptation of these values is performed (step 702) by converting them to d65 reference light using a transformation method, for example a Bradford transform as is known in the art. The color sensing module of the present disclosure then generates raw red, green and blue sensor measurements (step 703) from a MacBeth ColorChecker (a color rendition chart as known in the art for use as a calibration target). The host system generates a sensor to CIE Tristimulus (XYZ) matrix (step 704) which may be used for converting future output values from the color sensor into CIE Tristimulus values a priori. For that purpose, the generated tristimulus matrix is stored to memory such as for example a CryptoAuthentication chip in the color sensing module.
Alternatively or in addition to the a priori estimation process as represented in
An exemplary color measurement algorithm according to an embodiment of a color sensing method of the present disclosure may be described as follows. An operation of the computer program product residing upon or otherwise executable in association with the user's computing device is as represented in the flowchart of
First, the color sensing module (for the purposes of this exemplary description, the Chroma module) is coupled to the base module (e.g., NODE) and the device is powered on (step 501). The computer program product such as the Chroma smart phone application (as executed from, e.g., an iPhone) may then be initiated by the user and subsequently “pair” (i.e., connect using for example Bluetooth technology via the communications network) with the color sensing device (step 502). The program product enables the user via a series of user interfaces to view a list of colors such as for example a history of previously scanned colors or to request a new color scan (step 503).
If the user requests a new color scan, the hosted software library on the iPhone sends a request over a communications network incorporating, e.g., Bluetooth technology and specifying the gain, prescaler, integration time, and LED (on/off/strength) settings. The base module's processor receives the Bluetooth command and sends the appropriate commands to the color sensing module. The base module may read back red, green, blue, and clear sense values from the color sensor module along with that specific color sensing module's calibrated sensor to tristimulus matrix from, e.g., the CryptoAuthentication chip. The calibration matrix and raw sense values are sent over the wireless communications network (e.g., Bluetooth) to the smartphone application, where they are mathematically converted via one or more formats known in the art including but not limited to CIE XYZ, CIE L*a*b*, sRGB values for initial display and comparison.
When the user requests a defined color view (step 504), the program product generates an appropriate interface wherein the user is enabled to select a color from for example a stored scan history, label or rename color readings or values, select individual colors for viewing, define and store personalized color collections from the color history, etc. Generally, a user may have previously downloaded and stored color values from, for example, a designer color sample book or the like as is known in the art, for the purpose of later selection and comparison against current color measurements.
As represented in step 505, colors may be viewed in their basic form (i.e., previewed) or in advanced form (colors with details in different text representations) or in a comparison view wherein a first color associated with a current scan and measurement may be displayed side-by-side with at least a second color as selected by the user from data storage, along with associated details regarding a similarity or difference between the respective colors (e.g., using CIE DeltaE measurements).
In various embodiments, the user may further select one or more of a plurality of lighting conditions, wherein the first and at least second color are displayed in accordance with the selected lighting condition, or only a first color may be displayed in accordance with a plurality of selected lighting conditions, etc.
Depending on the embodiment, certain acts, events, or functions of any of the algorithms described herein can be performed in a different sequence, can be added, merged, or left out altogether (e.g., not all described acts or events are necessary for the practice of the algorithm). Moreover, in certain embodiments, acts or events can be performed concurrently, e.g., through multi-threaded processing, interrupt processing, or multiple processors or processor cores or on other parallel architectures, rather than sequentially.
The various illustrative logical blocks, modules, and algorithm steps described in connection with the embodiments disclosed herein can be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. The described functionality can be implemented in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the disclosure.
The various illustrative logical blocks and modules described in connection with the embodiments disclosed herein can be implemented or performed by a machine, such as a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor can be a microprocessor, but in the alternative, the processor can be a controller, microcontroller, or state machine, combinations of the same, or the like. A processor can also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
The steps of a method, process, or algorithm described in connection with the embodiments disclosed herein can be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module can reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of computer-readable medium known in the art. An exemplary computer-readable medium can be coupled to the processor such that the processor can read information from, and write information to, the memory/storage medium. In the alternative, the medium can be integral to the processor. The processor and the medium can reside in an ASIC. The ASIC can reside in a user terminal. In the alternative, the processor and the medium can reside as discrete components in a user terminal.
Conditional language used herein, such as, among others, “can,” “might,” “may,” “e.g.,” and the like, unless specifically stated otherwise, or otherwise understood within the context as used, is generally intended to convey that certain embodiments include, while other embodiments do not include, certain features, elements and/or states. Thus, such conditional language is not generally intended to imply that features, elements and/or states are in any way required for one or more embodiments or that one or more embodiments necessarily include logic for deciding, with or without author input or prompting, whether these features, elements and/or states are included or are to be performed in any particular embodiment.
The previous detailed description has been provided for the purposes of illustration and description. Thus, although there have been described particular embodiments of an invention as set forth herein, it is not intended that such references be construed as limitations upon the scope of this invention except as set forth in the following claims.
This application is a continuation under 35 U.S.C. §111(a) of International Patent Application No. PCT/US13/68305, filed Nov. 4, 2013, which further claims the benefit of U.S. Provisional Patent Application No. 61/721,940, filed Nov. 2, 2012. The disclosures of the above references are hereby incorporated by reference in their entirety.
Number | Date | Country | |
---|---|---|---|
61721940 | Nov 2012 | US |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/US2013/068305 | Nov 2013 | US |
Child | 14702236 | US |