Interactive 3-dimensional object-oriented database information storage/retrieval system

An interactive 3-dimensional object-oriented database patient specific information storage system includes an input device, a database containing 3-dimensional meshes of objects each with an object identifier and a symptom list with each symptom having associated ones of the object identifiers of the 3-dimensional meshes of objects. An interface connected to interact with the database and the input device. The interface including a symptom input form for entering symptoms from the symptom list. The interface is designed to select 3-dimensional meshes of objects having ones of object identifiers associated with the entered symptoms and display the selected 3-dimensional meshes of objects on a symptom template. A record of the entered symptoms and the object identifiers of the associated ones of the 3-dimensional meshes of objects is created and stored.

FIELD OF THE INVENTION

This invention relates to information storage/retrieval systems.

More particularly, the present invention relates to information storage/retrieval systems employing 3-dimensional object-oriented databases.

BACKGROUND OF THE INVENTION

The storage of information can be one of the most complex problems or challenges in industry today. In particular, the information must be stored so that it can be easily and efficiently retrieved. Moreover, standardization of physiological measurements are problematic. Generally, this requires the use of key words that can then be searched to find the stored information. In certain or specific areas, such as the medical profession, storage will be according to patients but the information stored can be sketchy, difficult to express, and may it be difficult to reconstruct the specific situation. Complete descriptions of the specific situation and any continuing procedures may be extremely lengthy so that large amounts of storage are required if the description is to be complete and sufficient for later review. Thus, a great amount of time can be expended in describing the situation and the procedures used and each time the stored information is retrieved and reviewed.

Often, information is stored such that only one skilled in the art can understand or decipher the information. In specific instances or applications, it may be desirable for a third party or affected party to view the stored information. For example, doctors, chiropractors or other specialists, often write notes either hard copy or electronic that are very cryptic to a layperson such as a typical patient. The physician must then explain the meaning of the information, often using models or pictures in books. This process can be time consuming and dissatisfying to both parties.

It would be very convenient if descriptions of information to be stored could be simplified, quantified, and standardized to reduce the input time and effort required for storage. It is also desirable to reduce the time and effort required in retrieving and reviewing the stored information and providing information in a form understandable by third parties with minimal assistance from the individual storing the data.

Accordingly, it is an object of the present invention to provide a new and improved interactive 3-dimensional object-oriented database information storage/retrieval system and method of storage.

Another object of the invention is to provide a new and improved interactive 3-dimensional object database information storage/retrieval system that greatly simplifies storage and retrieval of information.

A further object of the present invention is to provide a new and improved interactive 3-dimensional object database information storage/retrieval system that substantially reduces time and effort for storage and retrieval of information.

SUMMARY OF THE INVENTION

Briefly, to achieve the desired objects of the instant invention in accordance with a preferred embodiment thereof, provided is an interactive 3-dimensional object-oriented database information storage system including an input device, and a database containing 3-dimensional meshes of objects each with an object identifier and stored input selections, each selection having associated object identifiers. An interface is connected to interact with the database and the input device and includes a data input display for receiving input selections. The interface is designed to select 3-dimensional meshes of objects having object identifiers associated with the stored input selections. A record of the input selection and the associated object identifiers is created and stored.

In one embodiment, an interactive 3-dimensional object-oriented database patient information storage system includes an input device, a database containing 3-dimensional meshes of objects each with an object identifier and a symptom list with each symptom having associated ones of the object identifiers of the 3-dimensional meshes of objects. An interface is connected to interact with the database and the input device. The interface including a symptom input form for entering symptoms from the symptom list. The interface is designed to select 3-dimensional meshes of objects having ones of object identifiers associated with the entered symptoms and display the selected 3-dimensional meshes of objects on a symptom template. A record of the entered symptoms and the object identifiers of the associated ones of the 3-dimensional meshes of objects is created and stored.

DETAILED DESCRIPTION OF THE DRAWINGS

Turning now to the drawings in which like reference characters indicate corresponding elements throughout the several views, attention is first directed toFIG. 1, which illustrates a simplified block diagram of an information storage/retrieval system generally designated10. System10includes an input device12which can include standard input devices such as a keyboard and mouse or touch screen, but can also include more specialized devices such as medical devices which measure various bodily functions, orientations, etc. The data is received by an interface14which interacts with a database15containing 3-dimensional meshes of objects with associated identifiers. The 3-dimensional object meshes are stored code of 3-dimensional meshes representing each of the various objects that can be retrieved, displayed, rotated, and otherwise manipulated to illustrate a specific situation or problem. The objects are pieces or parts of any complex assembly or system, such as a human body. Furthermore, since these 3-dimensional object meshes are code, they can be processed or acted upon by algorithms, artificial intelligence algorithms, statistical algorithms, and other cross-referenced data. A 3-dimensional mesh allows representations of 3-dimensional objects to be shown on a 2-dimensional media such as a screen or print-out. A 3-dimensional mesh is constructed of a plurality of vertices. Every vertex is composed of three coordinates x, y, and z. A vertex is defined as three numbers or floating point numbers (meaning decimal points) x, y, and z. A 3-dimensional mesh consists of a number of nth vertices. Vertices are bound together to form faces or polygons which compose the 3-dimensional mesh.

