I'm seeking help on extracting deposit profiles from images and using ANFIS models to plot corresponding profiles based on input parameters

I'm working on a project to analyze images of deposits on a metal . I have 10 sample images and tried taken measurements of the deposit's width and height for each sample. I've trained two ANFIS models.Input for model is current & voltage and outputs are deposit's width and another model is deposit's height.
Now, I want to plot a profile that resembles the deposits in my sample images. However, I'm unsure about how to extract the profile of the deposit from the image and relate it to my ANFIS model. Given input to the model I need to get respective deposit profile plot in GUI. Can anyone help me on this ?
I have attached the sample image.I want that center part (deposits) alone to be plot in a graph

Risposte (1)

I don't think 10 images is enough to train a neural network. Besides, this looks easy enough to use traditional image processing methods on, especially if you have a "perfect" sample that you can align your test sample with. Try imabsdiff.

3 Commenti

Thank you for your response.I'm trying to extract a profile from an image and I've attempted using edge detection and manually selecting 20 points with ginput to plot the graph. Could someone please let me know if this is a valid approach or if there's a better way to achieve this? I attached the code
Now, I'm wondering if someone could guide me on how to link the predicted width and height values to the extracted profile, so that the profile changes accordingly. I've uploaded an image (shape_prediction) that illustrates what I'm trying to achieve.could I request some guidance on how to approach this problem?
To get the height, I'd threshold it and use find to find the top and bottom row. Something like (untested)
mask = grayImage > someThreshold.
[rows, collumns] = find(mask);
topRow = min(rows)
bottomRow = max(rows)
Your trial code didn't seem to work with your sample 1 image. Can you attach some more that it works with?
I don't think you need to use edge detection. I think you can get the weld by thresholding either the gray scale image or the image processed by stdfilt. Do you just need the overall max width and height, or do you need the actual shape of the weld blob?
Thanks,I want the maximum width,height and also the shape.

Accedi per commentare.

Richiesto:

il 23 Mar 2025

Commentato:

il 30 Mar 2025

Community Treasure Hunt

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

Start Hunting!

Translated by