ケンコー・トキナーの PRO1D R72 (赤外線透過フィルター) を使った風景写真が面白い。撮影や加工のコツがまだまだ掴めないけど、適当にやってもそれなりに不思議な感じに仕上がる。
samples/c/facedetect.cpp" をベースに、検出された顔の領域にモザイクをかけるようにしてみた。コードはgist:1148913へ。
$ sudo port selfupdate$ sudo port install opencv#include <opencv/cv.h>
#include <opencv/highgui.h>
IplImage* doCvGray(IplImage* in);
IplImage* doCanny(IplImage* in, double lowThresh, double highThresh, double aperture);
int main (int argc, const char * argv[])
{
cvNamedWindow ("Capture", CV_WINDOW_AUTOSIZE);
cvNamedWindow ("Edge", CV_WINDOW_AUTOSIZE);
CvCapture *capture = cvCreateCameraCapture(0);
assert(capture != NULL);
IplImage *frame = 0;
IplImage *out = 0;
int c;
while (1) {
frame = cvQueryFrame (capture);
out = doCvGray(frame);
out = doCanny(out, 10, 100, 3);
cvShowImage("Capture", frame);
cvShowImage("Edge", out);
cvReleaseImage(&out);
c = cvWaitKey (2);
if (c == '\x1b')
break;
}
cvReleaseCapture (&capture);
cvDestroyWindow ("Capture");
cvDestroyWindow ("Edge");
return 0;
}
IplImage* doCvGray(IplImage* in){
IplImage* out = cvCreateImage(cvGetSize(in), IPL_DEPTH_8U, 1);
cvCvtColor(in, out, CV_BGR2GRAY);
return out;
};
IplImage* doCanny(IplImage* in, double lowThresh, double highThresh, double aperture){
IplImage* out = cvCreateImage(cvGetSize(in), IPL_DEPTH_8U, 1);
cvCanny(in, out, lowThresh, highThresh, aperture);
return out;
};はい、エッジ検出できておりますwProject Euler is a series of challenging mathematical/computer programming problems that will require more than just mathematical insights to solve. Although mathematics will help you arrive at elegant and efficient methods, the use of a computer and programming skills will be required to solve most problems.要は、プログラミングで解く数学パズル、みたいなもの。WEB上に用意された沢山の問題を一つづつ解いていく。ちなみに、他のユーザが書いたコードを見ることもできて、ちょっと勉強になったりもする。
About Project Euler - Project Euler
package euler;
public class Solver001 implements Solver
{
public String solve()
{
int sum = sum(3, 1000) + sum(5, 1000) - sum(15, 1000);
return Integer.toString(sum);
}
public int sum(int base, int max)
{
int n = (max - 1) / base;
return base * n * (n+1) / 2;
}
}ま、あまり設計とか考えずにmain関数ベタ書きでよかったかも -_-;CREATE TABLE WifiLocation (
MAC TEXT,
Timestamp FLOAT,
Latitude FLOAT,
Longitude FLOAT,
...(略)...
PRIMARY KEY (MAC)
);
CREATE TABLE CellLocation (
MCC INTEGER,
MNC INTEGER,
LAC INTEGER,
CI INTEGER,
Timestamp FLOAT,
Latitude FLOAT,
Longitude FLOAT,
...(略)...
PRIMARY KEY (MCC, MNC, LAC, CI)
);文字通り、Timestampは時刻、Latitudeは緯度、Longitudeは経度を意味している。PRIMARY KEY指定されてるWifiLocationのMACとCellLocationの(MCC,MNC,LAC,CI)。MACは、おそらくWi-FiアクセスポイントのMACアドレス。一方の(MCC,MNC,LAC,CI)は、ケータイ基地局のIDに該当するようなものではないだろうか。要は、Wi-FiアクセスポイントMACアドレスとケータイ基地局IDは、それぞれのテーブルの中で重複が許されないってこと。Timestamp)は、測位されたときの時刻ではなさそう。なので、ライフログとしてはあまり使えなさそう。あと、僕のデータにはアクセスポイントが15万件以上リストされていた。10ヶ月でそれだけの個数のアクセスポイントに遭遇していたのだとすると、ちょっと驚き。
Bloggerには閲覧者を制限する機能があって、プライベートなブログを作るには便利。なんだけど、ちょっとした不便がある。それは『閲覧制限をかけると記事やコメントのフィードが生成されない』というもの。ちょっと古いけど、こんな関連記事もチラホラ見かけられる。本文は特定の人以外に公開したくないけど、記事のタイトルやコメントが付いたことくらいはフィードリーダーで確認できたら便利だなぁ、という人、少しくらいはいそうだ。というより、僕が便利だ!w
- clmemo@aka: Blogger にアクセス制限をかけるとフィードが生成されない
- Member Only Permissions - Site Feed Possible? - How Do I? | Google グループ
Bloggerで閲覧制限したブログのフィードを公開する方法 - cyclic landscape