The 3-dimensional object meshes are stored meshes representing different objects of a complex assembly of parts that can be retrieved, displayed, rotated, and otherwise manipulated to illustrate a specific situation or problem. Interface14selects 3-dimensional meshes of the objects from database15and associates them with the input information or other cross-referenced information. Identifiers for the objects associated with the information are then stored in an associated memory which may be database15or other databases in an independent memory device. The stored information can then be displayed or used in the aforementioned algorithms, with the 3-dimensional object meshes from database15using the associated identifiers on any desirable media such as a display17, hard copy print out, or transmitted via a network such as the World Wide Web to remote display devices.

In a general example of a process of storing and retrieving information according to the present invention, attention is now directed toFIG. 2. A record20can be developed for various applications for complex systems that have been examined, treated/repaired or otherwise manipulated in a manner for which an easily reviewable and updatable history would be desirable. Record20includes a data input display21and a stored record22. Input device12is employed to retrieve data input display21from database15, which display may include one or more forms and/or templates to be completed and/or manipulated (as will be explained in more detail presently). Requested information is input into data input display21using input device12. The entered data is then associated by interface14with objects and 3-dimensional meshes of the objects stored in database15. Identifiers designate each object and 3-dimensional mesh of the object in database15. The collected data with associated object identifiers forms a record that can then be stored as stored record22. Data in stored record22can then be displayed in a desired media by retrieving the associated 3-dimensional object mesh of a selected object from database15using the identifiers and embedding the 3-dimensional object mesh in the collected data.

With additional reference toFIGS. 3 and 4, an example of the interaction between record20and database15is illustrated. Database15is divided into a collection of tables that include specific items, each item having an identifier. Specifically, table24includes objects, each associated with an object identifier25, an object name27, an object file name28and parent group identifier29. Object file name28permits retrieval of a 3-dimensional mesh file for each specific 3-dimensional object mesh. The collection of tables includes, for example, a symptom table30listing a plurality of symptom names32each with a corresponding symptom identifier33. A proprietary symptom cross-reference table35cross-references each object identifier25with one or more symptom identifiers33, each cross-reference having a cross-reference identifier37. In this manner symptom data input in data input display21is associated with various objects most likely associated with a problem as indicated by the symptoms.

Referring additionally toFIG. 4, another example of the interaction between record20and database15is illustrated. In this example, object table24is cross-referenced with a group table40, which includes group names42each having an associated group identifier44. Each group name also includes a parent identifier45. If the specific group name is a sub-element or subset of another group name, the parent identifier45of that specific group name will be the group identifier of the parent group (e.g. the group name ‘bones’ has group identifier4, the group name ‘spine’ has group identifier13and parent group identifier4, indicating it is a subset of group name ‘bones’).

In table24, each object name27has a parent group identifier29which allows cross-referencing with table40. Parent group identifier29of each object27of table24allows association of that object with a group name42of table40by matching identifier29with group identifier44. In this manner, 3-dimensional meshes of individual objects can be shown in groups, as defined by table40. It will be understood by those skilled in the art that there can be any number of objects, and the objects can be divided or categorized into any number of sub-groups and groups to form systems or other logical organization of the objects. Also, the 3-dimensional meshes of the objects can be displayed individually or in any of the sub-groups, groups, etc. in which they are included. The various tables are used only by interface14for cross-reference purposes and are not displayed.

Turning now toFIG. 5, a flow/block diagram is illustrated showing the operation of system10as used for a specific application. The diagram illustrates the use of a patient record program50as a patient record is developed and displayed by system10. The specific application in this example is for use by a health care provider such as a doctor, chiropractor, and the like. Program50coordinates an interface54and a database55to provide a process flow as will be described presently. In this specific embodiment, database55includes a plurality of 3-dimensional object meshes that represent standardized anatomically correct body parts. As a specific example, one or more SQL databases (Microsoft Access Database) can be used. Individual patient records52are developed by employing a data input display51which display may include one or more forms and/or templates to be completed, those forms and/or templates being drawn from database55. Information requested by the forms and/or templates is input into the forms and/or templates of data input display51using various input devices. Data input display51receives patient specific information designating and creating patient record52. Data in patient record52as collected in the forms and/or templates of data input display51are stored as patient files in a database, which may be database55or one or more separate databases57.

Data58stored in patient record52is collected by the forms and/or templates of data input display51and can include substantially any data, but in this example include case specific information60, visit specific information62, and general patient information63. An individual patient may have more than one illness or injury, resulting in more than one case. Each visit by a patient may pertain to a previously recorded case or to a partially or completely new case. Prior cases, including symptoms65, a history66of the specific symptoms, and objects palpated68, are stored in case specific information60, and any new cases or information pertaining to previously stored cases will be developed and stored through use of the displayed forms and/or templates of data input display51. Case specific information60can include other data as desired, such as postural check, ortho/neuro codes, range of motion and the like. Also, information specific to each visit is developed and stored as visit specific information62, which also includes any object palpated70during that specific visit. As with case specific information60, visit specific information62can include additional data groups such as object palpation, ICD9 codes, CPT codes, selected cases, S.O.A.P. notes, visit information such as description, doctor, dates, and the like. Further, patient history63can include basic information on demographics, residential address, billing information, insurance information and the like.

