getting an image matrix when I have the image.
8 views (last 30 days)
Show older comments
David Epstein
on 20 Jul 2018
Commented: Image Analyst
on 21 Jul 2018
My code to produce a white F on a black background:
f_shape = [0,0;1,0;1,2;2,2;2,3;1,3;1,5;3,5;3,6;0,6;0,0]*[1,0;0,-1];
r = ceil(max(range(f_shape))*sqrt(2));
kappa =2;
R = ceil(kappa*r);
f_img = zeros(2*R);
f_shape = f_shape + R*[1,1];
imshow(f_img);
hold;
fill(f_shape(:,1),f_shape(:,2),'w');
daspect = [1,1,1];
Now I want to apply imrotate to this 36 times 36 image matrix. The only way I can think of is to save it as a png, and then imread it. Do I really have to do that? Sound slow, and wrong in principle. It is also likely to result in lots of pointless files littering my hard disk.
0 Comments
Accepted Answer
Image Analyst
on 20 Jul 2018
Simply call imrotate() on f_img. Why do you think you can't do that???
rotatedImage = imrotate(f_img, angle);
4 Comments
Image Analyst
on 21 Jul 2018
You need to understand the concept of an actual digital image, which has pixel values, and the concept of a graphical overlay, where you put computer graphics in over the image. The Image Processing Toolbox commands, starting with im or bw, work on the image itself, not with anything you may have put on top of them in the overlay.
More Answers (0)
See Also
Categories
Find more on Computer Vision with Simulink in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!