Python

FlaskとjQueryでJSONのやりとり

FlaskとjQueryでのJSONのやりとりについて。 サーバからJSONを受け取るサンプルはよく見かけるんだけど、サーバにJSONを送るものがあまりなかったので。Flask ... @app.route('/test', methods=['POST']) def test(): if request.method == 'POST': data = r…

mod_wsgiでアプリごとにvirtualenv環境を設定する

環境は以下。 ubuntu 10.04 amd64 apache2 2.2.14 mod_wsgi 3.3 python 2.7.2 (pythonbrew) flaskでやってみます。 前準備 まずpythonbrewでvirtualenvで環境をつくる。 $ pybrew venv create -p 2.7.2 --no-site-packages test $ pybrew venv use -p 2.7.2 …

pythonbrewで--configure="--enable-shared"したときの注意

--configure="--enable-shared"するとsetuptoolsのインストールで止まる。 .soファイルのリンクが辿れない感じ。だいたいここに書いてあることと一緒。 build - Problems compiling Python 3.2 and 2.7 using pythonbrew $ pythonbrew install --configure="…

Flaskアプリをwsgiでデプロイするときのパス設定

app.wsgi import sys, os sys.path.insert(0, os.path.abspath(os.path.dirname(__file__))) from main import app as application 毎回パス指定するのは面倒なので。 wsgiで動かすときはFlaskアプリ内でも絶対パスを使う必要がある。main.py ... app = Flas…

画像の色空間をHSVへ変換、操作

cvtColorの使い方がcv2(OpenCV2.3)になってちょっと変わっていたのでメモ。 >>> import cv2 >>> import numpy >>> src = cv2.imread('src.jpg', 1) >>> dst = numpy.zeros(src.shape, dtype=numpy.uint8) >>> dst = cv2.cvtColor(src, cv2.COLOR_BGR2HSV) #B…

画像の一部を切り抜いて保存

OpenCV2.3でndarrayを利用する。 >>> import cv2 >>> x = 200 #cols >>> y = 200 #rows >>> width = 100 >>> height = 100 >>> src = cv2.imread('src.jpg', 1) >>> dst = src[y:y+height, x:x+width] >>> cv2.imwrite('dst.jpg', dst) TrueC++の場合: 画像…

OpenCV2.3のインストールでハマった話

OpenCV2.3のPythonバインディングはnumpyが入っている必要があるっぽい。 CentOS 5.7 Python 2.6.7 OpenCV 2.3.1 うちの環境では/opt以下にPython(2.6, 2.7)を入れてvirtualenvで切り替えているのですが、numpyはいつもvirtualenv下のpipで入れていました。 …

CvMatについて

公式リファレンス(2.2)でCvMat使ってたので、Pythonから使うときはCvMatの方が良いの? という感じでCvMatの仕様を調べてみる。 # Numpyと連携ができるから、とかかもしれない 要素 type 型。CreateMatなどで指定するCV_8UC3なんかの値。 rows 行数。height…