Circular region in an image

3 Ansichten (letzte 30 Tage)
Sordin
Sordin am 15 Jan. 2018
Kommentiert: Image Analyst am 18 Jul. 2018
I am trying to replace a circular region in one image with the corresponding region in another image. Here is my code so far:
% Sample images:
I=imread('office_1.jpg');
I2=imread('office_5.jpg');
[imageSizeY, imageSizeX,z1] = size(I);
centerX = ceil(imageSizeX/2);
centerY = ceil(imageSizeY/2);
radius = 200;
for i=1:max(imageSizeY,imageSizeX)
if (((centerY+i) - centerY).^2 ...
+ ((centerX+i) - centerX).^2 <= radius.^2)
I(centerY:centerY+i, centerX:centerX+i, :) ...
= I2(centerY:centerY+i, centerX:centerX+i, :);
end
end
imshow(I)
Unfortunately, my code does not work correctly, and instead of a circle the result is a square (corresponding to only one quadrant of the desired circle):
What are the mistakes here? Any explanation is greatly appreciated.

Akzeptierte Antwort

Matt J
Matt J am 15 Jan. 2018
Bearbeitet: Matt J am 15 Jan. 2018
I don't really follow the logic of your code, but in any case there are much simpler and more efficient approaches, e.g.,
[yy,xx,~]=ndgrid( (1:imageSizeY)-centerY, (1:imageSizeX)-centerX ,1:z1);
map=(yy.^2+xx.^2<=radius^2);
I(map)=I2(map);
  3 Kommentare
Image Analyst
Image Analyst am 16 Jan. 2018
Bearbeitet: Image Analyst am 16 Jan. 2018
Does this work for his color image?
Sordin
Sordin am 16 Jan. 2018
Hi Image Analyst, Yes this worked for the color images as well.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Image Analyst
Image Analyst am 15 Jan. 2018
See my attached copy and paste demos.

Prince Masedi
Prince Masedi am 18 Jul. 2018
II. Determine the following statistical parameter using Matlab program (Note you must copy and paste your code on the answer booklet. (1. Error variance, 2. Assume X=Rainfall Y=Runoff fill in the table with respective determined square of (X-Xm) where Xm is the mean of X and determine estimated Y termed as Yest.
  1 Kommentar
Image Analyst
Image Analyst am 18 Jul. 2018
How does this answer the original question about pasting circular regions into an image?

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Images finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by