The present invention relates to displaying images on a web browser and, more particularly, to techniques for processing and presenting three-dimensional (3D) images as multiple two-dimensional (2D) images.
Three-dimensional images are commonly used in medical imaging, such as computed tomography (CAT) and magnetic resonance imaging (MRI). They are also used in visual representations of structures and geologic activities. 3D images are large arrays of integers (or bytes) that contain layer-by-layer representations of each slice of the image. When 3D images are presented to users, the 3D images must be processed before they can be viewed. Typically, a robust application is needed to display and scroll through the layers of a 3D image. For example, in the case of medical images, a 3D image is displayed as a series of 2D slices. The 2D slices are cross-sections of the 3D image taken at successive intervals of 3D depth. The successive 2D slices are then stored in a large data file, which can only be accessed by the robust application used to create the 2D slices.
Conventional techniques of 3D image processing suffer practical issues that remain unsolved. First, conventional techniques require the utilization of bulky stand-alone software. For instance, researchers and clinicians who wish to manage and examine 3D images, such as CAT scans and MRIs, are required to install and use resource intensive 3D imaging software. This raises an issue of compatibility because certain image formats (e.g., Digital Imaging and Communications in Medicine (DICOM), ANALYZE) may require special proprietary or public domain software for viewing. Therefore, a user must typically load multiple image programs on his or her individual workstation in order to view and study images of various formats.
The installation of imaging software also raises the issue of portability. Conventional techniques do not give researchers and clinicians quick access to 3D images because format-specific imaging software must be installed on an access terminal prior to viewing. This can be an issue in the medical field especially when a clinician requires immediate and remote access to medical images of a patient in order to make an emergency diagnosis. Currently, there are no techniques that allow users to access 3D images using ordinary and universal interfaces such as web browsers (e.g., Internet Explorer® (a registered trademark of Microsoft Corporation) and Mozilla FireFox® (a registered trademark of Mozilla Foundation)).
An illustrative embodiment of the present invention meets the above-noted needs by providing techniques for presenting 3D images to users through a communications network. These techniques offer several advantages over conventional methodologies, including: (i) allowing users to access complex images without using bulky stand-alone software; (ii) overcoming image format and software compatibility issues; and (ii) faster and more efficient presentation of 3D images via a web browser.
In a first aspect of the present invention, a method for presenting at least one 3D image to at least one user through a communications network is presented. A 3D image is obtained. The 3D image is converted into two or more two-dimensional (2D) images. The two or more 2D images are stored in a data repository. At least a portion of the two or more stored 2D images is presented to the at least one user. The portion of the two or more stored 2D images is accessible by the at least one user via a browser program.
The 3D image may be in a Digital Imaging and Communications in Medicine (DICOM) data format and/or ANALYZE data format. Further, each of the two or more 2D images may be a slice of the 3D image. In an additional embodiment, the two or more 2D images may be in a compressed format. The compressed format may be a Joint Photographic Experts Group (JPEG) format.
In an additional embodiment of the present invention, the step of storing may further comprise the steps of creating at least one directory in the data repository, and storing the two or more 2D images in the at least one directory. The at least one directory may be deleted in accordance with an idle time. Further, it may be determined if two or more stored 2D images exist for the 3D image. Also, the portion of the two or more stored 2D images may be associated with a medical report.
In an alternative embodiment of the invention, the browser program may be operative to display the portion of the two or more stored 2D images. Also, the browser program may be operative to cache the portion of the two or more stored 2D images. Further, the browser program may be operative to scroll through the two or more stored 2D images and the scrolling may be in accordance with a scrollbar and/or a time delay.
In a second aspect of the present invention, an article of manufacture for presenting at least one 3D image to at least one user via a communications network comprises a computer readable storage medium identified by one or more programs, which when executed by a computer implement the above steps.
In a third aspect of the invention, an apparatus for presenting at least one 3D image to at least one user through a communications network comprises a memory and at least one processor coupled to the memory and operative to: (i) obtain a 3D image; (ii) convert the 3D image into two or more 2D images; (iii) store the two or more 2D images in a data repository; and (iv) present at least a portion of the two or more stored 2D images to the at least one user. The portion of the two or more stored 2D images is accessible by the at least one user via a browser program.
In accordance with a fourth aspect of the present invention, a web-based system for presenting at least one 3D image to at least one user through a communications network is provided. The system comprises a client device and at least one server coupled to the client device. The at least one server is operative to: (i) obtain a 3D image; (ii) convert the 3D image into two or more 2D images; and (iii) store the two or more 2D images in a data repository. The client device is operative to: (i) request at least a portion of the two or more stored 2D images from the at least one server; and (ii) access the portion of the two or more stored 2D images via a browser program.
These and other objects, features, and advantages of the present invention will become apparent from the following detailed description of illustrative embodiments thereof, which is to be read in connection with the accompanying drawings.
The present invention will be described in conjunction with exemplary methods for presenting at least one 3D image to at least one user through a communications network. It should be understood, however, that the invention is not limited to the particular embodiments described herein. The principles of this invention are generally applicable to any technique used for managing and accessing images using the web, and modifications to the illustrative embodiments will become apparent to those skilled in the art given the teachings described herein.
The term “browser program” as used herein is intended to be construed broadly so as to encompass, by way of example and without limitation, any computer-based application used to locate and display web pages.
The term “data repository” as used herein is intended to be construed broadly so as to encompass, by way of example and without limitation, a computer-based device used for storing data.
The term “directory” as used herein is intended to be construed broadly so as to encompass, by way of example and without limitation, an organizational unit used to organize data files into a hierarchical structure.
Referring initially to
Methodology 100 begins at step 102 where a 3D image is obtained by an image processing server. In an exemplary embodiment, a 3D image is obtained from a 3D image database. The database may comprise patient medical records (e.g., CAT scans, MRIs) in a specific data format (e.g., Digital Imaging and Communications in Medicine (DICOM), ANALYZE) or the database may comprise a collection of geographic imaging data. At step 104, the 3D image is converted into two or more 2D images. For example, a 3D MRI may be converted into a collection of 2D slices. At step 106, the two or more 2D images are stored in one or more data repositories (e.g., 2D image database). In one embodiment, the data repository is maintained within a web server allowing for quick accessibility to the images via a web page.
The stored images are then presented upon a user request. In an exemplary embodiment, a user accesses the two or more stored 2D images via a client web browser. By doing so, a user is not required to pre-install imaging software onto his or her workstation terminal in order to view the stored images. A more detailed description of how the 2D images are managed and presented is disclosed below with reference to
Referring now to
The image processing server 202 then stores the 2D images at a 2D image database 208. In an exemplary embodiment, the 2D image database 208 is maintained by a web server 206. The web server 206 is preferably an IBM Webspher® or an IBM Apache HTTP® server.
In an exemplary embodiment, the 2D images are stored in a newly created directory on the 2D image database 208. Further, a uniform resource locator (URL) referring to the directory is communicated to the web server 206. The URL may be used as a link on a web page, giving a user direct access to the stored 2D images. In an illustrative embodiment, the 2D images are maintained in the 2D image database 208 as long as users continue to access the files. In order to track and maintain the 2D images, log information is recorded in a log table or database located at the web server 206. The log table may comprise the name of the expanded 3D image, location of the corresponding 2D images, the date and time of when the 3D image was expanded, and the date and time of when the 2D images were last accessed.
In one embodiment, the image processing server 202 may refer to the log table to prevent repeated conversion of 3D images which have already been expanded. Furthermore, the web server 206 may refer to the log table for periodic housekeeping purposes. In one example, 2D images that are not accessed within a pre-determined period of time (e.g., idle images) may be expunged for space efficiency. In an exemplary embodiment, the expunged 2D images are removed from the log table. This allows the image processing server 202 to recreate the expunged 2D images at a future date.
After a requested 3D image is converted and its 2D images are stored, a user 214, using a client web browser 210, may access the expanded 2D images stored in the 2D image database 208. In an exemplary embodiment, the web server 206 directs the client web browser 210 to a web page that contains browser scripting code in a language such as JavaScript. The scripting code instructs the client web browser 210 to read and load the 2D images into its browser cache 212. After the initial load, the user 214 can quickly scroll through the images successively with minimal processing delays. In an additional embodiment, the scripting code may incorporate a scrollbar or other mechanism to control how the successive images are displayed. Presentation of the images will be discussed below with reference to
Referring now to
Referring now to
In a preferred embodiment, additional information may be intertwined with the image data. For example, in the medical field, a medical report may be associated with the images of a patient, or vice versa. Each medical report may be mined for patient names and relationships and additional reports, such as previous diagnoses, drugs, dosages, and other images including X-ray images, may be cross-referenced and retrieved. Cross-referenced terms and reports may be stored in a database maintained by or coupled to the web server 206. In an illustrative embodiment, a cross-referencing term may be highlighted and linked to a corresponding document in the database. Further, medical information may be displayed in a pop-up window when the user points a mouse cursor on a highlighted term.
Referring now to
Referring now to
Referring now to
As shown, the techniques for presenting at least one 3D image to at least one user through a communications network may be implemented in accordance with a processor 710, a memory 712, I/O devices 714, and a network interface 716, coupled via a computer bus 718 or alternate connection arrangement.
It is to be appreciated that the term “processor” as used herein is intended to include any processing device, such as, for example, one that includes a CPU (central processing unit) and/or other processing circuitry. It is also to be understood that the term “processor” may refer to more than one processing device and that various elements associated with a processing device may be shared by other processing devices.
The term “memory “as used herein is intended to include memory associated with a processor or CPU, such as, for example, RAM, ROM, a fixed memory device (e.g., hard drive), a removable memory device (e.g., diskette), flash memory, etc.
In addition, the phrase “input/output devices” or “I/O devices” as used herein is intended to include, for example, one or more input devices (e.g., keyboard, mouse, scanner, etc.) for entering data to the processing unit, and/or one or more output devices (e.g., speaker, display, printer, etc.) for presenting results associated with the processing unit.
Still further, the phrase “network interface” as used herein is intended to include, for example, one or more transceivers to permit the computer system to communicate with another computer system via an appropriate communications protocol.
Software components including instructions or code for performing the methodologies described herein may be stored in one or more of the associated memory devices (e.g., ROM, fixed or removable memory) and, when ready to be utilized, loaded in part or in whole (e.g., into RAM) and executed by a CPU.
Although illustrative embodiments of the present invention have been described herein with reference to the accompanying drawings, it is to be understood that the invention is not limited to those precise embodiments, and that various other changes and modifications may be made by one skilled in the art without departing from the scope or spirit of the invention.