Interactive images

atlanticcan wrote on Wednesday, July 07, 2010:

Hi,

I am looking into alternative input methods in forms. Radio buttons, checkboxes and textboexes work well for some forms, but in others they become cluttered and unintuitive.

Lets say a physiotherapist wants to enter information on which joints/muscles are injured. Would it be possible for him to create a form which allows him to click on specific joints on an image? The amage would be of a human outline with circles at each joint, which could be clicked and colored in. Storing the data on the joints would be simple - either a list of booleans or integers representing severity. So if the patient had injured his right ankle and left shoulder the physiotherapist would just click on those two joints, which would then be highlighted.

Ideally he would then be able to enter information about the injury to that joint into a joint-speciifc textbox (ie: “Injured L shoulder playing football, restricted range of movement, can only raise arm to 80 degrees”). The reason I would rather have the textbox joint-specific rather than associated with the whole encounter is so he could later see all the information about that joint injury across multiple encounters. Also, if each of the joints has a varchar(255) field associated with it, there would be dozens of varchar(255) fields. Is space allocated for these fields even if they are null?

Another useful feature would be to make the form interactive - the physiotherapist clicks on the neck and a zoomed in, side-on picture appears, allowing him to select the affected vertebrae.

Is this possible? If not, does anyone have any suggestions on how it could be done? I believe that the ability to interact with graphics would make the system more user-friendly and open the door for a lot of new applications.

Thanks,
Marc

hbueller wrote on Friday, July 09, 2010:

Marc,

I agree with you, this would be great functionality, also in Dermatology.  I have no experience in programming, but it is a great idea.

Howard

sg0210 wrote on Friday, July 09, 2010:

We have done something similar in our previous projects. I need to study but I believe it is something possible.

aperezcrespo wrote on Friday, July 09, 2010:

Hi guys,

   Take a look at a form we started.
    http://www.netmedicpr.com:1626/netmedicemr
    Login as doctor:pass  setup/select a patient and encounter then in forms select Body Image.  Click anywhere and in dx box type either number or text.

Is this something along the line of what your looking for?

Thanks

atlanticcan wrote on Friday, July 09, 2010:

aperezcrespo,

That’s close to what I was envisioning and has many uses, but I need something a bit different. I need to place discrete points (at the joints) on the picture that can be selected/deselected. The user would also be able to select more than one. They would essentially behave like checkboxes.

How did you define certain areas as invalid?

Thanks for your replies,
Marc

sunsetsystems wrote on Friday, July 09, 2010:

I think many docs want images that they can draw on, freehand-style.  This could probably share whatever technology is chosen to support signature capture as discussed in: https://sourceforge.net/projects/openemr/forums/forum/202506/topic/3743479

Rod
www.sunsetsystems.com

atlanticcan wrote on Friday, July 09, 2010:

Also, for dermatology it would be nice to select areas - sort of like ‘painting’ an area to show it is affected by a rash.

So, we have four separate selection modes (feel free to suggest more)

1. One specific point
2. Multiple points
3. ‘Checkboxes’. Different sets of ‘checkboxes’ could be created to meet different needs - ex: joints, teeth or anything that has a discrete set of affected points. It may be useful to associate each selected point with an integer indicating severity. A field would have to appear near the selected point or on to the side of the image to allow the user to specify this.
4. ‘Painting’ areas. Ideally one would be able to ‘paint’ multiple areas and associate each one with a different condition. Being able to select from a palette of colors would also be useful, as well as associating a color with a condition. i.e the doctor colors the inside of the left thigh blue and associates blue with eczema, then colors parts of the foot red, which he associates with Athlete’s foot

One feature that could be useful is a textbox associated with each point/area, allowing the user to provide additional information about the issue. How this would be handled for multiple selection is an important GUI consideration.

Also, user feedback is important. Having an ‘invalid point’ pop-up appear is not ideal. It would be better to have the cursor briefly change (ex: to a pointer with a red X nearby) and/or to have an area onscreen which would alert the user (i.e. the user clicks in an invalid area and some text briefly flashes at the top of the page saying “invalid point”

Feel free to add to/comment on anything I’ve said,
Marc

atlanticcan wrote on Friday, July 09, 2010:

One other option I thought of is a cross between ‘checkboxes’ and ‘paintable areas’. This is similar to mode #3, except it deals with areas rather than points. Regions could be predefined and selectable. This would be useful for selecting muscles; so a user could select the left bicep and left quadricep as injured.

aperezcrespo wrote on Saturday, July 10, 2010:

Unfortunately the person who was developing this for us decided for a change in profession.  This is as far as he got.  Left no documentation, how to, or instructions.    I know he used a web-site to set up the click-able limits of the image (No I don’t know the name of the web-site).

We are willing to submit it to the project as a starting point development of other forms for the benefit of the group, Just let me know who to email the files to.

Thanks

bradymiller wrote on Saturday, July 10, 2010:

hey,
If you can, place it in the sourceforge tracker Code Review (otherwise just email to brady.g.miller@gmail.com). Will at least put on my github repository (so basically open to others) and if code is “OpenEMR compliant”, then will put in the codebase.
-brady

aperezcrespo wrote on Saturday, August 21, 2010:

Hi all,

   The body form has been placed here http://github.com/bradymiller/openemr/commit/02df5a340fd90a111ae5440a8660a08779900c68  (Thanks brady).
It has a few sql items that need to be corrected to comply with OEMR standards.  I believe it can be a good starting point for development of additional forms of this nature.
Again it is incomplete, but here are a few items we feel would make it more useful.

1) Once a point is selected and documented, the user should be able to click on that same point and what ever documentation is associated with it should be viewable or highlighted.
2) Some sort of report needs to be generated.
3) Finally it should be easy enough to modify (ie Replacing the image and selecting the unclickable boundaries) so that a novice can modify it.

Well we hope this is of use to the community and can help improve an already great project.

Thanks all

bradymiller wrote on Saturday, August 21, 2010:

hey,

That above commit link will become outdated(gets changed whenever i update that branch to most recent code). On my github repos, it is now kept in the branch bodyform_1, so the best link for aperezcrespo’s code is here (this will never change):
http://github.com/bradymiller/openemr/commits/bodyform_1

-brady