tata色々な備忘録

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

Vagrant+VirtualBox環境の構築2(CentOS)

python2.7のインストール 参考 http://3rd-tl.blogspot.jp/2013/05/centosyumpython.html $ sudo rpm -ivh http://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/epel-release-6-5.noarch.rpm $ sudo rpm -ivh http://dl.iuscommunity.org/pub/ius/st…

scipy+Opencv+numpyによる画像分類2

切り出したイメージからの続き。 import numpy as np import cv2 import matplotlib.pyplot as plt im = cv2.imread('bubbles.jpg') im2 = cv2.imread('bubble2.jpg',0) imgray = cv2.cvtColor(im,cv2.COLOR_BGR2GRAY) ret,thresh = cv2.threshold(imgray,10…

scipy+Opencv+numpyによる画像分類

ヒストグラムを利用した分類法。 定番っすね。 import cv2 import numpy as np import pylab as plt import scipy.ndimage as nd def mask_test(im): if im.ndim == 2: im2= im[0:890,:] im_gray = im2 else : im2= im[0:890,:] im_gray =cv2.cvtColor(im2,c…

Scikit-Image

scikit-Image http://scikit-image.org/ from skimage import io io.use_plugin('qt') img= io.imread('baboon.jpg') io.imshow(img,fancy=True) io.show() Fancy =True でXYの位置やRGBやHSVの値が出るモードになる。 使い方によっては便利かも。

Sublime text2の環境構築2

sublime textでmatplotlibやopencvを実行する。 sublime textを立ちあげ、 Preferences⇒packages folder⇒ python⇒Python.sublime-build を開く { "cmd": ["python", "-u", "$file"], "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", "env":{"PYTHONP…

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…

日本語のエンコードエラー

UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128) と出る場合の対策。 site-packageフォルダに下記の sitecustomize.py を作成 import sys sys.setdefaultencoding("cp932")

ggplot2メモ書き(ヒストグラム)

R

データの可視化を目的に、ヒストグラムの検討。 表現を変えて見比べてみる。 まずはデータ取り込みと準備。 fillでグルーピング設定をする。 require(reshape) require(ggplot2) syukei <- read.table("clipboard",header=TRUE) syukei.m <- melt(syukei,id=…

ggpairsの使い方

後で編集予定。 デモデータの挙動が?だったので自分のデータを使用。 library(GGally) ggpairs( ggpairs_demo[,1:3], upper = list(continuous = "cor", combo = "dot"), lower = list(continuous = "smooth", combo = "dot"), ) 箱ひげやヒストグラムが自…

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

残念データの統合と解析をすることに。 時間ごとにフォルダ分けされ、残念さが増している。 pythonでファイルを統合 import glob import os os.chdir('c:\\Users') f=open('c:\\Users\\workfile.txt','a') for name in glob.glob('\*\*.txt'): for list in o…

rChartsのインストール

R

rChartを入れてみる。 ggplot2は素晴らしいのだけれど、二軸が使えない。 RでHighChartを扱うrChartsを入れてみる。 github https://github.com/ramnathv/rCharts インストール > install.packages("devtools") > library(devtools) > install_github('rCha…

Sublime text2でコード補完をtab選択し、Enterで決定

Sublime text2のコード補完デフォルトが十字キーで使い辛い。 Tabで選択+Enterで決定するための設定を行う。 方法 Preferenceのキーバインド⇒ユーザーにて、下記の項目を追記 { "keys": ["tab"], "command": "auto_complete", "context": [ { "key": "auto_c…

Sublime text2の導入と環境構築

今までvimを使っていたが、cssやhtml、markdown等に弱かった。 (ブラウザのリロード地獄) 操作でvimと一部互換性があるsublime text2に乗り換えを実施。 乗り換えた結論を言えば素晴らしいの一言。 ただし、シェアウェアなので注意。 1. インストール http…

Apacheのエイリアス設定

Apacheの短縮表記法について。 他のサーバー参照を参照したり正規表現が使えて変化に強く Apacheが障害に強い要因の一つなんだそうだ。 httpd.conf Alias /static/ "C:/HPLC_database/myproject/static/" httpd.confはWindowsの場合「 " 」で囲む場所と 不要…

python(Django)とapacheの連携(mod_wsgi)

DjangoとApacheで苦戦したのでメモ Apacheはここで落とす http://www.apachelounge.com/download/ wsgiと合わせる必要あり。32bit版推奨。展開して任意のフォルダへ。 WindowsならCドライブ直下に置くとhttp.confの編集量が減る。 mod_wsgiはココから落とし…