width、height、およびcolorChannelにあるピクセル値を減らしてイメージのサイズを小さくしようとしています。私はそれを0(黒を意味する)にしようとすると、ファイルサイズの値が増加します。ピクセルを小さくしてイメージのサイズを小さくする方法
imresizeを使用してサイズを減らす方法を提案できます。
width、height、およびcolorChannelにあるピクセル値を減らしてイメージのサイズを小さくしようとしています。私はそれを0(黒を意味する)にしようとすると、ファイルサイズの値が増加します。ピクセルを小さくしてイメージのサイズを小さくする方法
imresizeを使用してサイズを減らす方法を提案できます。
あなたはsize
が行列の行と列の数を指し、品質パラメータ(以下の例では75に等しい)MATLABで
sharp('input.jpg')
.resize(300)
.quality(75)
.toFile('result.jpg', function(err, info) {
if(err) console.error(err);
console.log(info);
});
質問にはmatlabタグがあり、あなたの答えはjavascriptのように見えます:) –
をdecrasingことによって画像のサイズを小さくすることができ(または2つのより高次元のために、それは各次元で長さだ。 例えば
>> A = [0.1,0.2,0.3,0.4,0.5;0.6,0.7,0.8,0.9,1];
>> size(A)
ans =
2 5
>> whos A
Name Size Bytes Class Attributes
A 2x5 80 double
Aは、であり、メモリに80のバイトを要しますそれはタイプdouble
の配列であるためです。 Aの画像として使用する場合には、そのメモリフットプリントを減らす方法は、符号なし8ビット整数型に変換することで、すなわちuint8の場合:
>> A = im2uint8(A)
A =
26 51 77 102 128
153 179 204 230 255
>> whos A
Name Size Bytes Class Attributes
A 2x5 10 uint8
しかし、なぜあなたがしたい私は見当がつかないあなたのMATLABワークスペースのメモリフットプリントについて気にしてください。あなたは言おうとすることができるように
は、それはあなたが小さいサイズのが、解像度を犠牲にすることなくあるファイルを取得したいということである私には聞こえます。しかし、そうであれば、私たちが話している出力ファイルの種類を指定する必要があります。それはちょうどmatlab .mat
ファイルの場合は、上記のとおりです。 .jpg
または.png
などに変換しようとしている場合は、エクスポート機能に渡すオプションの種類に応じて圧縮の品質などを決定します。
さらに質問を明確にしてください実際に役に立つヘルプが必要です。
これは問題ではありませんでしたが、順番に可能な限り少ない情報を失うためには、im2uint8関数の前にヒストグラム等化を適用すると便利です。 – obchardon
'imresize' ....? Changinの値はメモリサイズを変更しません....同じメモリに値123212321と値0を格納します。 –
非常にあいまいな用語を使用しています。行と列の数のようにサイズ?あなたのMATLABワークスペースのメモリ内のオブジェクトのサイズ?特定の形式で保存すると、ディスク上のファイルサイズは?ピクセルの強度またはピクセル数を減らしますか? 「width heightとcolorChannelでの* pixel *値」とは何ですか?これは意味がありません。 –
このユーザーはすでに、閉鎖され、下降されたあいまいな用語で類似のものを尋ねました。 http://stackoverflow.com/questions/38202047/total-number-of-pixels-in-an-image –