フィルターのクリア

Why is the lenna image rotated?

2 ビュー (過去 30 日間)
niniki
niniki 2022 年 2 月 22 日
コメント済み: niniki 2022 年 2 月 23 日
Opened lenna.raw file in figure.
By the way, the image is rotated 90 degrees counterclockwise. It was a 256x256 image, and I printed the image using mat2gray.
I'm curious as to why and how the image is spinning.
please help me thank you.
  4 件のコメント
DGM
DGM 2022 年 2 月 22 日
When you read the image into a rectangular geometry such as in this call:
a = fread(raw,[256,256])
understand that what you're doing is taking the raw data in the file (a vector) and devectorizing it. This is the same as reshaping any other vector.
Consider the example:
myimagevector = 1:25; % pretend this is the image data
myimagematrix = reshape(myimagevector,5,5)
myimagematrix = 5×5
1 6 11 16 21 2 7 12 17 22 3 8 13 18 23 4 9 14 19 24 5 10 15 20 25
The contents of the vector are placed columnwise into the output geometry. If the original data had been written out row-wise, then the result will be transposed -- not rotated.
@yanqi liu is correct. All you likely need to do is transpose the incoming image.
niniki
niniki 2022 年 2 月 23 日
Thanks to your answer, I understood perfectly!!!! ^^b

サインインしてコメントする。

採用された回答

yanqi liu
yanqi liu 2022 年 2 月 22 日
yes,sir,may be check
when read it,should use ' to transposition the matrix
fid = fopen('lena256.raw', 'rb');
x = fread(fid, [256, 256], 'uint8=>double').' ;
fclose(fid);
figure; imshow(x, [])
  1 件のコメント
niniki
niniki 2022 年 2 月 23 日
thank you!!

サインインしてコメントする。

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by