MATLAB Answers


Where can I find “Joint class histogram” implementation or algorithm?

Asked by Mohammad Al Nagdawi on 4 Dec 2016
Latest activity Commented on by Walter Roberson
on 8 Dec 2016
Image registration and image retrieval depend on image similarity measure to find mutual information between 2 images. Using histogram, joint histogram, and joint class histogram we can find the degree of similarity between those images. Hopefully, I understand and deploy both first techniques. Here, I found joint histogram algorithm and deploy using Matlab .
However, I search for many days to find good paper, book or article regarding joint class histogram but their authors only mention this technique without enough detail. I think this technique still infant and doesn't have enough study yet.
I think joint class histogram algorithm will the best answer for my question.


That is a nice answer about how to do the joint histogram in MATLAB that you linked to.
I want to know about Joint class, not joint histogram only.

Sign in to comment.

1 Answer

Answer by Walter Roberson
on 4 Dec 2016
 Accepted Answer

Proceed exactly the same way as for the joint histogram, but the inputs should be the class numbers assigned to each pixel rather than the intensities assigned to each pixel.


Show 1 older comment
So build pixel-by-pixel matrices of the pixel classes, and then run through exactly the same code as for joint histogram. The joint histogram algorithm does not care whether you are feeding it class numbers or intensities.
I tried your answer and it works .. thank you.
I face a problem when I run k-mean clustering algorithm the class output variety to the same class. For example, the k-means class 'circle' with 1 value but it classify 'circle' as 2 value for the same image at the next time (the class change randomly).
%%image segmentation
idx_fix = kmeans(double(fix_img(:)),4);
idx_float = kmeans(double(float_img(:)),4);
I don't know how to can make a link between idx_fix and idx_float same segmentations (classes) they change randomly.
Should I try another clustering technique in this case?
k-means does not even try to make the cluster numbers consistent from run to run. k-means uses random initialization for cluster centers unless you pass in specific initial cluster centers.
It is up to your code to figure out which cluster number corresponds to which shape.

Sign in to comment.