R&Dブログ ~研究開発奮闘記~

TSHエンジニアの研究開発奮記。 ICT分野に携わるエンジニアの生の声をお届けいたします。

2016.10.03

マルチメディアチーム③

今回は私たちが作成したPepperでの動画再生アプリについてご紹介させていただきます。

とある展示会で動画を再生する目的のために作ったアプリで、
動画を何回もループ再生すること
任意のタイミングでアプリを停止できること
この2つの機能の実装を行いました。

こちらがChoregrapheで作成したアプリです。

ご覧のとおり、動画がループ再生されて、Pepperの頭をなでると動画再生が終了するようにボックスを配置しています。

ここで1つ問題がありました。
再生音量が小さくて、展示会のようながやがやした場所だと聞こえそうにありません。
Pepperの音量を変更しても、動画再生の音量は変わりませんでした。

そこで調べてみたところ、どうやらPepper本体の音量と、タブレットの音量が別になっているようです。動画再生はタブレットで行われるので、タブレットの音量を調整する必要がありました。

タブレットの音量調整は、ボックス「PlayVideo」を編集して行います。

「PlayVideo」内の、


  self.connectStartCallback()
self.connectStopCallback()
self.tabletService.playVideo(url)

を次のように変更します。


  self.connectStartCallback()
self.connectStopCallback()
self.tabletService.setVolume(10)
self.tabletService.playVideo(url)

setVolume()内の数字は0~15までを設定することができます。

このように、簡単に動画再生アプリを作ることができます。
私たちが今開発を行っている雰囲気分析アプリにおいても、会社の雰囲気が悪かったらリラックスできそうな動画を再生したりと応用できそうです。

2016.09.27

セキュリティチーム③

「セキュア投票システム」の構築のため、投票プロトコルの検討を進めました。

投票プロコトルを検討するうえで、満たすべきセキュリティ項目を網羅的にチェックする必要があります。
今回は、総務省から公表されている資料「電子投票システムに関する技術的条件及び解説」を参考にいたしました。
http://warp.da.ndl.go.jp/info:ndljp/pid/283520/www.soumu.go.jp/s-news/2002/pdf/020201_1.pdf

こちらの資料に基づき各項目について検討したところ、ソフトウェア上の実装において検討すべき項目は、以下の6点とわかりました。
-----------------------------
No | 項目名 | 概要
-----------------------------
1 | 本人認証 | 他の人になりすまして投票を行う
2 | 選挙権の有無 | 選挙権を持っていない人の投票
3 | 二重投票 | 一人が複数回の投票を行う
4 | データ改ざん | 通信を傍受し、データの改ざんを行う
5 | 不正値投票 | 1度の投票で複数票やマイナス票の投票
6 | 複数選択投票 | 有権者を複数選択した投票

この6点については、以下で対策が可能となります。
-----------------------------
No | 項目名 | 対策
-----------------------------
1 | 本人認証 | パスワードによる認証
2 | 選挙権の有無 | ID、パスワードによる管理
3 | 二重投票 | サーバ上で投票の有無を管理
4 | データ改ざん | メッセージ認証符号(MAC)
5 | 不正値投票 | 不正投票のチェック(*1)
6 | 複数選択投票 | 不正投票のチェック(*1)

(*1) セキュリティチーム②で検討した内容です。

2016.09.16

ドローンチーム③

ドローンの実験を始めてから1年が経過しました。
フライト回数は124回。だいぶ年季が入ってきたなと思っていたら、ついに故障しました。
使っているドローンはパロット社の「Bebop Drone」です。
離陸しようとすると横転するようになりました。
左後方のモーターの出力が弱いように感じましたが、初めての故障なので専門業者に修理をお願いしました。
結果は予想通り、左後方のモーターの故障でした。
幸いにもマザーボードは無事でしたので、モーターの交換だけですみました。
それと故障に関して、バッテリーの取り扱いにも注意が必要です。
Bebop Droneに使用されるリポバッテリーですが、過放電を起こして充電できなくなることがあります。
コネクターを繋いだまま放置すると、受信機回路に電流が流れ続け、やがて過放電となります。
昔はドローンの飛行実験が終わった後、つい片づけを忘れてそのまま放置していました。
そして忘れたころに充電しようとして、「充電できない!」という事態になります。
飛行が終わったら、必ず機体からリポバッテリーを取り外しましょう。

2016.09.06

セキュリティチーム②

