HOME > CONIT Labs.

CONIT Labs.

初めまして。コニット新人の岩田です。


こんにちは。岩田です。
本日で、入社1週間が経ちました。
これからいろいろと面白いことを書いていきたいと思いますので宜しくお願いいたします。
早速ですが、今回はiPhoneでOpenCVライブラリを使用し、実機で試すまでを書きます。
まず、OpenCVとは、
Intel Open Source Computer Vision Library の略で米 Intel 社で開発された画像処理・画像認識用のC言語ライブラリ。オープンソースであり、商用・非商用を問わず無料で使用できる。静止画にも動画にも対応しているため、特にロボット工学やバイオメトリクスの研究によく使われています。プラットフォームは Linux(Intel C Compiler、GNU C)と Microsoft Visual C/C++などその他にも使用できるみたいです。
iPhoneでは写真を加工/編集するアプリがいろいろ出ていますが、今後ライブビュー機能が加わることもあり、画像処理はとても有用になると思います。
そんな理由で、今回はOpenCVライブラリをiPhoneに組み込んで、カメラで写真を撮り、顔認識機能を試すまでを紹介します。
まず開発環境の準備ですが、
1.finkをインストール
2.OpenCVのインストール
3.その他の設定
4.XCodeの設定
などいろいろあるのですが、以下のサイトを参考にしました。(この情報だけでいけると思います)

http://www.vogue.is.uec.ac.jp/~den/OpenCVForMac.txt(ありがとうございます)

環境を終えたので、顔認識機能を組み込んでみました。顔認識機能はこちらのOpenCVの
サンプル集から拝借しました。(豊富なサンプルコードがあるためとても有効です)

http://opencv.jp/sample/object_detection.html#face_detection

ただサンプルをコピペして実行しても、達成感はないので画像処理のアルゴリズムを理解するように
しましょう。意外と難しくないことが多いと思います。
*注意点としては、
iPhoneではフレームワークとして、OpenCVライブラリを切り出してもダイナミックリンクしてくれません(実機では)なので、リソースを考慮して必要なヘッダだけを静的リンクするようにしてください。
また、OpenCVでは、IplImage構造体使いますが、iPhone SDKはUIImageがそれに対応します。よってこれらを置き換える必要があります。
しかーし、iPhone SDKには既にこのAPIをすでに持っていますので安心してください。
IplImageをUIImageから変換は、
- (IplImage *)CreateIplImageFromUIImage:(UIImage *)image
UIImageをIplImageの変換は、
- (UIImage *)UIImageFromIplImage:(IplImage *)image  です。
長くなりましたが、出来た画像は以下です。これは実機で撮って顔検出ボタンを押して、検出
したときの画像です。青枠で検出しているのがわかると思います。

とてもかわいいと思います。。

仕事場を効率化する6つのコツ


こんにちは。阿久津です。
仕事場を効率化する6つのコツという、興味深い記事をみつけたので
現状の自分を採点してみました。
元記事:http://www.lifehacker.jp/2009/07/gina6.html
1.机の上を片付ける
× 今自分の仕事場の机の上には、Dellノートパソコン・MacBook・iMacと置いてあり
  これらだけでもかなり場所をとっている。
  さらに、細々したものやケーブル類などとにかくごちゃごちゃだ!!
 
2.頻繁に使うものだけ近くに置く
 △ 基本的には、使うものだけ近くにおいてあるが、まだまだ不要なものもふくまれているかなぁ
3.持ち歩きグッズや郵便物は固定の場所を作ろう
 × 持ち歩きグッズ(携帯電話)机の上に散乱している。
   郵便物類もまとめるところを特に作っていない・・・
4.関連するものはまとめて置く
 ○ ペンとかは、ペン立てに入れている。
   しかし、もう少し整理整頓をしたいなぁ〜
 
5.自分が心地よい状態にする
 × 上記の×△だらけの状態からして、心地よいとはいえないんだろう・・・
6.仕事に応じて仕事場も調整する
 × たまにペーパーワークがしたいときなど、1にあげた3台のパソコンが
   邪魔をしている・・・
ん〜 この6つのコツからすると、自分の仕事効率はとことん駄目ということになるんだろう。
やはり、ここは気持ちよくするために整理整頓をしたいと思う!!
ということで、私にキャビネットを与えてくれ〜

若者よ他人のソースを見よ!


こんにちは佐々木@開発チームです。
ある程度一人で開発が出来るレベルに達した人は、
他人のソースコードを読んで解析してください。
もちろんプログラミングのトレーニングの為です。
とある課題を解決するために、自分のやり方と
プロのコードはどこがどう違うのかをはっきりとさせます。
なぜ、その作者はそのようにしているのか?
で、どちらの方が良いのか?(パフォーマンス面、開発スピード面など)
を調べて、自分の引き出しにしまい込みます。
もし、Javaをターゲットとして勉強しているならば、
まず、JDKのソースコードを見ましょう。(VMのソースじゃないですよ)
データ構造についての引き出しを大きくする為には、
java.util.* のソースコードを読んで理解すればかなりのレベルアップとなるでしょう。
また、java世界にはApache、Jakartaなどのリーディンググループがあります。
ここでは、自分のコードとプロのコードを比べるトレーニングが良いでしょう。
HTTPプロトコルを使ったアプリを作りたいときには、
commons.httpClientなどのソースと、同じ処理をする自分が書いた汚いコードを
見比べてみましょう。
どちらが、どのように、見やすく、効率の良いコードを書いていますか?
サーブレットコンテナや、EJBコンテナなど
フレームワーク系を将来作ってみたい人は、
Tomcatや、Jeronimoなどのソースを探ってみましょう。
JDBCのようなプラグイン形式で機能を提供する仕組みを知りたい場合も、
mysqlのjdbcクラスのソースや、DriverManagerなどのソースを読んでみましょう。
やれオブジェクト指向だ、やれアスペクト思考だと
難解な文書で書かれている分厚い本を読むよりは
よっぽど勉強になりますし、将来にわたって使えるアルゴリズムの知識が身につきます。
しかし対人間で、会話をする際にはこのような難解で種類豊富な用語が必要になります。
それだけ、プログラミングのアプローチ方法が思想的なものであると言えます。
私とあなたで、プログラミングに対しての思想を合わせないと、
コンテキストの同期化をした後でないと、私とあなたで話が合わなくなってしまうのですね。
プロのコード読みトレーニングを是非してみてください。
なぜ、HashMapはHashでやるのか。
なぜ、BufferedReaderが必要になったのか。
かつ、BufferedのクラスがあるのにUnBufferedなクラスも存在するのはなぜか。
なぜ、Serializableのような空っぽのインターフェースは存在するのか。
なぜ、ServletFilterが追加されたのか。
なぜ、XMLは設定ファイルに便利なのか、なぜ、テキストファイルではダメなのか。
なぜ、SSHはTELNETに比べて安全なのか。
なぜ、エンタープライズユーザは、高いお金を払ってベンダーとサポート契約を結ぶのか。(ろくにサポート受けるわけでもないのに)
とか考える機会をもってください。

コニット開発室

CONIT Official Tweet

CONIT Facebook FanPage

CONIT BLOG

株式会社コニット

SamuraiSmartphoneServices

Buy and take only medicines from online pharmacy ,]}$ drugs online has affordable prices. Brand name drugs Canadian pharmacy [*}: compare drug prices Canada delivering medicines at your door. Free online consultation at https://canada-pharmacy-store.com <;) order cialis highest value and quality. Is it legal to mail prescription drugs? Yes, Canadian drugs [.($ order viagra . After ordering you will be contacted by our managers and agree on the delivery details.