Python 2.5から、ctypesというライブラリが標準ライブラリに追加されました。このライブラリは、Cの関数をPython用にラッピングしてくれるライブラリで、PythonからCのライブラリ(.soとか.aとか.dllとか、環境による)中の関数を「直接」呼び出すことができます。 似たような仕組みには、SWIGや、PythonのC拡張モジュールなどがありますが、ctypesはそれらの仕組みと比べ、圧倒的に手軽なのが売りです(だと思います)。 たとえば、Python 2.5以上であれば、インタラクティブモード上で、 >>> from ctypes import * >>> libc = CDLL("libc.so.6") >>> libc.puts("hello ctypes") hello ctypes 13 のように、いきなりlibcのputs関数を呼び出すことができます(インタラク
HDEラボの桜井です。 もう11月、札幌は雪が降ったとか。 さて、今回はPythonの修行がてら、OpenCVを使って顔認識プログラムをやってみました。 OpenCVとは、Intelが開発・公開しているオープンソースのCVライブラリです。 まずは、実際に動作を見てみましょう。 下のテキストボックスにJPEG画像のURLを入力して、「顔認識」ボタンを押します。 ※認識できない場合もあるので、結構はっきりとした顔のある写真でやってみてください。 # wget http://downloads.sourceforge.net/opencvlibrary/opencv-1.1pre1.tar.gz?modtime=1224465510&big_mirror=1 # tar zxvf opencv-1.1pre1.tar.gz # cd opencv-1.1pre1 # ./configure --
Pythonにはじめて触って、いつのまにか1年が過ぎたのですが、一番はまったのは、やっぱりunicodeの扱いだったと思います。 特に、 UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-12: ordinal not in range(128) のようなエラーにはさんざん悩まされました。ここがたとえばrubyなど他の言語と比べてわかりにくいために、Pythonが取っつきにくい言語になっているのではないか、と個人的には思います。 そこで、このエラーに関係するはまりどころとTipsをいくつか列挙してみました。これからPythonに触れられる方の参考になればと思います。 なお、環境はUNIX上のPython 2.4, 2.5を想定しています。 u1はunicode型で、s1はstr型です。s1にどのよ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く