2018-03-01から1ヶ月間の記事一覧

Interface2017年05月号新画像処理101を読む

11-3 低周波成分を階層表現する「ガウシアン・ピラミッド」 import cv2 import numpy as np img_src = cv2.imread("data/img_11-3.bmp") img_dst = cv2.pyrDown(img_src) cv2.imshow("img_src",img_src) cv2.imshow("img_dst",img_dst) cv2.waitKey(0) cv2.d…

Interface2017年05月号新画像処理101を読む

技11 画像分析あれこれ 11-1 著作権等の情報を埋め込む「電子すかし」 11-2 特徴強度をわかりやすく表示する「レベル表示画像」 pass

Interface2017年05月号新画像処理101を読む

10-9 元より解像度(感)が増す「高解像化」 pass

Interface2017年05月号新画像処理101を読む

10-8 指定した領域をなかったことにする「簡単なインペインティング」 import cv2 import numpy as np img_src = cv2.imread("data/img_10-8.bmp") img_mask = cv2.imread("data/img_mask_10-8.bmp",0) img_dst = cv2.inpaint(img_src,img_mask,3,cv2.INPAIN…

Interface2017年05月号新画像処理101を読む

10-7 ムラのない模様を作る「バイアス消去処理」 pass

Interface2017年05月号新画像処理101を読む

10-6 高精細に見せる「先鋭化フイルタ」 import cv2 import numpy as np img_src = cv2.imread("data/img_10-6.bmp") k = 1.5 op = np.array([ [-k,-k ,-k], [-k,1+8*k,-k], [-k,-k ,-k]]) img_tmp = cv2.filter2D(img_src,-1,op) img_dst = cv2.convertScal…

Interface2017年05月号新画像処理101を読む

10-3 白黒粗密表現から濃淡値を復元する「ホワイトノズルの平滑化」 10-4 高周波画像と低周波画像を組み合わせただまし絵「ハイブリット・イメージ」 10-5 相性の良い2人の画像を合成「ポアソン合成」 pass

Interface2017年05月号新画像処理101を読む

10-2 半透明にして重ねあわせる「αブレンディング」 import cv2 import numpy as np img_src1 = cv2.imread("data/img_1_10-2.bmp") img_src2 = cv2.imread("data/img_2_10-2.bmp") img_dst = cv2.addWeighted(img_src1 ,0.5 ,img_src2,0.5 ,0) cv2.imshow("…

Interface2017年05月号新画像処理101を読む

技10 画像フェージョン&合成 10-1 明暗や色彩のチャンピオンを合成する「HDR合成」 import cv2 import numpy as np # 3枚の画像ファイルを読み込む img_fn = ["data/img_input_1_10-1.bmp", "data/img_input_2_10-1.bmp", "data/img_input_3_10-1.bmp"] im…

Interface2017年05月号新画像処理101を読む

9-3 最も分離できる閾値を選択する「判別分析法」 9-4 背景と前景に明確に分離できる場合に効果的な「モード法」 9-5 背景と前景の割合がわかっている場合効果的な「Pタイル法」 9-6 人工生命をモデルにした画像の分離/抽出「グロウカット」 9-7 2値化がむ…

Interface2017年05月号新画像処理101を読む

9-2 画像合成/抽出の基本「マスキング処理」 import cv2 import numpy as np img_src = cv2.imread("data/img_9-2.bmp") img_mask = cv2.imread("data/img_mask2.bmp",0) img_dst = cv2.bitwise_and(img_src, img_src, mask=img_mask ) cv2.imshow("img_src"…

Interface2017年05月号新画像処理101を読む

技9 ターゲット抽出 9-1 画像分離/抽出の基本「閾値による2値化処理」 pass

Interface2017年05月号新画像処理101を読む

8-7 ノイズ減らせるのに欠けも少ない優れもの「コンディショナル・ダイレーション」 Pass

Interface2017年05月号新画像処理101を読む

8-6 相対的に明るい領域を抽出する「ホワイト・トップハット」 import cv2 import numpy as np img_src = cv2.imread("data/img_8-6.bmp") kernel = np.ones((5,5),np.uint8) img_dst = cv2.morphologyEx(img_src, cv2.MORPH_TOPHAT, kernel) cv2.imshow("im…

Interface2017年05月号新画像処理101を読む

8-5 相対的に暗い領域を抽出する「ブラック・トップハット」 import cv2 import numpy as np img_src = cv2.imread("data/img_8-5.bmp") kernel = np.ones((5,5),np.uint8) img_dst = cv2.morphologyEx(img_src, cv2.MORPH_BLACKHAT, kernel) cv2.imshow("im…

Interface2017年05月号新画像処理101を読む

8-4 全体への影響を抑えつつ文字等を消せる「クロージング」 import cv2 import numpy as np img_src = cv2.imread("data/img_8-1.bmp") kernel = np.ones((5,5),np.uint8) img_dst = cv2.morphologyEx(img_src, cv2.MORPH_CLOSE, kernel) cv2.imshow("img_s…

Interface2017年05月号新画像処理101を読む

8-3 全体への影響を抑えつつノイズを消せる「オープニング」 import cv2 import numpy as np img_src = cv2.imread("data/img_8-2.bmp") gray = cv2.cvtColor(img_src, cv2.COLOR_RGB2GRAY) kernel = np.ones((5,5),np.uint8) img_dst = cv2.morphologyEx(im…

Interface2017年05月号新画像処理101を読む

8-2 明るいノイズ(白領域)を収縮させて消せる「エロージョン」 import cv2 import numpy as np img_src = cv2.imread("data/img_8-2.bmp") gray = cv2.cvtColor(img_src, cv2.COLOR_RGB2GRAY) kernel = np.ones((5,5),np.uint8) img_dst = cv2.erode(img_s…

Interface2017年05月号新画像処理101を読む

技8 拡大縮小によるノイズ除去 8-1 白い領域を膨張させて文字等を消せる基本「ダイレーション」¶ import cv2 import numpy as np img_src = cv2.imread("data/img_8-1.bmp") gray = cv2.cvtColor(img_src, cv2.COLOR_RGB2GRAY) # カーネル kernel = np.array…

Interface2017年05月号新画像処理101を読む

7-6 単純なエッジ検出(ハイパス・フィルタ) 7-7 ガウシアンフィルタの画像と差分をとるだけ(ハイパス・フィルタ) 7-8 さまざまな周波数成分が抽出できる「DOGフィルタ」 7-9 ノイズを低減しっつ縦方向の輪郭を検出する「プリューウィット・フイルタ(横…

Interface2017年05月号新画像処理101を読む

7-5 代表的な画像のエッジ検出器(ラプラシアン・フィルタ) import cv2 import numpy as np img_src = cv2.imread("data/img_7-1.bmp") gray = cv2.cvtColor(img_src, cv2.COLOR_RGB2GRAY) # カーネル kernel = np.array([[0, 1, 0], [1, -4, 1], [0, 1, 0]…

Interface2017年05月号新画像処理101を読む

7-5 代表的な画像のエッジ検出器(ラプラシアン・フィルタ)¶ import cv2 import numpy as np img_src = cv2.imread("data/img_7-1.bmp") #gray = cv2.cvtColor(img_src, cv2.COLOR_RGB2GRAY) img_dst = cv2.Laplacian(img_src, cv2.CV_32F,ksize=3) cv2.ims…

Interface2017年05月号新画像処理101を読む

7-4 内外がわかる横方向輪郭検出(縦方向の2次微分) import cv2 import numpy as np img_src = cv2.imread("data/img_7-1.bmp") gray = cv2.cvtColor(img_src, cv2.COLOR_RGB2GRAY) # カーネル kernel = np.array([[0, 1, 0], [0, -2, 0], [0, 1, 0]]) img_…

Interface2017年05月号新画像処理101を読む

7-3 内外がわかる縦方向輪郭検出(横方向の2次微分) import cv2 import numpy as np img_src = cv2.imread("data/img_7-1.bmp") gray = cv2.cvtColor(img_src, cv2.COLOR_RGB2GRAY) # カーネル kernel = np.array([[0, 0, 0], [1, 2, 1], [0, 0, 0]]) img_d…

Interface2017年05月号新画像処理101を読む

7-2 基本的な横方向の輪郭検出(縦方向の1次微分) import cv2 import numpy as np img_src = cv2.imread("data/img_7-1.bmp") gray = cv2.cvtColor(img_src, cv2.COLOR_RGB2GRAY) # カーネル kernel = np.array([[0, -1, 0], [0, 1, 0], [0, 0, 0]]) img_d…

Interface2017年05月号新画像処理101を読む

技7 輪郭の検出(ハイパス) 7-1 基本的な縦方向の輪郭検出(横方向の1次微分) import cv2 import numpy as np img_src = cv2.imread("data/img_7-1.bmp") gray = cv2.cvtColor(img_src, cv2.COLOR_RGB2GRAY) # カーネル kernel = np.array([[0, 0, 0], [-…

Interface2017年05月号新画像処理101を読む

バイラテラルフィルタ エッジはぼかさないフィルタ import cv2 img_src = cv2.imread("data/img_6-5.bmp") img_dst = cv2.bilateralFilter(img_src,9,75,75) #描画する cv2.imshow("img_src",img_src) cv2.imshow("img_dst",img_dst) cv2.waitKey(0) cv2.des…

Interface2017年05月号新画像処理101を読む

6-6 動きのあるボケを作り出す「特定方向への平滑化」 pass

Interface2017年05月号新画像処理101を読む

6-5 より自然にボカす「ガウシアン・フィルタ」 import cv2 import numpy as np from matplotlib import pyplot as plt img_src = cv2.imread("data/img_6-5.bmp") #第二引数はカーネルサイズ,第三引数は標準偏差 img_dst = cv2.GaussianBlur(img_src,(5,5),…

Interface2017年05月号新画像処理101を読む

6-3 白いノイズを除去しやすい「最小値フィルタ」 6-4 黒いノイズを除去しやすい「最大値フィルタ」 pass