2016-08-01 43 views
0

MATLABでビットマップを作成します。それは、あなたがコードで見ることができるように非常に特定の場所に赤い矩形を持つ白いイメージです。実際には、私は赤い矩形を取得しますが、矩形の外に白い色を取得する方法を見つけませんでした。matlabで行列からビットマップを作成するには

x=0:9; 
y=0:17; 
matrice=zeros(17,9,'uint8'); 
for i =1 :length(x) 
    for j= 1 :length(y) 
     if (i>=3) && (i<=6)&&(j>=2) &&(j<=16) 
      matrice(j,i)=56; 
     else matrice (j,i)=248; 
     end 
    end 
end 
+0

http://www.mathworks.com/help/matlab/ref/imwrite.html – Dan

+0

これを描画するために使用する機能は何ですか? 'イメージ'? 'imagesc'? – EBH

答えて

0

あなたはコードがたくさんあるようです。すべてを正しくコピーしたことを再度確認してください。あなたが欲しいものを行うための非常に簡単な方法は次のようになります

% create matrix 
matrice=zeros(17,9); 
matrice(2:16,3:6)=1; 

% Plot matrix 
imagesc(matrice) 

% Color matrix 
colormap([1 1 1; 1 0 0]) 

% Fix axis 
axis square 

機能imagescは、行列の各インデックスはピクセルで表された画像を作成します。データは現在のカラーマップに収まるようにスケーリングされるため、現在のカラーマップを白と赤だけに設定することで、白い背景の赤い四角形が得られます。

関連する問題