cornerstonejs / cornerstoneTools

A framework for tools built on top of Cornerstone.
https://tools.cornerstonejs.org/
MIT License
579 stars 455 forks source link

Calibration Tool #264

Open dannyrb opened 7 years ago

dannyrb commented 7 years ago

See this related issue in cornerstoneWADOImageLoader: https://github.com/chafey/cornerstoneWADOImageLoader/issues/131

...the xray tech to place a physical object of a known size (e.g. 10mm diameter circle) at the correct depth during the xray and then provide a tool to calculate the row/column pixel spacing for the image by measuring that object... Manual calibrations should be handled separately from the metadata provider, appropriate infrastructure put in place to manage them in cornerstoneTools and updates to the tools themselves...

I could see a "Calibration Tool" as being useful. Not sure where it would fall on the roadmap, but creating an enhancement request here. I know I'll need it for my personal project before too long. I'll mark it "up for grabs", but I'll claim it if some time passes and no one else has dug in.

Feel free to discuss.

Zaid-Safadi commented 6 years ago

Hi @dannyrb, do you have any thoughts/updates on this?

Could this be done by capturing an event from the "length" tool "e.g. created" then display a dialog for the user to input the calibration value or should it be its own separate tool?

On the other hand, I am thinking this might be easier with the new CS tools version but I kind of need it sooner than later.

@jdnarvaez , I see you seem to have implemented similar thing here #210, any advice is appreciated!

dannyrb commented 6 years ago

@Zaid-Safadi, I actually have a Calibration Tool in an upcoming sprint for work. If I gain any insights, I'll be sure to share them with you; although, my implementation will be in the vNext branch.

I'd recommend creating a new tool, but yes, the mechanics would be very similar to ArrowAnnotate or Length.

Zaid-Safadi commented 6 years ago

That’s exciting @dannyrb! Do you have an idea of when the vNext will be ready with calibration? I know it’s close and the new design is fantastic that I’d rather implement it there.

jdnarvaez commented 6 years ago

When we did the US calibration and macro project for a different application, we allowed the user to draw a line in one or more directions then define the real world value within an input box and we stored that in a presentation state for presentation pixel spacing.

Zaid-Safadi commented 5 years ago

That's helpful @jdnarvaez, thanks for sharing. Presentation state makes sense! so this is how you can actually set different calibrations for different frames/regions?

philipp83990 commented 3 years ago

@Zaid-Safadi, I actually have a Calibration Tool in an upcoming sprint for work. If I gain any insights, I'll be sure to share them with you; although, my implementation will be in the vNext branch.

I'd recommend creating a new tool, but yes, the mechanics would be very similar to ArrowAnnotate or Length.

Hey @dannyrb, has there been made any progress? Best!