2009-02-01[n年前へ]
■Objective-CとCocoaフレームワーク・・・勉強中
「自作アプリをApp Storeで世界に向けて販売できる!! iPhone SDKプログラミング大全 (MacPeople Books)」を読み、iPhoneプログラミングの勉強中です。そんな中、Objective-Cという言語をもっと「高尚な言葉を使わないで」説明した本を読みたいと感じました。それは、「ぶっちゃけた解説」を読みたい、という感じに似ています。
たぶん、その思想を理解できれば思想通りの表現を素直に読み進めることができそうなのでしょうが、プログラミング素人からすると、何だか今ひとつ言葉が過剰に思えてモヤモヤ感が残るのです。
たとえば、id型のオブジェクトと言われても、・・・それはもしかしてただの(void*)?と思ってしまいます。そして、何だか過剰に難しい言葉で解説されたC言語に思えてきてしまったりするのです。また、Cocoaフレームワークも、高機能なのはわかる・・・った気になれても、書かなければいけないイベントハンドラーが多いようにも感じてしまうのです。
せめて、必須のメソッドくらい、少なくともメソッドのひな形くらいは、自動でコード生成してくれないのだろうか、と溜息をつきたくなります。OSXプログラミングで楽しめるようになるためには、まだまだ、まだまだ覚えなければならないことが多そうです。
2009-05-18[n年前へ]
■MacRubyでGUIアプリ開発、デモンストレーション
公開されたスクリーンキャストではMacRubyやCocoa、Objective Cの説明をおこなったあとで、実際にXcodeとMacRubyを使ってMac OS Xでネイティブに動作するGUIアプリケーションを開発するデモンストレーションが掲載されている。Xcodeのインタフェースビルダを使いながら RubyでGUIアプリの開発が実施されている様子が興味深い。
2009-09-22[n年前へ]
■iPhoneでOpenCVを動かす/iPhoneでOpenCVを使う方法
iPhoneでopencvを動かす/iPhoneでOpenCVを使う方法
iPhoneでOpenCVを動かしたいと言う事で、調べてみると色々と情報が出てくるんですが、それでもハマったのでメモ書きです。
覚え書きとして、OpenCVをiPhone SDKをつかってiPhone上で使う方法を、ビルドスクリプトとデモアプリケーションつきでメモしておきます。
2012-11-01[n年前へ]
■iPad上で使うLua言語プログラミング環境Codeaでネイティブ・アプリを作ってみよう!?
Lua言語を使いiPadアプリをとてもお手軽に作成することができるCodea(Codify)がランタイムライブラリを使うことでApp Storeに出せるネイティブアプリを作成できるようになったということで、その手順を確認してみました。
Codeaのランタイム・ライブラリをダウンロードすると、その中にXcodeプロジェクトを作成するシェルスクリプト(make_project.sh)があります。そこで、
make_project.sh hogeとタイプして、Xcodeプロジェクトと必要なファイル群を生成します。エミュレータで動かすのなら関係ありませんが、このhogeはアプリケーションのBundle Identifier にも使われます。
その後、Xcodeプロジェクトを開き、ClassesからProject.codeaを削除した上で、(iExploerなどで)iPad内のCodeaディレクトリ内から(ネイティブ・ビルドしたい)プロジェクトファイルをOSX側にコピーした上で、プロジェクトファイルをProject.codeaとリネームして、XcodeのClasessフォルダに(フォルダー・リファレンスを行わせた上で)コピーします。つまり、単にデフォルトのProject.cocoaを(ネイティブ・ビルドしたい)プロジェクトファイルで入れ替えます。
あとは、ターゲットを選んだ上でビルドすると…ターゲット上でCodeaネイティブ・アプリが転送され、走り始めます。たとえば、右のスクリーンショットはiPad2でサンプルのゲーム・コードをネイティブビルド&実行してみたところです。
Lua言語でproce55ingのAPIを参考にして作られている…というCodea環境をいじってみたくなる人も多いに違いない…というわけで、Codeaでネイティブ・アプリを作る手順を実際に追いかけてみました。
2017-05-30[n年前へ]
■機械学習による姿勢推定openposeで「妄撮カメラ iOS版(ネイティブアプリ)」を作ってみる!?
10日くらい前、機械学習により画像に写る人体の姿勢を推定するアルゴリズム(コード)のopenposeを使い、画像に写る人の衣服を妄想的に脱がす画像処理ソフトを作ってみました(ディープラーニングによる姿勢推定openposeで「男子の夢な(衣服の下を透視する)妄撮カメラ」を作ってみよう!?)。そして、先週末は、そのソフトをiPhoneから自由自在に使うことができるように(カメラを備えたクライアントiPhone側と機械学習や画像処理を行うサーバ側双方の)Pythonコードを書いてみました(ディープラーニング姿勢推定openposeで「妄撮カメラ iOS版」を作ってみる!?)。
書いたPythonコードはここに置いておきます。下記2ファイルのうち、前者がサーバ側ファイルで、後者がiOSアプリたるPythonistaコードです。前者は jupyter notebook ファイルなので、jupyterからコードを実行すると、8080ポートでopenposeを使った妄撮(姿勢推定・類似姿勢検索・画像合成)サービスが起動します。そして、後者がiOS上で動くPython(Pythonista)で実装した、妄撮サーバ機能を使うことができるカメラアプリコードです。
- boysCamera.ipynb.20170530
- boysCamera.py.20170530
とはいえ、これだけでは先週末に書いたコードをアップロードしただけ…ということになってしまうので、今日はPythonistaコードをiOS用ネイティブアプリケーションにする方法についても書いておきます。
まずは、Pythonista用のXcodeプロジェクトをダウンロードします。そして、プロジェクト中の main.py に自分が書いたiOS用Python(Pythonista)コードを貼り付けます。そして、Xcodeでプロジェクトをビルドした上で、ビルドされたアプリケーションをiOSデバイスに転送すると、iOSデバイス上でネイティブアプリケーションとして妄撮カメラを使うことができるようになります。
…というわけで、ネイティブにビルドした妄撮カメラアプリケーションを使って、中二男子大好きな妄想撮影をしてみたようすが、下に貼り付けた動画です。深夜ドラマだった懐かしの「トリック」主人公の姿さえ、透撮できてしまうことに驚きます。
試してみると強烈に実感しますが、現実世界と妄想世界を(中二男子的に)重ね合わせる「妄撮カメラ」アプリケーションは、実に強烈なMR/ARアプリケーションです。…こうしたアプリケーション、ライセンス的に誰もが使用可能なデータベースやソフトウェアコードを書けば、(中二男子に限って言えば)世界を変えるキラーアプリケーションになるかも!と思ったり思わなかったりします。