MATLAB Answers

Calibrating the image background with changing foreground

5 views (last 30 days)
I am running a number of experiments analyzing the stress distribution of disks using image analysis. In order for me to visualize the stresses in the disk properly, the background image should be dark ( the background is the size covered by sheet polarizers). The disk and polarisers are separated by a glass sheet, this glass unfortunately has fixed stresses present, so when a picture is taken we get a background of varying light intensity (with light and dark) blotches. I want to create generic code that calibrates the background to create a new set of images that are darker so the stresses in the disk can be visualised better.


Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 3 Apr 2017
How do you know that the pattern difference is cause solely by the background intensity and not due to the polarization state which might be different in those two locations? If it were due solely to an overall illuminance then I think it would just make the disk brighter or darker, if it changes it at all. I would not think it would change or invert the pattern, but because it does I think it's more than a background illumination problem. I think the polarization is interacting with the disk differently in the two locations somehow.
And you certainly can't have the "intensity preserved" if you don't care whether the pattern in inverted. Of course if the pattern is inverted, the intensity will change. Is there a location in between those two locations where there is virtually no pattern at all?
To find out where your image is different than your background, you can just subtract the background. That will find the disk and the wrench. Then you can try to extract out the disk from the wrench using morphological methods.
Also, I'm not sure what your Step 5 is saying. "Make changes to original code if 5 is not satisfied." That is a recursive step!


Optical_Stress on 4 Apr 2017
You are correct in saying that the background intensity varies due to a spatial variation in the stresses in the glass (these stresses are frozen in stresses), the disk is also photoelastic.
the glass (background image) is causing the polarized light coming from the polarizer to have some spatially nonuniform rotation before it reaches the sample. The sample will also rotate the polarisation and finally we observe the overall rotation with the camera.
I've edited the mistake in my comments regarding the recursive step.
In light of this, I was also thinking about using the intensity I=Io*Sin^2(∆/2) to calculate the phase difference, but first by finding the magnitude Io using a Fourier transform
I'll be going through your image analysis tutorial today, Thanks.
Image Analyst
Image Analyst on 4 Apr 2017
So is it just the angle of the pattern you're interested in? Have you considered Hu's moments:
Optical_Stress on 4 Apr 2017
Well finding the angles would be a good start, i'll then be able to calibrate the picture and compare the forces with other software in the calibrated and original image.
I've never heard of Hu's moments, could you elaborate? From the video it seems that Hu's moments just identifies the objects of interest and substracts the background, which is essentially the same thing in your tutorial with the coins. Sorry, to clarify: How is the image of the pattern related to the angle of rotation of the polarized light?
It seems to me that the angle given from Hu's moments is related to the orientation of the object.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by