「セキュア投票システム」の構築のため、今回は、不正投票のチェックシステムを検討しました。
「準同型暗号」を用いてデータを暗号化することによって、データ(投票数や有権者の情報)の流出は防げますが、投票の不正が見抜けなくなります。
投票データが暗号化されているため、その投票が1票なのか2票なのかが分からなくなるのです。
そのままでは、1人で2票を投票することが出来てしまいます。
そこで、暗号化されたままデータをチェックするシステムを構築する必要があります。
今回は以下の文献を参考にして、実現することにしました。
A Generalisation, a Simplification and Some Applications of Paillier’s Probabilistic Public-Key System
http://www.brics.dk/RS/00/45/BRICS-RS-00-45.pdf
本文献では、有限体上のベキ乗根の性質を応用し、暗号化したデータのまま、不正投票のチェックをしています。
次回は、他のセキュリティ要求を検討し安全な投票プロトコルを検討していきます。

2016.08.10

マルチメディアチーム②

マルチメディアチームでは「Pepper」を活用して、職場の「雰囲気」を可視化し、改善しようとしてます。
今回は、職場の雰囲気を改善するためのアクションとして「あいさつ運動アプリ」を実装しました。
職場の皆さんの挨拶を、表情と発声から評価し点数をつけるアプリです。
挨拶を促進することで、職場のにぎやかさをUPすることが狙いです。
実装中は、度々Pepperの関節のオーバーヒートが発生しました。
どうやら無理な体勢を続けてしまったようです。
冷えるまで動いてくれないため、思いのほか作業を進められませんでした。
テストの方法を工夫しないといけませんね。
次は「雑学披露アプリ」の実装を、進めていきます。

2016.07.19

ドローンチーム②

今回、ドローンチームでは、ドローンに搭載されたカメラで撮影した映像の加工を行いました。
具体的には、ゴルフ場でドローンを飛行させて、撮影した画像から「ディボット跡」を検出するプログラムを作成中です。
ディボット跡とは、ゴルフで球を打つ際で芝が削り取れてしまった箇所のことです。
基本的には削ってしまった本人の手で補修するものですが、残っているものに関しては、ゴルフ場側が修繕を実施しています。
多くのゴルフ場がこの作業を人手で行っているため、ドローンが代わりに自動でディボット跡を発見できるようになれば、コストダウンにつながると考えています。
現在は、主に映像中の「色」によってディボット跡を検出しており、精度を高めるため、アルゴリズムの改良を進めています。
今後は、実際にゴルフ場での実験も予定しています。

2016.05.26

マルチメディアチーム①

マルチメディアチームでは、様々なセンサデータを用いて、職場の「雰囲気」を可視化しようとしてます。
平成27年12月より、全従業員へのストレスチェック実施が義務化され、管理者は職場状況を把握する必要性がより一層高まりました。
この課題をIoTで支援できないかと考えたのが、今回のプロジェクトの始まりです。
職場のデータ収集・雰囲気改善提案には、今各所で活躍中のロボット「Pepper」の活用を検討しています。
まずはPepper開発の基本を学ぶべく、ワークショップに参加してきました。

アルデバラン・アトリエ秋葉原
https://pepper.doorkeeper.jp/

たくさんPepperが並んでいる様子は圧巻でした。
今回のワークショップでは、Pepperのカメラ画像を取得するプログラムを実装しました。
次回はマイク音声の取得方法を確認する予定です。

2016.04.25

セキュリティチーム①

セキュリティチームでは、気軽に電子投票を利用できるようにするため、申込から利用開始までをすべてWeb上で実施できる「セキュア投票システム」の構築を目指し、活動中です。
有権者が投票した情報を正しく集計するためには、情報が途中で漏洩・改ざんされるのを防がなければなりません。
そのようなセキュアな投票を実現するために、このシステムでは投票データを「準同型暗号」で暗号化する予定です。
準同型暗号は、データを暗号化したまま集計(数値の加算)が可能な暗号アルゴリズムで、安全に投票を集計することができます。

※準同型暗号についての詳細は「暗号コラム」をご参照下さい。

しかし、暗号化だけで不正投票のすべてを防ぐことは出来ません。
特に、なりすましなど、暗号化する前の問題には別の対策が必要になります。
これらの手段検討のため、現在は関連文献を調査しています。

2015.10.06

ドローンチーム①

ドローンチームでは、市販のドローンを使って飛行をコントロールする実験をしています。

まずは、指定した距離をまっすぐ飛び、Uターンして帰ってくる飛行を試しました。
メーカーから提供されているSDKを使用して、Androidアプリのコントローラを実装しています。

今回は、離陸などの基本操作は問題なく動作しましたが、Uターンの処理で停止してしまいました。
プログラムを修正し、近々再実験の予定です。

また今回の実験で、ドローンの飛行テストには広い場所の確保が必要であることを実感しました。
強い風にはあおられることが多く、コントロールが効かなくなることが稀にありました。

何かと話題になることが多いドローンですが、環境を整えれば様々な業界で活躍することができる、将来性に満ちたものだと考えています。

2015.10.01

R&Dブログスタート

東京システムハウスのエンジニアによるR&Dブログがスタートいたします。先進的なICT分野で日々、邁進するTSHエンジニアの生の声をお届けします。