Masking of RGB Image?

2 次查看(过去 30 天)
Imran Riaz
Imran Riaz 2022-7-19
I have RGB image of finger knuckles and now want to remove the background, I used "createmask" function in which image is 1st converted from rgb2hsv and then I adjust the Min and Max values of channel3. But these fixed values are not suitable for whole dataset. How I can automate it if I use this code? OR Can I do binary masking of given RGB image?
Here is the code and image result also which is noisy one.
  2 个评论
Image Analyst
Image Analyst 2022-7-19
What do you consider "background"? The white sheet of paper in the upper left behind the fingers?
Imran Riaz
Imran Riaz 2022-7-19
Yes . the white sheet. I need to remove it.

请先登录,再进行评论。

回答(1 个)

Pratyush Swain
Pratyush Swain 2023-9-14
Hello Imran,
I understand that you are looking to automate the process of removing the background from RGB images of finger knuckles without relying on fixed threshold values.
To achieve this, I recommend considering the use of adaptive thresholding techniques. Adaptive thresholding allows for dynamic adjustment of the threshold based on the local characteristics of the image.
You can utilize the "imbinarize" function in MATLAB, specifying the "adaptive" parameter, to perform adaptive thresholding on a grayscale image. Here's an example of how to use it:
BW = imbinarize(Image, "adaptive", Name=Value);
You can further control the adaptive thresholding process by specifying additional "Name-Value" arguments, which allow you to adjust various aspects of the adaptive thresholding algorithm.
For more detailed information and examples, you can refer to the documentation on the "imbinarize" function:https://www.mathworks.com/help/images/ref/imbinarize.html
Hope this helps.

Community Treasure Hunt

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

Start Hunting!

Translated by