tata色々な備忘録

データ解析、画像解析、化学分析などなど

2013-07-01から1ヶ月間の記事一覧

python+Opencvによる画像処理11(フーリエ変換2、カラー)

2次元フーリエのコード、 numpy使うと非常に簡単でした…… import cv2 import numpy as np import pylab as plt im = cv2.imread('lena.jpg',) im1 = im[:,:,::-1].copy() im_RGB = cv2.split(im1) plt.subplot(1,4,1),plt.imshow(im1) j = 2 title = ('Red',…

python+Opencvによる画像解析1(ORB特徴量)

フリーの局所画像記述子であるORBによる特徴抽出 import cv2 import numpy as np from matplotlib import pyplot as plt img = cv2.imread('lena.jpg',0) # 検出器の初期化 orb = cv2.ORB() # 特徴量の検出と出力用の計算 kp, des = orb.detectAndCompute(im…

OpenCVとPIL(python Image library)のデータ変換

2018/5/6修正 OpenCVとPILの相互利用 OpenCVとPILのデータ変換。 PIL⇒OpenCVは下で問題なし。 import numpy as np OpenCV_data=np.asarray(PIL_data) OpenCV⇒PILは from PIL import Image PIL_data=Image.fromarray(OpenCV_data) 青画面の残念仕様になるので…

python+Opencvによる画像処理10(輪郭検出)

import cv2 import numpy as np import pylab as plt im = cv2.imread("cat2.jpg") im2= cv2.imread("cat2.jpg") #グレースケール im_gray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY) #ガウスフィルタ im_gray_smooth=cv2.GaussianBlur(im_gray,(11,11),0) #2…

Vagrant+VirtualBox環境の構築1

Vagrant http://www.vagrantup.com/ VirtualBox https://www.virtualbox.org/ 仮想マシン置き場(URLコピー) http://www.vagrantbox.es/ $vagrant box list コマンドラインにて #所持するboxのリスト $vagrant box list #boxの取得 $vagrant box add 任意の…

python+Opencvによる画像処理9(2値化)

二値化法の比較。 import pylab as plt plt.rcParams['font.family'] = 'IPAexGothic' plt.rcParams['font.size'] = 12 import cv2 import numpy as np im = cv2.imread("cat.jpg") im_gray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY) #Adaptive Gaussian Thre…

matplotlib、pylabで日本語+フォント変更

ここを見ながら実施 http://www.sakito.com/2012/01/matplotlib.html matplotlib.matplotlib_fname() でmatplotlibrcの場所を調べる。 $copy C:/python/site-packages/matplotlib/mpl-data/matplotlibrc ~/.matplotlib ~/.matplotlib/matplotlibrcに下記を記…

python+Opencvによる画像処理8(フィルター)

エッジ検出のため、ブロックノイズ除去のフィルター。 詳細はこちら http://opencvpython.blogspot.jp/2012/06/smoothing-techniques-in-opencv.html import cv2 import numpy as np im = cv2.imread("lena.jpg") #カラー bilateral_blur = cv2.bilateralFil…

python+Opencvによる画像処理7(二次元フーリエ変換)

画像のフーリエ変換。 (Opencvのデモを少し修正して翻訳) 二次元フーリエ変換 全行方向にフーリエ変換した結果に対し、 さらに列方向でフーリエ変換をする。 4隅に低波数が出て見づらいので、 四隅が中央に来るよう加工する。 出た模様は一般にパワースペ…

python+Opencvによる画像処理5(画像結合とマスク)

1.重み付け import cv2 import numpy as np im1 = cv2.imread("lena.jpg") im2 = cv2.imread("lenna-image.jpg") alpha = 0.5 beta = 0.3 add = cv2.addWeighted(im1,alpha,im2,beta,0) cv2.imwrite('add.jpg',add) alphaとbetaの数値で重み付けして合成可能…

python+Opencvによる画像処理5(リサイズ)

画像の大きさを半分にするコード。 import cv2 import numpy as np def half_size(im): hight = im.shape[0] width = im.shape[1] half_size = cv2.resize(im,(width/2,height/2)) cv2.imshow("half_size",half_size) cv2.waitKey(0) cv2.destroyAllWindows(…

python+Opencvによる画像処理4(色チャンネル変更)

色チャンネルを触ってみる。 解像度を揃えたブランクをnumpyで作成し、 分割した色空間を入れ替えて流し込む。 BlueをRedに、GreenをBlueに、 RedをGreenに入れ替え。 import cv2 import numpy as np def color_change(im): if im.ndim == 2: pass else : hi…

python+Opencvによる画像処理3(色チャンネルとヒストグラム2)

1.色チャンネルの取り出し import numpy as np import cv2 im = cv2.imread("lena.jpg") RGB =cv2.split(im) Blue = RGB[0] Green = RGB[1] Red = RGB[2] cv2.imshow("Blue",Blue) cv2.imshow("Green",Green) cv2.imshow("Red",Red) 2. 別な色チャンネル取り…

python+Opencvによる画像処理2(ヒストグラム)

続いてヒストグラム 1. opencvに集計させるパターン import cv2 import pylab as plt im = cv2.imread("lena.jpg") hist = cv2.calcHist([im],[0],None,[256],[0,256]) plt.plot(hist) plt.xlim([0,256]) plt.show() 2. ヒストグラム(matplotlib)で集計 im…

python+Opencvによる画像処理1

python+opencvのお勉強。 まずは読み込みと表示から import numpy as np import cv2 import pylab as plt im = cv2.imread('lena2.jpg',flags=0) if im is None: print "None" exit() plt.imshow(im) plt.show() import numpy as np import cv2 import pylab…

ファイル結合とテキスト処理2

CSVファイルの数珠つなぎ。 ① 列名のリストを作成 ② 空ファイルに①を記入 ③ CSVファイルで①の行を読み飛ばし ④ 必要事項を追記して書き込み from __future__ import with_statement import re head_row=u"CSVの列名リスト" head_gomi= u"ヘッダーのゴミ" pat…