最近読んだ本 iPhoneデジカメプログラミング

公開日: : iPad, iPhone, , ,

カメラアプリを作る予定はなかったので2011年3月に発売されてからしばらく様子を見ていたが、そろそろ作ってみようと思ったのと、その他有用な情報がつまってそうだったので購入。
著者は仙台市のかたち開発の人で、昔からMac用のアプリケーションを作っていた人らしい。

本文中は、Xcode 4で説明は統一されている。Xcode 4は出たばかりでまだ移行していないが、それほど変わっていないだろうしこれからはXcode 4がメインになっていくだろうから悪くない選択だと思う。

  • 第1章 iPhoneのカメラとグラフィック : iPhoneのカメラの性能、UIKit, Core Graphics, OpenGL ES の簡単な紹介。
  • 第2章 画像処理の基礎 : 色とは、画像圧縮とは、など画像処理の基礎と、iPhone実機に転送する手順の簡単な紹介。
  • 第3章 BasicCamera:カメラアプリケーションの作成 : ごく基本的なカメラアプリを作ってみる章。Xcode4の使い方の説明になっている。UIImagePickerControllerUIImageWriteToSavedPhotosAlbum などがつかわれる。
  • 第4章 DoodleCamera:プリクラ風カメラアプリケーションの作成 : カメラの画像の上に指で絵を描いて保存できるアプリ。Core Graphicsの機能が多く使われている。
  • 第5章 FlickrMap:Flickr投稿アプリケーションの作成 : Flickr API を使って画像を投稿する。JSON Framework を使う。
  • 第6章 FilterCamera:トイカメラアプリケーションの作成 : OpenCVのフィルタを使って、写真にさまざまなエフェクトをかける。
  • 第7章 BookScan:書籍検索アプリケーションの作成 : オープンソースの ZBar を使ってバーコードをスキャンする。
  • 第8章 ARLocalSearch:ARアプリケーションの作成 : iPhone ARkit と JSON Framework を使ってARアプリを作ってみる。

ざっと見ても分かるとおり、かなり実践的で盛りだくさんな内容だ。
4章はおもしろそうなので写経を始めてみた。そしていきなりさっぱりわからなくてはまる。
そして写経したらどうにもまともに動かずしばらく悩んでいたが、結局本に間違いが見つかった。(著者の方に確認した)
下記のコメントアウトしている2行はP.77にコメントアウトされずに存在しているが、そのままだと保存した画像にカメラからの画像が入らない。
ちゃんと CGContextTranslateCTM の意味が分かっていれば分かるのだが知らずに写経しているとこれははまる。
まだ正誤情報に載っていなかったのでここに書いておく。

+(CGImageRef)rotateImage:(CGImageRef)image mirrored:(BOOL)mirrored {
	int width = CGImageGetWidth(image);
	int height = CGImageGetHeight(image);
	CGContextRef context = [CGUtil newBlankBitmapContext:CGSizeMake(height, width)];
	
	if(mirrored) {
		CGContextTranslateCTM(context, height, width);
		CGContextScaleCTM(context, -1.0, 1.0);
	} else {
		CGContextTranslateCTM(context, 0, width);
	}
	
//	CGContextTranslateCTM(context, height, width);
//	CGContextScaleCTM(context, -1.0, 1.0);
	CGContextRotateCTM(context, -M_PI/2);
	
	CGContextDrawImage(context, CGRectMake(0, 0, width, height), image);
	CGImageRef cgImage = CGBitmapContextCreateImage(context);
	CGContextRelease(context);
	return (CGImageRef)[(id)cgImage autorelease];
}

続きはまた後ほど。

iPhoneデジカメプログラミング
iPhoneデジカメプログラミング 細谷 日出海

ソフトバンククリエイティブ 2011-03-18
売り上げランキング : 22058

Amazonで詳しく見る by G-Tools

関連記事

no image

Head First SQL

@akabekobeko 氏の記事を見て購入。確かにこれはいい本だ。 非常に懇切丁寧に教えてくれるの

記事を読む

Guideline 2.5.10 – Performance – Software Requirements で Reject

2019年3月27日以降、iPhone Xs Maxの画面サイズ6.5インチのスクリーンショットが

記事を読む

no image

CS 193P

今作っているiPhoneアプリに設定画面を追加しようと思い、UINavigationControll

記事を読む

no image

リズムくん Ver.1.2 アップデート 2012/02/05

iPhone用リズム学習アプリ リズムくん Ver.1.2 アップデートを App Stor

記事を読む

[Xcode] iOS Developer Program 証明書の更新 2018

恒例の、年に一度の証明書の更新。今年はこのページを参照した。年に一度しか行わない作業だが、さすがに迷

記事を読む

Apple iPad まとめ

(2010/01/28 朝5時あたりのapple.comのトップページ) 2010/01/27(水

記事を読む

dyld`__abort_with_payload:でクラッシュ WatchKitApp on Xcode11.1

Xcode 11.0 や Xcode11.1で以前はビルドして実行できていたWatchKi

記事を読む

no image

iPhone OS 3.0 GM Seed vs Final version

iPhone OS 3.0 が6月18日(木)より公開されているが、自分はiPhone Develo

記事を読む

no image

iPhoneアプリ 「リズムくん」 Ver.1.1 アップデート

リズムくん Ver.1.0ではまずは8分音符までの問題でリリースしてみましたが、やはりより難しい問題

記事を読む

no image

[iOS SDK] UIDeviceOrientation ではまる

すぐURLが変更されそうだが、2013/02/16 時点だと、Supporting Multiple

記事を読む

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

Wi-Fi6Eルータ TP-Link AXE5400購入

Wi-Fi6E を試してみたくなり、TP-Link AXE5

児童手当 認定請求書申請 2024 「請求者が養育をする18歳に達する日以降の最初の3月31日までの子の数」とは?

2024年に受給していない人には手紙が届くらしい。 電子申請も

Vision Proアプリ開発本 8/24、8/26に発売

Vision Proアプリ開発入門 P400が 8/24 に発売、V

Developer Strap が日本でも購入可能に

USアカウントでしか購入できなかった Vision Pro 用 De

Vision Pro カバーケースを買ってみた

[itemlink post_id="11629"]

→もっと見る

PAGE TOP ↑