how to obtain image boundary of an image?
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?
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127198
I want to perform a boundary operation by which to obtain image boundary on a gray image.
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127226
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, :);
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127313
Thanks. The functions do create and display all 4 boundaries of the image. Can that also be done using only 1 function?
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127345
Yes, just string them together:
oneBoundary = [yourImage(:,1), yourImage(:,end), yourImage(1,:), yourImage(end,1)];
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127350
I got an error using the string: Error using horzcat CAT arguments dimensions are not consistent.
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127363
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)];
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127371
Thanks. Makes sense.
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127372
Another question. Imagine an image with 4 birds (bird.tif by example), how to add additional bird in the image?
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127386
Get a mask for the bird, then do
birds5(binaryMask) = singleBirdImage(binaryMask);
to transfer the bird from the singleBirdImage to the birds5 image.
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127388
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?
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127396
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.
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127413
How do I upload the image?
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127416
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127419
Done
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127424
Uh, OK.
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127535
Any update?
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127540
On what?
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127551
After uploading the image, do you have an answer?
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127555
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?
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127560
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?
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127562
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.
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127601
What about now?
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127605
And exactly how am I supposed to find your images? tinypic.com is a big web site.
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127620
Where can I send you the image?
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127643
You don't need to send it. Just tell me its URL so we can find it.
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127654



2 Comments
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127624
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 .
Direct link to this comment:
http://www.mathworks.com/matlabcentral/answers/62225#comment_127640
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.