タグ

ブックマーク / qiita.com/shu223 (27)

  • iOSのMetalで畳み込みニューラルネットワーク - MPSCNNを用いた手書き数字認識の実装 - Qiita

    MetalでCNNの計算を行うためのAPI群、MPSCNNを用いた手書き数字認識のサンプルを読む、という記事の続きです。 iOS 10でMetal Performance Shadersフレームワークに、CNN(Convolutional Neural Network)演算機能群が追加されました。iOSデバイスのGPUで畳み込みニューラルネットワークの計算をさせることができる、という代物です。 前編ではネットワークの中身には踏み込まず、オーバービューとして利用するアプリケーション側の実装について見ていきました。 後編となる記事ではいよいよMetal Performance Shadersを用いたCNN(Convolutional Neural Network / 畳み込みニューラルネットワーク)の実装について見ていきます。 なお、CNN自体の解説はここでは省略しますが、概念をざっくり理解

    iOSのMetalで畳み込みニューラルネットワーク - MPSCNNを用いた手書き数字認識の実装 - Qiita
    kasumani
    kasumani 2016/12/28
    iOSのMetalで畳み込みニューラルネットワーク - MPSCNNを用いた手書き数字認識の実装 MetalでCNNの計算を行うためのAPI群、MPSCNNを用いた手書き数字認識のサンプルを読む、という記事の続きです。 Tags: from Pocket December 28, 2016 at 10:
  • Swiftで書かれたOCRライブラリ「SwiftOCR」をiOS実機で試してみた - Qiita

    Tesseractよりも速く、高精度で、CPU負荷は小さく(つまりバッテリー消費も少なく)、メモリもわない、と良いことづくめ。 READMEに書いてありますが、Connected-component labelingという手法を用いているそうです。 First, SwiftOCR binarizes the input image. Afterwards it extracts the characters of the image using a technique called Connected-component labeling. Finally the seperated characters get converted into numbers which then get feed into the neural network. 別の作業をしていてたまたま見つけたのです

    Swiftで書かれたOCRライブラリ「SwiftOCR」をiOS実機で試してみた - Qiita
    kasumani
    kasumani 2016/08/25
    Swiftで書かれたOCRライブラリ「SwiftOCR」をiOS実機で試してみた OCRエンジンをつくるのはそれなりに大変そうだし専門知識も必要そうなので、それがよほどのコア技術となるような会社/プロダクトでもない限りあまり自前実
  • BLEのファームを簡単に書けるスクリプト「BGScript」の開発環境をMacに構築する - Qiita

    新規でウェアラブルデバイスや、スマートフォンと連携する何らかのIoT系ガジェット等を開発するプロジェクトでは、なかなかハード側ができてこなかったり(やはりソフトよりは格段に時間がかかる)、試作機の台数がなかったりして、スマートフォンアプリ側からBLEで実機と繋げての動作検証が難しいケースが多々あります。 そんなときに役立つのが、BLEモジュールを提供する各社が販売している「開発キット」というものです。 たとえば今回紹介する Bluegiga 社の「BLE112」「BLE113」の Development Kit は、ディスプレイ・USBインターフェース・バッテリーボックス・デバッガ・確認用のセンサ等々、BLEモジュールの開発・検証に必要な諸々がボードにビルトインされており、細々と部品を集めて回路を組んだりしなくても、買ってすぐに BLE モジュールのファームウェア開発を始められるようになっ

    BLEのファームを簡単に書けるスクリプト「BGScript」の開発環境をMacに構築する - Qiita
    kasumani
    kasumani 2014/12/08
    BLEのファームを簡単に書けるスクリプト「BGScript」の開発環境をMacに構築する 新規でウェアラブルデバイスや、スマートフォンと連携する何らかのIoT系ガジェット等を開発するプロジェクトでは、なかなかハード側ができて
  • iOS - 「顔以外」のものを画像認識する - Qiita [キータ]

    iOS SDK では Core Image の CIDetector クラスで簡単に顔認識をおこなうことができます。iOS 7 からは、笑顔やまばたきの検出も可能に なりました。 が、CIDetector は detectorOfType:context:options: というメソッドの第1引数で Detector Type を指定できる設計になっているものの、 Detector Types - CIDetector Class Reference と、4つしか定義されてないので、結局のところ 顔・矩形・QRコード・文字領域しか認識できません。 ##車やロゴや犬やネコを認識する OpenCV には顔検出用の手法として、 Haar分類器 というものが実装されています。 この手法の詳細はここでは省略しますが、この手法は、 顔検出だけでなく、車やペット等、さまざまな対象を検出 するのに広く使用

    iOS - 「顔以外」のものを画像認識する - Qiita [キータ]
    kasumani
    kasumani 2014/12/08
    「顔以外」のものを画像認識する iOS SDK では Core Image の CIDetector クラスで簡単に顔認識をおこなうことができます。iOS 7 からは、笑顔やまばたきの検出も可能に なりました。 Tags: from Pocket September 12, 2016 at 05:46AM via IFTTT
  • Xcode 6 時代のマルチデバイス対応 ~Size Classとベクター画像~ - Qiita

    Xcode 6 の新しい仕組みである Size Class を使い、 iPad (Universal) iPhone 6 (4.7 inch) iPhone 6 Plus (5.5 inch) の複数画面サポートを行なった際の断片的なメモ集です。 同じく Xcode 6 から Asset Catalog でベクター形式がサポート されるようになったので、こちらについてわかったこと等も書いてあります。 ※ちなみに Size Class やベクター形式画像の使用は iOS 8 以上縛りではありません。単に Xcode 6 の新機能というだけなので。 前提知識をつける Size Classsとは クラスメソッドさんの下記記事が日語、図解入りでとてもわかりやすいです。 マルチデバイス対応の新機能「Trait Collection」 Size Class 機能を使って複数画面サイズ対応する手順のチ

    Xcode 6 時代のマルチデバイス対応 ~Size Classとベクター画像~ - Qiita
    kasumani
    kasumani 2014/11/13
    Xcode 6 時代のマルチデバイス対応 ~Size Classとベクター画像~ 同じく Xcode 6 から Asset Catalog でベクター形式がサポート されるようになったので、こちらについてわかったこと等も書いてあります。 Tags: from Pocket November 13, 2014
  • Google Maps SDK for iOSの導入手順 - Qiita

    アプリ内で Google Maps を使用するための SDK、"Google Maps SDK for iOS" の導入手順です。 公式情報は Google Developers にあります。 ##1. API Keyを取得 Google APIs Console の Services タブで、Google Maps SDK for iOS を ON にする。 API Access タブで、"Create new iOS key" ボタンをクリック。ポップアップで出てくるウィンドウに、Google Maps SDK for iOSを使用するアプリのBundle identifierを入力する。 ##2. SDK をプロジェクトに追加 GoogleMaps SDK for iOS をダウンロード Getting the Google Maps SDK for iOS GoogleMaps.f

    Google Maps SDK for iOSの導入手順 - Qiita
    kasumani
    kasumani 2014/11/07
    Google Maps SDK for iOSの導入手順 この投稿はObjective-C Advent Calendar 2012の14日目の記事です。 13日目:MKMapKitでとにかくピンを突き立てるサンプル 15日目:iPhone 5にPJSIPを組み込む この投稿はObjective-C Advent Calendar 2012の14日目の記事です
  • フリーの iOS 向け音声認識/音声合成ライブラリ『OpenEars』の使い方 - Qiita [キータ]

    OpenEars は Politepix 社より提供されている フリーの iOS 向け音声認識音声合成Text to Speech, TTS)ライブラリ です。 OpenEars 話した言葉を認識したり、 入力した文字列を読み上げ たり(mac の say コマンドみたいなもの)することができます。 試してみたところ超簡単に使えたので、自分のアプリに OpenEars を導入する方法を紹介します。 (2014.3.31追記) OpenEars 最新バージョンでの音声認識の導入方法については次の記事をご参照ください:『OpenEars 1.6で音声認識を行う』 音声合成の導入方法 フレームワーク追加、ヘッダインポートといった一般的なライブラリの導入手順をのぞけば、基的には メソッドを1つ呼ぶだけ で導入できます。 1. フレームワークをプロジェクトに追加 解凍したフォルダ配下にある F

    フリーの iOS 向け音声認識/音声合成ライブラリ『OpenEars』の使い方 - Qiita [キータ]
    kasumani
    kasumani 2014/11/05
    フリーの iOS 向け音声認識/音声合成ライブラリ『OpenEars』の使い方 話した言葉を認識したり、 入力した文字列を読み上げ たり(mac の say コマンドみたいなもの)することができます。 試してみたところ超簡単に使えたの
  • iOSアプリ開発に役立つTips100連発! - Qiita

    1年半ほどコツコツと書きためてきた iOS アプリ開発 / Objective-C 関連の Tips をカテゴリ別にまとめてみました。 数が多いので、オススメのものを太字にしてあります。 (更新情報 2012.8.11)ちゃんと数えてみたら88個しかなかったので、20個ほど追加しました。 (追記 2013.10.1) 記事をきっかけに秀和システム社よりお声がけいただき、書籍を執筆 させていただきました。iOS開発に役立つTips集です。ぜひ下記ページより 目次を見ていただき、興味のある項目がありそうであれば ご購入いただけるととても嬉しいです。 『iOSアプリ開発 達人のレシピ100』というを書きました ライブラリ/フレームワーク ゲームアプリ向け UI コンポーネントセット "UIKitForGame" ゲームアプリをつくる際に便利な UIKit のカテゴリ/サブクラスの詰め合わせラ

    iOSアプリ開発に役立つTips100連発! - Qiita
    kasumani
    kasumani 2014/11/04
    iOSアプリ開発に役立つTips100連発! 1年半ほどコツコツと書きためてきた iOS アプリ開発 / Objective-C 関連の Tips をカテゴリ別にまとめてみました。 (更新情報 2012.8.11)ちゃんと数えてみたら88個しかなかったので、20個ほど
  • CIKernel を使用してCore Imageのカスタムフィルタをつくる - Qiita

    Core Image の CIFilter を使うといろいろなフィルタ処理(画像処理/画像加工)ができますが、iOS 8で CIKernel というクラスが追加され、そのフィルタ(CIFilter)を自作できるようになりました。 以下、CIKernel のフィルタ処理を記述し、それを使ってオリジナルの CIFilter を定義し、画像に適用するまでの手順です。 (更新履歴)記事は2014年のiOS 8がまだベータ版だった頃に書いたもので、Objective-Cコードは古くなっている可能性があります。Swiftコードは2017年12月に追記したもので、Swift 4対応です。 CIKernel をつくる カーネルを書く カーネルはGLSLのサブセットで書きます。 kernel vec4 swapRedAndGreenAmount ( __sample s, float amount ) {

    CIKernel を使用してCore Imageのカスタムフィルタをつくる - Qiita
    kasumani
    kasumani 2014/07/02
    【iOS8】CIKernel を使用してカスタムフィルタをつくる Core Image の CIFilter を使うといろいろなフィルタ処理(画像処理/画像加工)ができますが、iOS 8 では CIKernel というクラスが追加され、そのフィルタ(CIFilter)を自作でき
  • Markdownでプレゼン用スライドをつくる方法いろいろ - Qiita

    勉強会での発表資料を作成するにあたり、まずMarkdownで話そうと思うことを適当にメモしてるうちに、なんか発表資料このままで良くない?と思えてきました。別に レイアウトや配色のセンスに自信があるわけでもない し。。 で、最初 "markdown pagination" でググってみるとあまりパッとしたのがなかったのですが、"markdown presentation" にしてみると出るわ出るわ。しかもどれも結構よさげ。 というわけで出てきたものをメモがてら書き留めておきます。結論からいうとググって一番上に出てきた "Remark" が今回の要件に(ほぼ)マッチしていたので、他はまだ使ってません。 Remark 長所 GitHubでソース公開されてる 無料 ログイン不要 不満があれば自分で修正してpull request送れる Swipe 長所 テンプレートやフォントが複数用意されてる(っ

    Markdownでプレゼン用スライドをつくる方法いろいろ - Qiita
    kasumani
    kasumani 2014/06/13
    Markdownでプレゼン用スライドをつくる方法いろいろ Tags: from Pocket November 07, 2014 at 07:50PM via IFTTT
  • Estimote Beacon をリバースエンジニアリング - Qiita

    Estimote のビーコン、先月の SDK アップデートでついに 温度センサと加速度センサをサポート したのが記憶に新しいところですが、その数ヶ月前に、Estimote のビーコンを分解したり、 Core Bluetooth フレームワークのメソッドを Method Swizzling したり class-dump したり してアドバタイズメント・パケットの内訳や内部実装を解析した海外記事がありました。 下記記事でその内容をかいつまんで紹介しています。 結局のところ、この解析により割り出したアドバタイズメント・パケットには「加速度センサや温度センサのデータ」は入ってなかった(※当時のファームウェア)のですが、 ソースが公開されていないSDK/フレームワーク/ライブラリの解析 ってこうやってやるのかーという点で非常に勉強になりました。 関連記事 【iBeacon】Estimote iOS

    Estimote Beacon をリバースエンジニアリング - Qiita
    kasumani
    kasumani 2014/05/07
    Estimote Beacon をリバースエンジニアリング Estimote のビーコン、先月の SDK アップデートでついに 温度センサと加速度センサをサポート したのが記憶に新しいところですが、その数ヶ月前に、Estimote のビーコンを分解したり、
  • iOSで使用できる Audio Unit 一覧 - Qiita

    AUComponent.h 、または Audio Unit Component Services Reference より、iOS で使用可能な Audio Unit のサブタイプ を抜き出してみました。 概要説明つき。(ただし RemoteIO のようによく知られているものや、名称から役割が明らかなものは省略) 利用可能なiOSバージョンも付記してあります。これを見ると、iOS 5 でエフェクトが大量に追加され、iOS 6 でもコンバーター/ミキサーまわりが強化されたようです(個人的には delay の追加も嬉しい)。 kAudioUnitType_Output kAudioUnitSubType_GenericOutput A generic output unit provides the start/stop API, and provides the basic services

    iOSで使用できる Audio Unit 一覧 - Qiita
    kasumani
    kasumani 2014/05/07
    iOSで使用できる Audio Unit 一覧 概要説明つき。(ただし RemoteIO のようによく知られているものや、名称から役割が明らかなものは省略) Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket May 07, 2014 at 11:13AM via IFTTT
  • 3Dモデルを iOS アプリで動かす【その1】3Dモデルのファイルフォーマット - Qiita

    3Dプリンターやら何やらのブームで、最近いろいろと ◯◯ の 3D データ公開!みたいなニュースをよく見かけます。 Hondaの歴代コンセプトカーの3Dデータを公開 -3DプリンターでHondaの「ものづくり」を体験- スミソニアン博物館が収蔵品の3Dデータを無料配布 Perfume official global website が、自分は 3D まわりの知識がまったくなく、おもしろそうだけど「おもしろそうだなー」で終わってたので、それでは寂しい、ということで 3D モデルデータのファイル形式 について調べるところから、 iOS アプリ内で 3D モデルデータを表示する ところまでやってみました。 まずは 3D モデルのファイル形式について。 STLファイル(拡張子 .stl) ホンダやスミソニアン博物館の3Dデータとかはこれ。 3Dプリンタの標準データ形式 として使われているようです。

    3Dモデルを iOS アプリで動かす【その1】3Dモデルのファイルフォーマット - Qiita
    kasumani
    kasumani 2014/04/29
    3Dモデルを iOS アプリで動かす【その1】3Dモデルのファイルフォーマット 3Dプリンターやら何やらのブームで、最近いろいろと ◯◯ の 3D データ公開!みたいなニュースをよく見かけます。 Tags: ifttt, kasumaniのストックした
  • コネクタを挿すだけで電子工作ができる!GROVEシステムのセンサ・アクチュエータのまとめ - Qiita

    konashi + GROVE拡張ボード、あるいは Arduino + ベースシールド を使うと、 コネクタを挿すだけ でセンサやアクチュエータを使用した回路を作成できるようになります。 ハンダ付けやブレッドボード上で回路を組む必要がないので、格的なハードの開発はハード屋さんに任せる想定で、iOSアプリ側に専念したい僕のような人間には超ありがたいシステムです。 ※詳細は下記連載をご参照ください 第1回 「konashi」とiOSアプリを連携させる:iOSアプリと連携させて使えるデバイスたち|gihyo.jp … 技術評論社 いろいろセンサ類を揃えておくとプロトタイピングの際に便利なので、家GROVEサイト(海外)ではなく、 Amazon.co.jpでさくっと買える モジュールを調べてみました ((2月ぐらいに書きかけでそのまま忘れてた記事なので、売り切れてる可能性もあります))。 セン

    コネクタを挿すだけで電子工作ができる!GROVEシステムのセンサ・アクチュエータのまとめ - Qiita
    kasumani
    kasumani 2014/04/24
    コネクタを挿すだけで電子工作ができる!GROVEシステムのセンサ・アクチュエータのまとめ konashi + GROVE拡張ボード、あるいは Arduino + ベースシールド を使うと、 コネクタを挿すだけ でセンサやアクチュエータを使用した回
  • iOSアプリに友達招待機能を追加できる『AppSocially SDK』の使い方 - Qiita

    AppSocially iOS SDK を使うと、 たった1行コードを追加するだけで、友達を招待する機能をアプリに追加 することができます。無料で使えて、招待数による従量課金もありません。 招待の方法もいろいろあって、いまのところ Facebook のチャット Twitter の DM メール SMS LINE が用意されています。 iOS6 以降は Social.framework によって Facebook や Twitter への投稿がものすごく簡単になりましが、 DM やチャットは Accounts.framework を用いた認証や、SLRequest で API をハンドリングする処理を自前で 書かなければならず (*1)、それでいてアプリ毎に固有な差別化要素でもないので、まるっと外部ライブラリに任せてしまえばかなり手間が省けます。 導入方法 上述したとおり、フレームワーク追加

    iOSアプリに友達招待機能を追加できる『AppSocially SDK』の使い方 - Qiita
    kasumani
    kasumani 2014/04/03
    iOSアプリに友達招待機能を追加できる『AppSocially SDK』の使い方 AppSocially iOS SDK を使うと、 たった1行コードを追加するだけで、友達を招待する機能をアプリに追加 することができます。無料で使えて、招待数による従量課金
  • cornerRadiusを片側だけ効かせる(UIViewの一部だけ角丸にする) - Qiita

    view.layer.cornerRadius = 3.0; view.layer.masksToBounds = YES; みたいにすればOKですが、「上側だけ」「下側だけ」「右側だけ」「左側だけ」丸くしたい、というケースがあります。 例えば片側だけ角丸にすることで、角丸になってない方に「画面の続きがある」ように見せる、とか。 (左側だけ角丸にしたビュー) 方法 どうやるかというと、cornerRadius自体は使えないのですが、 UIBezierPathで角丸のパスを生成 CAShapeLayerを生成し、1のパスをセット 2をマスクレイヤーとして(片側だけ角丸にしたいビューのlayerに)セットする という感じで実現できます。 サンプル たとえば、下側(左下、右下)だけ角丸にする場合は、下記のようなコードになります。 let maskPath = UIBezierPath(round

    cornerRadiusを片側だけ効かせる(UIViewの一部だけ角丸にする) - Qiita
    kasumani
    kasumani 2014/03/31
    cornerRadiusを片側だけ効かせる(UIViewの一部だけ角丸にする) 例えば片側だけ角丸にすることで、角丸になってない方に「画面の続きがある」ように見せる、とか。 どうやるかというと、cornerRadius自体は使えないのですが、
  • Audio Unitのコールバック関数を登録する方法3種の比較 - Qiita

    Audio Unit で、コールバック関数を登録するための方法が何通りかあって、何だかややこしかったので整理してみました。 AudioUnitSetProperty まず一番基的なものである AudioUnitSetProperty から。 AURenderCallbackStruct callbackStruct; callbackStruct.inputProc = renderCallback; callbackStruct.inputProcRefCon = &audioDataInfo; AudioUnitSetProperty(hogeUnit, // 対象となるAudio Unit kAudioUnitProperty_SetRenderCallback, kAudioUnitScope_Input, // スコープ 0, // バスナンバー &callbackStruct

    Audio Unitのコールバック関数を登録する方法3種の比較 - Qiita
    kasumani
    kasumani 2014/03/17
    Audio Unitのコールバック関数を登録する方法3種の比較 Audio Unit で、コールバック関数を登録するための方法が何通りかあって、何だかややこしかったので整理してみました。 Tags: ifttt, kasumaniのストックした投稿 - qiita from Po
  • Method Swizzling をうまく使っている実用例 - Qiita

    Method Swizzlingは、既存のメソッドの実装を、自前の実装に差し替えるための手法です。 ・・・ということを知ってはいても、どういうときに使うと便利なのかイマイチわかってなかったので、Method Swizzlingをうまく使った実用例を2つほど探してきました。 実用例その1:既存ソースコードに手を入れずに機能追加 xib ファイルのローカライズを IB 上でできるようにする AutoNibL10n 通常、xibで作成したUIをローカライズする場合、 xibファイルを言語ごとに用意する アウトレットを定義してプログラム側からローカライズした文言をセットする といった面倒な作業が必要でしたが、AutoNibL10n を使用すると、xibファイルを IB から直接多言語対応できるようになります。 たとえば、RootViewController.xibというファイルがあり、その中のUI

    Method Swizzling をうまく使っている実用例 - Qiita
    kasumani
    kasumani 2014/03/05
    Method Swizzling をうまく使っている実用例 Method Swizzlingは、既存のメソッドの実装を、自前の実装に差し替えるための手法です。 Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket March 05, 2014 at 05:35PM via IFTTT
  • iOSで使える日本語OKな音声読み上げエンジン8種(TTS,音声合成) - Qiita

    iOS7 から AVSpeechSynthesizer クラスが追加 され、音声合成(読み上げ/Text to Speech)が手軽に使えるようになりました。 既に 日語を含む36種の言語に対応したvoice が用意されていて、音質もなかなかです。ひらがなも漢字も読んでくれるので、テキストをまるっと渡せば読んでくれます。 が、ひとつ物足りなかったのが、 読み上げのチューニングができない こと。 音声合成は古くからあるジャンルなので、もっと細かくチューニングできて、音声がきれいなサードパーティ製SDKがあるんじゃないかと思い、いろいろ調べてみました。 AquesTalk2 長所 評価版はすぐにDLして試せる 日語の特性を考慮した、非常に細かいチューニング が可能 アクセント 無声化 区切り ガ行鼻濁音 数値桁読み etc... 短所 音質が低い phontというしくみがあるので入れ替え可

    iOSで使える日本語OKな音声読み上げエンジン8種(TTS,音声合成) - Qiita
    kasumani
    kasumani 2014/03/01
    iOSで使える日本語OKな音声読み上げエンジン8種(TTS,音声合成) 既に 日本語を含む36種の言語に対応したvoice が用意されていて、音質もなかなかです。ひらがなも漢字も読んでくれるので、テキストをまるっと渡せば読んで
  • プッシュ通知のカスタム警告音で使用できるオーディオデータフォーマット - Qiita

    Remote / Loca Push Notification で使用できる通知音(警告音)のオーディオデータフォーマットについてのメモ。 iOSのシステムサウンド機能によって再生されるため、次のいずれかのオーディオデータフォーマットでなければならない。 リニアPCM MA4(IMA/ADPCM) µLaw aLaw このオーディオデータはaiff、wav、またはcafファイルとして保存できる。 再生時間 30秒未満 カスタムのサウンドがこの制限を超える場合、代わりにデフォルトのシステムサウンドが再生される 情報ソース Local および Push Notification プログラミングガイド Register as a new user and use Qiita more conveniently You get articles that match your needsYou c

    プッシュ通知のカスタム警告音で使用できるオーディオデータフォーマット - Qiita
    kasumani
    kasumani 2014/02/24
    プッシュ通知のカスタム警告音で使用できるオーディオデータフォーマット Remote / Loca Push Notification で使用できる通知音(警告音)のオーディオデータフォーマットについてのメモ。 Tags: ifttt, kasumaniのストックした投稿 - qi