[解決済み] Numpyのリサイズ/リスケールイメージ
2022-04-27 21:53:28
質問
画像を取り込んで、numpyの配列のまま、画像のスケールを変えたいのですが、どうすればいいですか?
例えば、コカ・コーラのボトルの画像があります。 ボトル-1
これは、形状のnumpy配列に変換されます。
(528, 203, 3)
これを2枚目の画像のサイズにリサイズしたいのです。
ボトル2
の形状を持つもの。
(140, 54, 3)
.
元の画像を維持したまま、ある形にサイズを変更するにはどうしたらよいでしょうか。他の回答は、1つおきまたは3つめの行を削除することを提案していますが、私がやりたいことは、基本的に、画像エディタを介して行うように画像を縮小しますが、pythonコードで行うことです。numpy/SciPyでこれを行うためのライブラリはありますか?
どのように解決するのですか?
をインストールすることができます。
opencv
(これは画像処理、コンピュータビジョンに使われるライブラリです)、そして
cv2.resize
関数を使用します。そして例えば使う。
import cv2
import numpy as np
img = cv2.imread('your_image.jpg')
res = cv2.resize(img, dsize=(54, 140), interpolation=cv2.INTER_CUBIC)
ここで
img
は元画像を含むnumpy配列であるのに対し
res
を含むnumpy配列です。
リサイズ
の画像が表示されます。重要な点は
interpolation
パラメータ:画像のサイズを変更する方法はいくつかあります。特に、画像を縮小するわけですから、元画像のサイズが
ではない
リサイズした画像のサイズの倍数です。考えられる補間のスキーマは
INTER_NEAREST
- 最近傍補間INTER_LINEAR
- バイリニア補間 (デフォルトで使用)INTER_AREA
- 画素面積の関係を利用したリサンプリング。モアレを発生させないので、画像のデシメーションには好ましい方法である。 の結果を得ることができます。しかし、画像がズームされると、同様にINTER_NEAREST
というメソッドがあります。INTER_CUBIC
- 4x4 ピクセル近傍のバイキュービック補間法INTER_LANCZOS4
- 8x8 ピクセル近傍の Lanczos 補間
ほとんどのオプションと同様に、すべてのリサイズスキーマについて、ある戦略が他の戦略よりも優先されるシナリオがあるという意味で、quot;best" オプションは存在しません。
関連
-
pyCaret効率化乗算器 オープンソース ローコード Python機械学習ツール
-
PythonでECDSAを実装する方法 知っていますか?
-
[解決済み】SyntaxError: デフォルト以外の引数がデフォルトの引数に続く
-
[解決済み] div' コンテナに合わせて画像を自動リサイズするにはどうしたらいいですか?
-
[解決済み] div 内の画像を縦に並べる方法
-
[解決済み] Markdownで画像サイズを変更する
-
[解決済み] Bitmapオブジェクトに画像を読み込む際にOutOfMemoryが発生する問題
-
[解決済み] 2次元アレイにおけるピーク検出
-
[解決済み] CSSによる画像の強制リサイズとアスペクト比の保持
-
[解決済み] Numpyの配列を画像として保存する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Python関数の高度な応用を解説
-
PythonはWordの読み書きの変更操作を実装している
-
Python百行で韓服サークルの画像クロールを実現する
-
PythonでECDSAを実装する方法 知っていますか?
-
[解決済み】お使いのCPUは、このTensorFlowバイナリが使用するようにコンパイルされていない命令をサポートしています。AVX AVX2
-
[解決済み】DataFrameのコンストラクタが正しく呼び出されない!エラー
-
[解決済み】TypeError: re.findall()でバイトのようなオブジェクトに文字列パターンを使用することはできません。)
-
[解決済み] builtins.TypeError: strでなければならない、bytesではない
-
[解決済み】Python: OverflowError: 数学の範囲エラー
-
[解決済み】ValueError: pickleプロトコルがサポートされていません。3、python2 pickleはpython3 pickleでダンプしたファイルを読み込むことができない?