Finding a matrix to shift an image

51 vues (au cours des 30 derniers jours)
Michelle
Michelle le 15 Nov 2020
How do i find a matrix that would shift an image horizontally by 240 pixels and how do i display it using a spy function?
Below is the code I have for turning the image into a matrix and I have also attached the image to this post
% Read the image
img1 = imread('mountain.jpg');
% Convert it to double
img1Double = im2double(img1);

Réponses (1)

Sourabh Kondapaka
Sourabh Kondapaka le 18 Nov 2020
If you want to just shift the image horizontally, you can use the function imtranslate() as shown:
im1 = imread('mountain.jpg');
figure(1);
imshow(im1);
figure(2);
%Translate by 240 pixels on the X-axis
im1 = imtranslate(im1, [240 0]);
imshow(im1);
spy(S) plots the sparsity pattern of matrix S. Nonzero values are colored while zero values are white. The plot displays the number of nonzeros in the matrix.
To show spy() values you can check the following
im1 = imread('mountain.jpg');
figure(1);
im1Double = im2double(im1);
spy(im1Double);
figure(2);
im1 = imtranslate(im1, [250 0]);
spy(im1Double);

Catégories

En savoir plus sur Sparse Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by