pylibloをインストールする
pythonで文字列から一部の文字を削除した文字列を作成する
reモジュールを使って,正規表現で分割してからjoin()で結合する.
例えば,文字列からaとbとcを削除する.
import re word = "teabaarbnaetaghaerdccccaa" print "".join(re.split(r"[abc]", word)) # ternetgherd
C++で四捨五入する
小数点第一桁で四捨五入したい場合は,0.5を足してからint型に変換(切り下げ)すればいい.小数点第n桁以下で四捨五入したい場合は,10n - 1倍してから,0.5を足してint型に変換.その後,10n - 1で割り直す.
#include <cstdio> int main(){ float f1 = 5.4; printf("%f\n", float(int(f1 + 0.5))); // 5.000000 float f2 = 3.8; printf("%f\n", float(int(f2 + 0.5))); // 4.000000 float f3 = 2.63; printf("%f\n", float(int(f3 * 10 + 0.5)) / 10); // 2.600000 float f4 = 7.2567; printf("%f\n", float(int(f4 * 100 + 0.5)) / 100); // 7.260000 }
XcodeでOpenCVのサンプルを動かす
openCVは,Homebrewを使ってインストールする.
brew install opencv
Xcodeのプロジェクトを作成する.
Xcodeの「Project > Building Settings > Search Paths > Header Search Paths」に「/usr/local/Cellar/opencv」を追加し,設定を「recursive」にする.
「Project > Build Phases > Link Binary With LIbaries」に以下の三つのファイルを追加する.同じファイル名のものが「/usr/local/lib」にもあるが,そっちを追加すると上手くいかないので注意.
- /usr/local/Cellar/opencv/2.4.12/lib/libopencv_core.2.4.12.dylib
- /usr/local/Cellar/opencv/2.4.12/lib/libopencv_highgui.2.4.12.dylib
- /usr/local/Cellar/opencv/2.4.12/lib/libopencv_imgproc.2.4.12.dylib
ここからサンプルプログラムをコピペしてきて動いたら,OK.
opencv.jp - OpenCV: ビデオ入出力(Video I/O)サンプルコード -
参考
openFrameworksで現在のfpsを調べる方法
Javaで同じRandom seed値を用いてるのに,プログラムの挙動が異なるとき
プログラムで同じRandom seed値を用いているはずなのに,プログラムの挙動が異なるときがある.
そのようなときはRandomが問題ではなく,HashMapをforループなどで繰り返していることによるランダム性が問題の可能性がある.
HashMapは順序を保証しないため,プログラムを走らすごとに順番が変わる可能性がある. 対処方法としては,順序を保証するLinkedHashMapを使うなど.