Androidのビルド済みapkファイルを実機に書き込む(おそらく)一番簡単な方法

今日はプログラミング後のお話。

Androidアプリの開発は、Android Studioといった専用IDEだけでなく、UnityやUnreal Engineなどのゲームエンジンからもできるようになり、ますます敷居が低くなっています。
それらのツールから作成したアプリをビルドすると、apkファイル(Windowsでいうexeみたいなもの)が出来上がりますが、これを書き込むことで作成したアプリをAndroid端末で実行できるようになります。

ただ、すでにapkファイルが出来上がっているのに、いちいち開発環境を開き、ビルドして書き込むのは面倒です。
そこで、以下の手順を
1. gmailでビルドしたapkファイルを添付し、自分自身にメールを送りましょう。
2. Android端末でgmailアプリから送ったメールを開き、添付ファイルのリンクを選択します。
3. ダウンロード後にインストールの確認通知が来るので、許可すると実機にインストールされます。

…これだけ

以上の3ステップでビルド済みのapkファイルがインストールできます。
※事前に、セキュリティ設定の「開発元不明のアプリ」にはチェックしておきましょう。

(今のところgmailのみで確認。ほかのメールサービスについては未検証ですが、ファイル添付ができるものなら、サイズ上限内であれば可能かと)
gmailは25MBの上限がありますが、それ以上のファイルはgoogleドライブにアップすることで対応できます。

デメリットとしては、以下の点があげられるかと
1. インターネット環境につながっていないと実行できない
2. 外部にアプリが漏れてしまう可能性がある

ちなみに、実機へapkを書きこむ手法は他にもいくつかあります。
apkファイルをAndroid端末(実機)にインストールする方法


もしネット上でファイルをやり取りするのに問題がなければ、お試しあれ(^-^)/

テーマ : Android
ジャンル : 携帯電話・PHS

UnityでOpenCV その3

最近、ブログの更新がtwitter連携ばかりですいません((´・ω・`;))
今日は久しぶりに、UnityOpenCVの続きを書こうと思います。
今回はいよいよ、画像処理のメインの一つ「輪郭抽出」をやっていきます。

【前回のおさらい】
この記事を参照。
前回は二値化処理がメインでした。
・二値化処理は、濃淡のある画像(グレー)を、一定の閾値で白黒(モノクロ)画像にする
・グレー画像のMatに、Imgproc.thresholdメソッドを施すだけ
・自動で閾値を判断させる(適応的閾値処理)には、Imgproc.adaptiveThresholdメソッドを使う


【輪郭抽出とは】
輪郭抽出とは、画像の特定の領域の境界線、つまり輪郭を求めるための処理です。
ただ、どこの領域を選ぶかが非常に重要で、適切に選べないと思ったように輪郭が抽出できない、あるいは処理が重いといった結果となります。

【抽出の前処理】
この輪郭抽出の領域をアルゴリズムに与えるための処理として、前回の二値化処理が出てきたわけです。
ただ、単純な二値化では細かいノイズや輪郭のギザギザ、余計な部分などが残ることも多く、輪郭が思うように抽出できないこともあります。

そこで適応的閾値処理でフィルタ(ガウシアンフィルタメディアンフィルタ)をかけて、平滑化(スムージング)を施すことで、細かい領域を省いて抽出したい部分を強調することができます。

フィルタをかけるだけでなく、二値化処理で現れた画素領域自体を膨張、あるいは収縮することで細かい部分を取り除く手法もよく使われます。膨張処理はImgproc.erode、収縮処理はImgproc.dilateメソッドを使います。
また、これらの処理を繰り返して抽出範囲を得るオープニング・クロージング処理もあり、これらはImgproc.morphologyExメソッドを使います。

【抽出処理】
前述の処理を施してようやく領域がわかったところで、いよいよ輪郭を求める処理に入ります。
OpenCVではImgproc.findContoursメソッドを使うだけで簡単に求められます。

輪郭は単にそれぞれの場所に点々と存在するだけでなく、輪郭の中にさらに輪郭が出てくることもあります(ちょうど等高線のようなイメージ)。そのため、輪郭抽出の方法もいくつかあり、外側だけを抜き取るか内側も含めるか、あるいは輪郭の各点(ピクセル)もそのまま記憶するかある程度近似するかをメソッド内で指定できます。

【輪郭線の近似】
輪郭線の近似は、主に直線近似凸包近似という手法があります。
前者は、ある距離以内の点を一直線にまとめて結ぶもので、グラフの近似曲線をつないでいくイメージに近いといえます。
後者は、輪郭をすべて含む最小の凸図形で囲む方式で、「輪ゴムで囲うようにぴったりと囲んだ線の図形」とたとえられます。
(もちろん、近似せずに各点からなる輪郭線をそのまま使うのもOK)

輪郭の各点を近似して取得するのはfindContoursメソッドで行いますが、直線近似はImgproc.approxPolyDP、凸包近似はImgproc.convexHullメソッドで求めます。

と、技術的な解説が長くなってしまったため、実装については次の記事で解説します。

【参考】
画像処理の流れについては、こちらの記事がわかりやすいと思います。
機械学習のためのOpenCV入門

適応的閾値処理のフィルタについては、こちらを参照。
ガウシアンフィルタメディアンフィルタ

平滑化処理の膨張・収縮などについてはこちらを参照。
膨張・収縮・オープニング・クロージング

ImgProc.findContoursの動作については以下を参照
opencv 2.2 documentation - OpenCV.jp
findContours関数の仮まとめ

画素領域の構造ツリーと処理に関しては、ラベリングを参照。
イメージングソリューション ラベリング

テーマ : ゲーム開発
ジャンル : コンピュータ

05/04のツイートまとめ

Revetronique

#pile_pbp_舞浜 #Pile生誕祭2017 ライブ最高でした!CDも良いけど、さすがに生歌は迫力が違いますね。次のファンミも武道館も行きたいっ! https://t.co/ZqkSma9pQk
05-04 02:41

05/01のツイートまとめ

Revetronique

明日のライブで相方に振らせるペンライトの修理中 https://t.co/S1xXRaNFpe
05-01 00:43

04/30のツイートまとめ

Revetronique

超歌舞伎を観に初めてニコニコ超会議に参戦!確かにカオス&コスパ最高wニコ動はAR加工?がしてあるから立体的に、会場も素敵すぎて…まさかの白鵬登場でした。両方見るのがオススメ!さっきは真正面、次は真横から。電話屋~!… https://t.co/Px2A2cF0dl
04-30 15:50

プロフィール

Reveちゃん

Author:Reveちゃん
コンビでやってます。
夢担当と技術担当がいます。

大学院卒業 → ロボットベンチャー(漆黒)就職 → 1年で退職 → ベトナムで仕事中(今ここ) → メディアアーティスト(未来☆)

リンクフリーです。

最新記事
最新コメント
月別アーカイブ
カテゴリ
アクセス数
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR