how to obtain image boundary of an image?

how to obtain image boundary of an image?

2 comentarios

Youssef  Khmou
Youssef Khmou el 6 de Feb. de 2013
Hi Cesar, you have to specify your problem, give an example with per example "circuit.tif" so everyone can work on it instead of image taken from web .
Cesar
Cesar el 6 de Feb. de 2013
By example consider an image with 4 birds (bird.tif), and I want to add of of those birds to the same image which now has 5 birds. Let me know if that is clear.

Iniciar sesión para comentar.

 Respuesta aceptada

Image Analyst
Image Analyst el 5 de Feb. de 2013

0 votos

You haven't explained this well enough to answer. The answer could be to use bwperim(), or bwboundaries(), or just to take the first and last row and first and last column. Are you going to explain further what you want?

26 comentarios

Cesar
Cesar el 5 de Feb. de 2013
I want to perform a boundary operation by which to obtain image boundary on a gray image.
OK, bwboundaries() and bwperim() only work on binary images. So, just do something like this:
leftBoundary = yourImage(:, 1);
rightBoundary = yourImage(:, end);
topBoundary = yourImage(1, :);
bottomBoundary = yourImage(end, :);
Cesar
Cesar el 5 de Feb. de 2013
Thanks. The functions do create and display all 4 boundaries of the image. Can that also be done using only 1 function?
Yes, just string them together:
oneBoundary = [yourImage(:,1), yourImage(:,end), yourImage(1,:), yourImage(end,1)];
Cesar
Cesar el 5 de Feb. de 2013
I got an error using the string: Error using horzcat CAT arguments dimensions are not consistent.
Image Analyst
Image Analyst el 5 de Feb. de 2013
Editada: Image Analyst el 5 de Feb. de 2013
You need to transpose two of them, because two are row vectors and two are column vectors. Use ' to transpose.
oneBoundary = [yourImage(:,1)', yourImage(:,end)', yourImage(1,:), yourImage(end,1)];
Cesar
Cesar el 5 de Feb. de 2013
Thanks. Makes sense.
Cesar
Cesar el 5 de Feb. de 2013
Another question. Imagine an image with 4 birds (bird.tif by example), how to add additional bird in the image?
Get a mask for the bird, then do
birds5(binaryMask) = singleBirdImage(binaryMask);
to transfer the bird from the singleBirdImage to the birds5 image.
Cesar
Cesar el 5 de Feb. de 2013
img = imread('bird.tif'); IMG = imshow(img); IMG1 = imellipse(gca,[55 10 120 120]); BW = createMask(IMG1,IMG); Will that create the mask for the bird?
Image Analyst
Image Analyst el 5 de Feb. de 2013
Why don't you upload your images of the 4 birds? Where does your single bird come from? A separate image, or is it just one of the 4 that you'd like to copy somewhere else in the image? If you upload your images, then we can cut to the chase and not go back and forth lots of times.
Cesar
Cesar el 6 de Feb. de 2013
How do I upload the image?
Cesar
Cesar el 6 de Feb. de 2013
Done
Image Analyst
Image Analyst el 6 de Feb. de 2013
Uh, OK.
Cesar
Cesar el 6 de Feb. de 2013
Any update?
Image Analyst
Image Analyst el 6 de Feb. de 2013
On what?
Cesar
Cesar el 6 de Feb. de 2013
After uploading the image, do you have an answer?
Image Analyst
Image Analyst el 6 de Feb. de 2013
What image? You didn't tell me the location of any image. Please review your postings from my point of view. Does anyone have enough information to help you?
Cesar
Cesar el 6 de Feb. de 2013
Why don't you upload your images of the 4 birds? Where does your single bird come from? A separate image, or is it just one of the 4 that you'd like to copy somewhere else in the image? If you upload your images, then we can cut to the chase and not go back and forth lots of times.
I did upload an image at http://www.tinypic.com. Do you want me to re-upload it?
Cesar
Cesar el 6 de Feb. de 2013
Imagine an image with 4 objects, how to add an additional object in the image? That was my question. I uploaded an image with 4 objects at http://www.tinypic.com.
Cesar
Cesar el 6 de Feb. de 2013
What about now?
Image Analyst
Image Analyst el 6 de Feb. de 2013
And exactly how am I supposed to find your images? tinypic.com is a big web site.
Cesar
Cesar el 6 de Feb. de 2013
Where can I send you the image?
Image Analyst
Image Analyst el 6 de Feb. de 2013
You don't need to send it. Just tell me its URL so we can find it.

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Preguntada:

el 5 de Feb. de 2013

Community Treasure Hunt

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

Start Hunting!

Translated by