Tracking Meniscus Profiles in ImageJ: Tips and Plugins for Automation

  • Thread starter Thread starter member 428835
  • Start date Start date
  • Tags Tags
    Automated
AI Thread Summary
To track the meniscus profile in ImageJ, enhancing edges and using a Hough transform to locate the ellipse is recommended. Converting images to grayscale BMP format without compression allows for pixel-by-pixel analysis. The water surface can be modeled mathematically, facilitating the determination of key parameters through iterative calculations. While ImageJ can handle the necessary calculations, significant processing time may be required, suggesting the use of FPGAs for efficiency in practical applications. Overall, the method is accurate and can yield precise results with the right setup.
member 428835
Hi PF!

I have a series of photographs taken of water being drained from a cup. I would like to automatically track the meniscus profile (not a particle) as it changes from photograph to photograph in ImageJ. Does anyone have a recommendation of where to start reading, or any plugins to use, so that I may do this?

Thanks a ton!
 
Technology news on Phys.org
You haven't attached a photograph, but I guess that you want to track something like an ellipse ( surface seen skew from above ).

Enhance edges in the image, then use a Hough-transform to locate the ellipse. Other geometric shapes may be found in the same way. The method is very accurate and robust.
 
Hesch said:
You haven't attached a photograph
Oops, I've now attached two, separated by a 1-second interval.

Hesch said:
Enhance edges in the image, then use a Hough-transform to locate the ellipse.
Are you referring to this plug-in: https://imagej.nih.gov/ij/plugins/ght/index.html
 

Attachments

  • CFE_2_ICF_4_5_Koichi_Wakata_HD_113.jpg
    CFE_2_ICF_4_5_Koichi_Wakata_HD_113.jpg
    49 KB · Views: 521
  • CFE_2_ICF_4_5_Koichi_Wakata_HD_114.jpg
    CFE_2_ICF_4_5_Koichi_Wakata_HD_114.jpg
    49.2 KB · Views: 486
joshmccraney said:
Are you referring to this plug-in:
No, I'm referring to a course ( pattern recognition ) where I participated years ago, and a lot of experience afterwards.

First of all, you must convert this ".jpg" file into a ".bmp" file, gray scale with no compression. Now you can directly read color values pixel by pixel in the file.

By some spatial method you can enhance vertical and horizontal lines separately. By a Hough transform, you can determine two vertical ( you know where about ) lines in the image ( edges of the cup ). So now you can determine the vertical center axis in the cup.

The surface of the water in the cup ( middle section ) may then be expressed something like: y = ax2 + b , ( a<0 ). From the horizontal edge ( water surface ), you can determine sets of (x,y) placed on the surface edge, so knowing an edge pixel, you have two unknown: "a" , "b".

Now you "guess" some different values as for "a", until a "sharp" value as for "b" is found by means of a Hough transform. I think that this "b" is the value you want to determine. The Hough transform is a statistical method to find such a value, and it can be determined within at most 0.1 pixel accuracy.

If you include a vertical scale in the picture ( ml ), you may automatically read out the volume in ml.

The calculation steps are quite simple, but the number of calculations - say 5 megapixels - are huge. Therefore FPGA's are often used to support a processor in practical applications. But stick to assembler programming :wink:. Then I think you can calculate an image within, say 10 sec. ( not real time ).
 
Last edited:
Is this a course you are referring to? Can you do everything you described above in imageJ or are there other programs necessary?
 
joshmccraney said:
Is this a course you are referring to?
It was the firm "Learning Tree" that arranged a course in Stockholm ( Sweeden ) for one week. After this I got 2 months to experiment with my new knowledge and afterwards I made about 3 projects, measuring different industrial productions "on the fly". In one project the measurements/calculations were done by 28 cameras, 7 PC's and about 35 FPGA's.

I'm not familiar with imageJ, but have instead developed software myself, specifically for the application. As earlier said it's not complicated as each calulation step is simple. It's these:

for i1 := 1 to 1024 do
for i2 := 1 to 820 do
for i3 := 1 to 9 do
. . . . .

- loops that "eat" execution time. Hence the assembly coding and FPGA's. But if you can spend 10 sec. per photograph, you will just need a PC.
 
Dear Peeps I have posted a few questions about programing on this sectio of the PF forum. I want to ask you veterans how you folks learn program in assembly and about computer architecture for the x86 family. In addition to finish learning C, I am also reading the book From bits to Gates to C and Beyond. In the book, it uses the mini LC3 assembly language. I also have books on assembly programming and computer architecture. The few famous ones i have are Computer Organization and...
I have a quick questions. I am going through a book on C programming on my own. Afterwards, I plan to go through something call data structures and algorithms on my own also in C. I also need to learn C++, Matlab and for personal interest Haskell. For the two topic of data structures and algorithms, I understand there are standard ones across all programming languages. After learning it through C, what would be the biggest issue when trying to implement the same data...
Back
Top