i'm trying to read a RGB BMP format image and a JPG format image. but it appears that both have same size(bytes) on my work space . is it possible to read the image with their actual disk space?
    4 views (last 30 days)
  
       Show older comments
    
    Pradeep Gowda
 on 6 Feb 2015
  
    
    
    
    
    Commented: Pradeep Gowda
 on 8 Feb 2015
            reply as soon as possible.
0 Comments
Accepted Answer
  Image Analyst
      
      
 on 6 Feb 2015
        You'd have to use fread(), instead of imread(), to read in the image data byte-for-byte. Of course it does no decompressing that way - it's just pure raw bytes and would look like garbage if you went to display it. Why do you want to do that anyway?
12 Comments
  Image Analyst
      
      
 on 7 Feb 2015
				That's a completely different question, and one that you asked and accepted an answer to in a completely different discussion, so I won't answer it here.
More Answers (1)
  John D'Errico
      
      
 on 6 Feb 2015
        
      Edited: John D'Errico
      
      
 on 6 Feb 2015
  
      So all you want to know is how much disk space was taken up by the image, NOT to read it in with the file still in compressed format?
Just use dir. Look at the struct form that dir returns. One of the fields is bytes, i.e., the number of bytes taken up by the file on disk, as it is currently stored.
For example, in my current directory, I have a jpg file stored.
d = dir('untitled.jpg')
d = 
     name: 'untitled.jpg'
     date: '05-Feb-2015 10:59:57'
    bytes: 20014
    isdir: 0
  datenum: 7.36e+05
If your goal is to also know the space required to store the image in an uncompressed form, then you need only to know the size of the image.
See Also
Categories
				Find more on File Operations 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!

