how to convert a cell array into an image?
이전 댓글 표시
I fetched an image from sql database but its returning format is like i=[75839 int8] how can i convert it into image plz help me out
채택된 답변
추가 답변 (1개)
Image Analyst
2014년 10월 4일
편집: Image Analyst
2014년 10월 4일
You need to take the (badly-named) i and reshape it into a 2 or 3D array, but you need to know the number of rows and columns.
cellContents = cell2mat(i); % Convert from cell to double.
grayImage = reshape(cellContents, [rows, columns]);
imshow(grayImage, []);
댓글 수: 8
kanwal
2014년 10월 5일
kanwal
2014년 10월 5일
AS IA said, you will have to reshape that d into a 2D image, so you need to know the height and width of the image.
Now since, 75389 is a prime number, there's no way that it can be reshaped into a rectangle, so most likely, there is a header to the image. Do you know what that header is (or what the format of the image is)? If not, can you post the first few value of d (for example d(1:40))?
kanwal
2014년 10월 5일
Guillaume
2014년 10월 5일
Can you show the first few bytes d?
d(1:40)
kanwal
2014년 10월 5일
Guillaume
2014년 10월 5일
Your image is a png image, not a jpeg. The code I posted in my answer, with the typecast fix, should decode it.
kanwal
2014년 10월 6일
카테고리
도움말 센터 및 File Exchange에서 Convert Image Type에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!