Paste new image to random locations

1 view (last 30 days)
NC
NC on 26 Jun 2018
Answered: KSSV on 26 Jun 2018
I want to read a set of images in a folder and paste a cropped part of another new image to random locations of each image. I used imfuse() function, but the cropped image only places at the upper left corner not in random locations.n How to do it for random locations?

Answers (1)

KSSV
KSSV on 26 Jun 2018
I = imread('peppers.png') ;
[J,rect] = imcrop(I) ;
[nx,ny,~] = size(I) ;
[nx1,ny1,~] = size(J) ;
%%place at random location
posx = randsample(nx1:nx-nx1,1) ;
posy = randsample(ny1:ny-ny1,1) ;
%place the cropped part
I(posx:posx+nx1-1,posy:posy+ny1-1,:) = J ;
imshow(I) ;

Community Treasure Hunt

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

Start Hunting!