Symptoms65of cases60are input into patient record52, for example, by a form72of data input display51. With additional reference toFIG. 6, form72is illustrated as a check list of a plurality of possible symptoms. During or after a visit, a health care provider enters the symptom or symptoms of a patient in form72. Interface54cross-references74database55using identifiers in a manner as described previously with respect toFIGS. 3 and 4, to associate objects and groups or systems to the selected symptoms using a symptom query. As an example, proprietary SQL queries can be employed to find any cross-referenced 3-dimensional object meshes of objects tied to the symptom. The 3-dimensional meshes of the object, objects or groups of objects associated with the symptoms are displayed on a template76ofFIG. 7. The health care provider can then adjust the objects desired, expand on those shown or otherwise manipulate the object meshes as desired for recording in the patient record. Manipulation can include addition and subtraction of objects meshes, rotation of the object meshes on any axes of a 3-dimensional system, scaling of object meshes and the like. The displayed objects meshes and/or groups and systems of meshes are a starting point for the health care provider, saving time and simplifying the recording process. These object meshes can also be employed as educational aids for the patient or other entities as desired.

The 3-dimensional object meshes stored in database55are each oriented to an absolute origin (e.g., absolute 0,0,0 on x, y, and z axes). In this manner, when multiple 3-dimensional object meshes are displayed as a group or system, they are oriented to one another against an absolute origin or reference, establishing a normal. When 3-dimensional object meshes are displayed for specific symptoms in template76, they reflect a standard, and do not specifically show the patient's body parts. The 3-dimensional object meshes can be manipulated to more closely reflect the patient's true body parts. Referring back toFIG. 5, interface54permits each 3-dimensional object meshes to be altered, reflecting the subluxation78of that object in a specific patient. Translation data for that object is stored in the patient record to reflect the orientation of the object from normal. Input devices can include medical devices80which measure subluxation or any other condition which is desirable to reflect in the records. These readings can be imparted to the 3-dimensional object meshes and stored as data for modifying 3-dimensional object meshes or groups of 3-dimensional object meshes for each patient. Additionally, media81can be tied to the 3-dimensional object meshes, stored in the same or separate databases and identifiers for the attached media is entered in the client record. When the 3-dimensional object mesh or meshes are accessed for use in a template, the media file is also accessed and displayed with the object mesh or meshes. For example, a chiropractor may attach a video clip of a therapy to a mesh of an effected group such as the spine. The video clip can be used to educate the patient as to the therapy they have or will undergo. Other media, X-rays, sonograms, pictures, audio, etc. can be employed.

During a subsequent or current visit, patient record program50, through interface54, cross-references the current information with information stored relative to prior cases82and visits84for the specific patient. For example, symptoms86indicated during the current visit are automatically cross-referenced to symptoms recorded in prior case so that the health care provider can quickly and easily determine if there are any changes or if the same symptom or symptoms prevail. If new symptoms or a different case is occurring the new symptoms will be stored as a new case in cases60. Also, any object palpations88that were performed in previous cases will appear as templates, shown inFIG. 8. New object palpations deemed necessary by the current symptoms will be performed and added to the stored object palpations88in cases82and to object palpations90in visits84. It should be understood that 3-dimensional object meshes of the objects (e.g., body areas/parts) palpated are stored using identifiers in a manner as described previously with respect toFIGS. 3 and 4. The entry of new information occurs through data input display51. Displaying stored records or comparing new records to stored records involves interface54cross-referencing cases82and visits84. In other words, the cross-referenced data is linked to a case or visit and further linked to a symptom or object palpation. The symptom or object palpation is then linked to the associated 3-dimensional object mesh.

The forms and templates of data input display51, whether those displaying newly entered data or those showing previously entered data, are preferably dynamic interactive forms/templates having embedded windows which contain the associated 3-dimensional object meshes or groups of object meshes. The dynamic aspect allows the object meshes to be manipulated as previously described, directly on the form/template and printed, saved, displayed, etc. as desired. The dynamic feature can be accomplished by generating forms/templates in HTML for standardization issues. This will provide the ability to print and save these records and also will have limited functionality within the medical forms/templates, such as rotation, pan, zoom, groups, selection, move, and rotate. By using MSHTML technologies, the patient record can be edited before saving or printing. MSHTML has a sub-system interface called “Rendering Behavior”, allowing developers to render their own graphics within an HTML element. MSHTML is a Microsoft COM technology used to display and edit HTML in the preferred embodiment.

Thus an interactive 3-dimensional object-oriented database information storage/retrieval system and method of storage has been disclosed. The interactive 3-dimensional object-oriented database information storage/retrieval system greatly simplifies storage and retrieval of information, substantially reduces time and effort for storage and retrieval of information, and allows a variety of algorithmic operations to be preformed on the databased information, including the 3-dimensional object meshes.