the image size in matlab now equal the actual size at computer

15 ビュー (過去 30 日間)
Abdullah
Abdullah 2017 年 3 月 31 日
コメント済み: Abdullah 2017 年 3 月 31 日
Hell My issue is when I use imread to any image then i type whos it gives me the image size by Bytes but its not equal to the actual image size at the computer, its always bigger.
  1 件のコメント
Jan
Jan 2017 年 3 月 31 日
編集済み: Jan 2017 年 3 月 31 日
Yes, hell you are right. ;-) What exactly is your question?

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

採用された回答

KSSV
KSSV 2017 年 3 月 31 日
You see when you read the image using imread, what you have in hand is a RGB matrix or binary matrix depending on the image read. The data has the pixel values of the image and these are numbers either in double or uint. When you type whos matlab shows the Bytes size of this matrix. The sizes which you are comparing are obviously different. If you want to get the size of image in matlab...try
info = dir('my image')
info will be a structure, check bytes there. This is the size which you are looking.

その他の回答 (2 件)

Jan
Jan 2017 年 3 月 31 日
編集済み: Jan 2017 年 3 月 31 日
Correct. This is the purpose of the whos command. It shows the memory used for storing a variable. This is the number of elements multiplied by the number of bytes per element. For cells this is the number of elements multiplied by the byte size of a pointer.
Therefore the size shown by whos is expected to be larger than the number of elements.
If you want to get the size in pixels, use size. If you want the file size, see KSSV's answer.

Abdullah
Abdullah 2017 年 3 月 31 日
thanks a lot @KSSV it did solve the problem

製品

Community Treasure Hunt

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

Start Hunting!

Translated by