1. Field of the Invention
This invention relates generally to visual presentation systems, and, more particularly, to modifying visual presentations based on environmental context and user preferences.
2. Description of the Related Art
The increase in utility and availability of various information technology services has led to a corresponding proliferation of devices for accessing these services via, e.g., wired and wireless networks. For example, desktop computers, laptop computers, personal data assistants, cell phones, navigation systems, and the like may be coupled to a variety of information technology services via wired and/or wireless networks such as the World Wide Web, wide area networks, local area networks, and the like. Although these devices may share the same networks, not all the devices, or even all models or versions of the same device, may be capable of displaying information in the same format.
Consequently, the information technology industry is working toward being able to provide information to a particular device in a format that is appropriate to the device. In one approach, a profile indicating one or more device preferences may be provided to a server. The server may then use the profile to transform information to a format appropriate for the device. For example, a Composite Capabilities/Preferences Profile (often referred to as a CC/PP) may be used to pass information regarding the capabilities and/or preferences of a particular device. When the device requests information from a server, the server, or an intermediary, may access the profile to determine the appropriate format for information that may be transmitted to the device.
Visual presentation of information poses a unique set of challenges for these so-called on-demand solutions. For example, the visibility of information presented on display screens in pervasive devices such as cell phones, personal data assistants, and the like may be affected by the environment. The intensity and/or color of ambient light may change as a user carries the pervasive device from one context to another, and the visibility of the information displayed on the display screen may therefore change. The visibility of information displayed by non-pervasive devices may also be affected by changing environmental conditions, such as the rising and setting of the sun, the presence or absence of artificial lighting, and the like.
The parameters used to display visual information typically assume an average user working in a predetermined environmental context. For example, a conventional desktop computer may display text under the assumption that the user has 20/20 corrected vision and is working in an office under fluorescent lights. To compensate for small variations in the environmental conditions, users may be provided with various devices to manually adjust the parameters of the display device. For example, a computer monitor coupled to a conventional desktop computer may include adjustment devices such as a brightness control, a contrast control, and the like. However, finding and/or adjusting these controls may be awkward and inconvenient for the user. Moreover, the small size of many pervasive devices may make it difficult to include the adjustment devices in a convenient location.
The visibility of information may also be affected by deficiencies in the user's eyesight. One user may be near-sighted, while another may be far-sighted. Although these conditions may be corrected, users may want to use the device when their corrective lenses are unavailable. In addition, the eyesight of some users may have deteriorated beyond a fully correctable level. Furthermore, as users age, the lenses of their eyes may yellow and/or crystallize, which may result in increased light absorption by the lens. Aging users may also experience reduced pupil size and/or increased light scatter from the lens. These and similar problems may be frequency-dependent and may result in reduced light and/or contrast sensitivities, reduced color discrimination, reduced acuity, and the like. Consequently, the user may experience a dimmer, lower contrast visual world, with less vivid colors, poor night vision, blurred vision, reading problems, and the like. These conditions may make it difficult for the user to view information displayed on a conventional display device, which may impair the user's ability to access information using the associated device and/or network.
In one aspect of the instant invention, a method is provided for modifying visual presentations based on environmental context and user preferences. The method includes receiving data indicative of light conditions proximate to a visual presentation device, receiving data associated with at least one visibility profile, and determining visual data to be displayed by the visual presentation device based on at least a portion of the received data indicative of light conditions and the received data associated with the at least one visibility profile. An apparatus including an interface coupled to a controller adapted to perform the aforementioned method, as well as an article comprising one or more machine-readable storage media containing instructions that when executed enable a processor to implement the method, are also provided.
The invention may be understood by reference to the following description taken in conjunction with the accompanying drawings, in which like reference numerals identify like elements, and in which:
While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof have been shown by way of example in the drawings and are herein described in detail. It should be understood, however, that the description herein of specific embodiments is not intended to limit the invention to the particular forms disclosed, but on the contrary, the intention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention as defined by the appended claims.
Illustrative embodiments of the invention are described below. In the interest of clarity, not all features of an actual implementation are described in this specification. It will of course be appreciated that in the development of any such actual embodiment, numerous implementation-specific decisions must be made to achieve the developers' specific goals, such as compliance with system-related and business-related constraints, which will vary from one implementation to another. Moreover, it will be appreciated that such a development effort might be complex and time-consuming, but would nevertheless be a routine undertaking for those of ordinary skill in the art having the benefit of this disclosure.
The words and phrases used herein should be understood and interpreted to have a meaning consistent with the understanding of those words and phrases by those skilled in the relevant art. No special definition of a term or phrase, i.e., a definition that is different from the ordinary and customary meaning as understood by those skilled in the art, is intended to be implied by consistent usage of the term or phrase herein. To the extent that a term or phrase is intended to have a special meaning, i.e., a meaning other than that understood by skilled artisans, such a special definition will be expressly set forth in the specification in a definitional manner that directly and unequivocally provides the special definition for the term or phrase.
Each of the devices 110(1-4) includes a display device 115(1-4) that is capable of displaying information visually. For example, the display devices 115(1-4) may be flat panel LED displays, CRTs, and the like. The various display devices 115(1-4) may have different display capabilities. For example, the display devices 115(1-4) may be capable of presenting visual information in black and white and/or a predetermined number of colors. The display devices 115(1-4) may also be capable of presenting visual information using a variety of brightnesses, contrasts, magnifications, fonts, animations, and the like.
Moreover, the size, display or glass reflectivity, and/or resolution of the display devices 115(1-4) may vary. For example, the display devices 115(2-3) included in the laptop computer 110(2) and the desktop computer 110(3) may be substantially larger and have substantially more pixels than the display devices 115(1), 115(4) included in the personal data assistant 110(1) and the cellular telephone 110(4). Consequently, the display devices 115(2-3) included in the laptop computer 110(2) and the desktop computer 110(3) may be capable of displaying larger images at higher resolution. For another example, a high display or glass reflectivity may cause the display devices 115(1-4) to be more susceptible to glare from ambient light. In one embodiment, the aforementioned capabilities and characteristics of the display devices 115(1-4) may be stored in a visibility profile.
The devices 110(1-4) are communicatively coupled to a processor-based device 120 by respective links 130(1-4). In various alternative embodiments, the links 130(1-4) may be any desirable combination of wired and/or wireless links 130(1-4). For example, the personal data assistant 110(1) may be communicatively coupled to the processor-based device 120 by an infrared link 130(1). For another example, the laptop computer 110(2) may be communicatively coupled to the processor-based device 120 by a wireless local area network (LAN) link 130(2). As yet another example, the desktop computer 110(3) may be communicatively coupled to the processor-based device 120 by a wired LAN connection 130(3), such as an Ethernet connection. As yet another example, the cellular telephone 110(4) may be communicatively coupled to the processor-based device 120 by a cellular network link 130(4). However, in alternative embodiments, any desirable mode of communicatively coupling the devices 110(1-4) and the processor-based device 120, including traces, wires, cables, radiofrequency links, satellite links, and the like, may be used.
The processor-based device 120 is capable of providing information to the devices 110(1-4). In the illustrated embodiment, the processor-based device 120 is a network server that is capable of receiving requests from, and transmitting information to, the devices 110(1-4). However, the present invention is not limited to network servers. In alternative embodiments, the processor-based device 120 may be a transcoder, a network hub, a network switch, and the like. Moreover, the processor-based device 120 may not be external to one or more of the devices 110(1-4). For example, the processor-based device 120 may be a processor (not shown) included in one or more of the devices 110(1-4) to perform the desired features. In another embodiment, some aspects of the processor-based device 120 may be implemented in the devices 110(1-4) while other aspects of the processor-based device 120 may be implemented elsewhere, external to the devices 110(1-4).
In one embodiment, the devices 110(1-4) may include a remote module 140, which may receive data indicative of light conditions proximate to the devices 110(1-4), respectively. The remote module 140 may also receive data associated with at least one visibility profile containing information indicative of the capabilities and characteristics of the devices 110(1-4), 115(1-4), as well as the preferences and/or capabilities of the user. For example, a federated identification may be used to identify and retrieve a visibility profile from a federated server. The remote module 140 may determine a format for information to be displayed by the device 110(1-4) on, for example, the display devices 115(1-4), respectively, based on at least a portion of the received data and the received visibility profile. In one embodiment, the visibility profile may include a user profile and a device profile, which may be stored in different locations.
The processor-based device 120 may, in one embodiment, include a controller module 150, which may receive data indicative of light conditions proximate to the devices 110(1-4), respectively. The controller module 150 may also receive data associated with at least one visibility profile and determine a format for information to be displayed by the device 110(1-4) on, for example, the display devices 115(1-4), respectively, based on at least a portion of the received data and the received visibility profile. The various modules 140, 150 illustrated in
The system 200 includes a detector 210 that is capable of acquiring data indicative of light conditions proximate to the display device 205. For example, the detector 210 may be capable of measuring the intensity of ambient light from the sun 215 and/or an artificial light source 220. The detector 210 may also be capable of acquiring data indicative of other light conditions proximate to the display device 205 including, but not limited to, spectral and/or color information, angles of incidence and/or reflection, variability, and the like. The detector 210 provides the acquired data indicative of the light conditions proximate to the display device 205 to the processor-based device 120. In various alternative embodiments, the detector 210 may be a photovoltaic cell, a charge coupled device, and the like.
The system 200, in one embodiment, may have a plurality of users. In the illustrated embodiment, the plurality of users may each have an associated visibility profile 225 stored in a database 230, portions of which may be located at any desired location, including on the processor-based device 120 or another device. For example, the database 230 may be stored in a location remote to the processor-based device 120. The processor-based device 120 may access the one or more visibility profiles 225 that contain information that can be used by the processor-based device 120 to provide information to the display device 205 in a manner desired by the user. In one embodiment, the visibility profiles 225 may be an extended version of Composite Capabilities/Preferences Profiles that may be stored at any desirable location. In one alternative embodiment, the visibility profiles 225 may be an extended version of a Learner Profile. A conventional Learner Profile is defined by the IMS Learner Information Package (LIP) specification version 1.0.
In one embodiment, the visibility profiles 225 include information about the capabilities of the particular device being used by the user, such as the display devices 115(1-4) shown in
The visibility profiles 225 may also include information specific to one or more users. In one embodiment, the user information may include the user's preferences. For example, a first visibility profile 225 may indicate that a first user prefers to have information displayed in color using an 18-pt Arial text font on a 15-inch screen having 1200×800 pixels. A second user, however, may have an associated visibility profile 225 indicating that the second user prefers to have information displayed in color using a 10-pt Webdings font on a 21-inch screen having 1200×800 pixels. In one embodiment, the visibility profiles 225 may be edited or modified by the user.
The visibility profiles 225 may also include information about the user's capabilities. In particular, the visibility profiles 225 may include information indicating any limitations in the user's visual capabilities that may impact the user's ability to see visual information presented on the display device 205. For example, the visibility profile 225 may indicate that the user is color blind, or is not sensitive to colors in particular portions of the visible spectrum. Alternatively, the visibility profile 225 may indicate that the user's eyes have yellowed and/or crystallized, or that the user has reduced pupil size and/or increased light scatter from the lens. In one embodiment, the user may establish the visibility profile 225 indicating the user's capabilities by providing the relevant information. Alternatively, a doctor may test the user's eyesight and form the visibility profile 225 based on the test results or an automated testing system may be used to establish the visibility profile 225.
Although the embodiment of the visibility profile 225 shown in
As the conditions proximate to the display device 205 change, the visual information displayed may become more difficult to see. For example, if a user is reading a document on a personal data assistant while walking from a dark room to a lighted room, the ambient light in the lighted room may obscure the visual information displayed on the display device 205 of the personal data assistant. Alternatively, the user of the display device 205 may change, making the current visual presentation preferences undesirable. For example, a first user may log off a desktop computer, which may be displaying information using the first user's preferences, e.g., a low contrast color display, as indicated in a visibility profile 225. A second user requiring or preferring a high contrast black-and-white display may then log on to the desktop computer.
Turning to
A plurality of users may have access to the same display device 205. A first visibility profile 225 may indicate that a first user prefers a format that allows the display device 205 to present information in smaller fonts (i.e. the phrase, “This is a test.”, shown in
Persons of ordinary skill in the art having benefit of the present disclosure will appreciate that the potential data acquired by the detector 210 and the possible contents of the visibility profiles 225 may vary greatly depending on the application and context in which the present invention is practiced and it would therefore be impractical to list all the types of data that may be acquired and all the features that may be entered into the visibility profiles 225. Moreover, the possible display formats that may be determined by the processor-based device 120 using the data received by the detector 210 and the data received from the visibility profile 225 may also vary from one implementation to another. In the interest of clarity, the above discussion of the capabilities of the system 200 is limited to a few illustrative embodiments that are intended to be exemplary of the manner in which the present invention may be practiced. The aforementioned embodiments are not, however, intended to limit the present invention.
The processor-based device 120 also receives (at 420) at least one visibility profile, such as the visibility profiles 225 shown in
The processor-based device 120 determines (at 430) visual data to be displayed by the visual presentation device using the received data and the received visibility profile. In one embodiment, the processor based device 120 determines (at 432) one or more deficiencies in the user's vision using the user profile. For example, the processor-based device 120 may determine (at 432) that the user experiences light scatter when viewing text on a white background. In one embodiment, the visibility profile, or an associated device profile, may indicate that the light scatter may be exacerbated by glare from the device. The processor-based device 120 may then compare (at 435) the determined deficiencies to the ambient light spectrum and then adjust (at 438) the visual data accordingly. For example, if the ambient light is likely to cause glare that may make it difficult for the user prone to light scatter to read text on the device, the processor-based device 120 may adjust (at 438) the visual data to enhance the visibility of the text. For example, the processor-based device 120 may adjust (at 438) the visual data to change the background from white to dark gray. The foreground color, brightness, contrast, size, font, and other characteristics of the visual data may also be adjusted (at 438).
The processor-based device 120 then provides (at 440) the visual data to the visual presentation device. In one embodiment, the processor-based device 120 may request information from a remote server and then provide (at 440) the requested information to the visual presentation device using the determined display format. For example, the processor-based device 120 may provide (at 440) text on a dark gray background, in a different color, with enhanced contrast, or in a different font or size.
As noted earlier, in one embodiment, the device 120 may be located remotely from the visual presentation device. The device 120 may, for example, be a server or a proxy server. In such an embodiment, the remotely located device 120 may perform one or more of the acts described in
The system 500 comprises a control unit 510, which in one embodiment may be a processor that is communicatively coupled a storage unit 520. The software installed in the storage unit 520 may depend on the features to be performed by the system 500. For example, if the system 500 represents one of the devices 110(1-4), then the storage unit 520 may include the module 140. The modules 140, 150 may be executable by the control unit 510. Although not shown, it should be appreciated that in one embodiment an operating system, such as Windows Disk Operating System®, Unix®, OS/2®, Linux®, MAC OS®, or the like, may be stored on the storage unit 520 and be executable by the control unit 510. The storage unit 520 may also include device drivers for the various hardware components of the system 500.
In the illustrated embodiment, the system 500 includes a display interface 530. The system 500 may display information on a display device 535, such as the display devices 115(1-4) shown in
The control unit 510 is coupled to a network interface 560, which may be adapted to receive, for example, a local area network card. In an alternative embodiment, the network interface 560 may be a Universal Serial Bus interface or an interface for wireless communications. The system 500 communicates with other devices through the network interface 560. For example, the control unit 510 may receive one or more visibility profiles 225 from a visibility profile database 230 stored in a remote storage medium (not shown) via the interface 560. Although not shown, associated with the network interface 560 may be a network protocol stack, with one example being a UDP/IP (User Datagram Protocol/Internet Protocol) stack or Transmission Control Protocol/Internet Protocol. In one embodiment, both inbound and outbound packets may be passed through the network interface 560 and the network protocol stack.
It should be appreciated that the block diagram of the system 500 of
The various system layers, routines, or modules may be executable control units, such as the control unit 510. The control unit 510 may include a microprocessor, a microcontroller, a digital signal processor, a processor card (including one or more microprocessors or controllers), or other control or computing devices. The storage devices referred to in this discussion may include one or more machine-readable storage media for storing data and instructions. The storage media may include different forms of memory including semiconductor memory devices such as dynamic or static random access memories (DRAMs or SRAMs), erasable and programmable read-only memories (EPROMs), electrically erasable and programmable read-only memories (EEPROMs) and flash memories; magnetic disks such as fixed, floppy, removable disks; other magnetic media including tape; and optical media such as compact disks (CDs) or digital video disks (DVDs). Instructions that make up the various software layers, routines, or modules in the various systems may be stored in respective storage devices. The instructions when executed by a respective control unit 515 cause the corresponding system to perform programmed acts.
The particular embodiments disclosed above are illustrative only, as the invention may be modified and practiced in different but equivalent manners apparent to those skilled in the art having the benefit of the teachings herein. Furthermore, no limitations are intended to the details of construction or design herein shown, other than as described in the claims below. It is therefore evident that the particular embodiments disclosed above may be altered or modified and all such variations are considered within the scope and spirit of the invention. Accordingly, the protection sought herein is as set forth in the claims below.