How could I correct for glare when processing image?

11 ビュー (過去 30 日間)
Ephraim Bryski
Ephraim Bryski 2018 年 12 月 9 日
コメント済み: Image Analyst 2018 年 12 月 12 日
I'm working on a code to track the postion of debris. The code converts the image first to gray scale and then to binary. It then takes the median value of the x-component of all pixels which are black. This gives the approximate x position of the debris (since the debris is darker than the water). However, when light reflects off the block, that portion does not get picked up, shifting the calculated position. Is there a way to adjust for this?
image.png

回答 (1 件)

Image Analyst
Image Analyst 2018 年 12 月 9 日
It's so much easier to prevent it in the first place than to correct it, which can't be done perfectly and without artifacts. Why don't you ust use crossed polarizers, or HDR photography?
  14 件のコメント
Ephraim Bryski
Ephraim Bryski 2018 年 12 月 12 日
The debris definitely does influence the background with shadows and reflections. The sediment on the bottom of the flume also moves around a bit changing the background. I don't think we would be able to physically change the background, as we need to finish the experiment very soon.
Image Analyst
Image Analyst 2018 年 12 月 12 日
Then you may just have to fallback onto manual tracing since you have so little time - not enough to develop a robust algorithm. See my two attached demos for imfreehand.
If you just want to count things, you could use impoint() or ginput() and count the number of times the user clicked on debris objects. Use imfreehand or it's newer replacement drawfreehand() if you need areas of objects.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeLighting, Transparency, and Shading についてさらに検索

製品


リリース

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by