Pythonはビットマップセグメンテーションの効果を実装している
2022-01-26 03:54:18
最近、ビットマップセグメンテーションの内容を見直したところ、ビットマップセグメンテーションの原理はWeb上でわかりやすく説明されていますが、コードの実装はC++かMatlabがほとんどで、Python版が必要なので、このブログが登場したわけです。
さっそくですが、コードを見てみましょう。
import cv2
import numpy as np
import matplotlib.pyplot as plt
img = cv2.imread('Fig3.13.jpg', 0)
imgBS = np.zeros_like(img)
plt.figure("Image")
plt.subplot(2, 4, 1)
plt.imshow(img, cmap='gray')
plt.axis('off')
plt.title('original')
for n in range(1, 8):
for x in range(img.shape[0]):
for y in range(img.shape[1]):
gray = img[x, y] & pow(2, n-1)
if gray == pow(2, n-1):
imgBS[x, y] = 255
else:
imgBS[x, y] = 0
plt.subplot(2, 4, n+1)
plt.imshow(imgBS, cmap='gray')
plt.axis('off')
plt.title(str(n) + 'bit')
plt.show()
結果
上記は、ビットマップ分割の効果を達成するために、Pythonの詳細については、スクリプトハウスの他の関連記事に注意を払うください!です。
関連
-
Pythonの画像ファイル処理用ライブラリ「Pillow」(グラフィックの詳細)
-
[解決済み】外部スコープで定義された名前をシャドウイングする際の問題点とは?
-
python のエラーです。AttributeError: 'NoneType' オブジェクトには 'append' という属性がありません。
-
Pythonで数行のコードでdablを使ったデータ処理解析とML自動化
-
[解決済み] 致命的なエラーです。Python.h: そのようなファイルやディレクトリはありません
-
[解決済み] matplotlibのタイトレイアウトを図と一緒に使うには?
-
[解決済み] 10分でわかるPandasチュートリアル - to_numpy()が存在しない?
-
[解決済み] Pythonで文字列のヌルバイトを見つけるには?
-
OverflowError: intが大きすぎてfloatに変換できない場合の対処法
-
pipインストールエラーの解決 TypeError: -= でサポートされていないオペランドタイプ: 'Retry' および 'int'.
最新
-
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ショートビデオクローラーチュートリアル
-
[解決済み】SQLAlchemyの行エントリを更新する方法は?
-
[解決済み】tar: OSXのTFチュートリアル、flower_photos.tgzを解凍しようとするとUnrecognized archive format errorが発生する。
-
[解決済み】「pymysql」という名前のモジュールがない
-
[解決済み] Python3 で dict_keys の要素にインデックスでアクセスする
-
[解決済み] マルチプロセシングpool.mapを複数の引数で使用する方法
-
[解決済み] Pythonの[]と[[]]の違いについて
-
[解決済み] Airflowで条件付きタスクを作成する方法
-
pythonにOSErrorが発生しました。[Errno 8] 実行形式エラー 原因と解決策
-
socket.gaierror:[Errno 11001] getaddrinfoに失敗しました。