Intersection of two cells arrays of 256 by 256 by 3 matrices

1 visualización (últimos 30 días)
A. P. B.
A. P. B. el 20 de Jun. de 2017
Comentada: A. P. B. el 23 de Jun. de 2017
I have two cells A and B. A and B has RGB images A={img1,img2,img3} A={img4,img2,img6} How can I find the intersection between two cells???
  2 comentarios
KSSV
KSSV el 20 de Jun. de 2017
Does images have positions? I mean X and Y data?
A. P. B.
A. P. B. el 23 de Jun. de 2017
Yes for example img1=256 by 256 by 3

Iniciar sesión para comentar.

Respuestas (1)

Stephen Jue
Stephen Jue el 22 de Jun. de 2017
I do not know of a way to directly find the intersection between two cells, but you can recast your two cells A and B as matrices and use the "intersect" function, like so:
A = [img1(:), img2(:), img3(:)]';
B = [img4(:), img2(:), img6(:)]';
[~, indicesA, indicesB] = intersect(A, B, 'rows');
This flattens each image into a single row of a matrix, then uses "intersect" with the "rows" option to find the intersection of A and B by row. The variables "indicesA" and "indicesB" will contain the corresponding indices of A and B that are part of the intersection.

Categorías

Más información sobre Read, Write, and Modify Image en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by