フィルターのクリア

How to convert image matrix to char stream?

2 ビュー (過去 30 日間)
Yuheng Huang
Yuheng Huang 2017 年 7 月 23 日
コメント済み: Yuheng Huang 2017 年 7 月 26 日
I want to POST an image to the server. I have a matrix read from file:
I = imread('file.jpg');%This line can't be changed
And what I do now is saving it to a file then read it back:
imwrite(I, 'temp.jpg');
fid = fopen('temp.jpg', 'r');
imgData = char(fread(fid)');
fclose(fid);
But when call this function frequently, there will be an error:
Unable to open file "temp.jpg" for writing. You might not have write permission.
Is there any solution to convert the matrix I to char stream imgData directly?

採用された回答

Image Analyst
Image Analyst 2017 年 7 月 23 日
What is your current folder? You're evidently not allowed to save the (badly-named) I there.
Or else you already have a file called that and some app has that file open and it's locked for modifying. If so, close it in the other app that has it open. If no other app has it open, then try
fclose('all');
before you call imwrite().
  1 件のコメント
Yuheng Huang
Yuheng Huang 2017 年 7 月 26 日
Is there any way to convert these two formats directly in the memory instead of saving on the disk and read back? I think this is a bit not elegant :)

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeConvert Image Type についてさらに検索

Community Treasure Hunt

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

Start Hunting!