Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Amazon Kinesis Video Streams × Deep Learning
Search
toshitanian
December 14, 2017
Technology
7.4k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Amazon Kinesis Video Streams × Deep Learning
toshitanian
December 14, 2017
More Decks by toshitanian
See All by toshitanian
エッジデバイスでディープラーニング! AWSを活用したエッジデバイスマネジメントの紹介/ aws-edge-device-deeplearning
toshitanian
1
2.4k
機械学習プラットフォーム でのDocker利用事例 / DevSumiAbeja
toshitanian
1
660
nvidia-jetson-x-deep-learning
toshitanian
0
1.7k
急成長スタートアップのシステムの裏側 / ABEJA Innovation Meetup
toshitanian
0
1.4k
Docker入門 - Ruby on RailsアプリケーションをDockerで動かしてみる - / Introduction to Docker
toshitanian
7
3k
Other Decks in Technology
See All in Technology
synctest時代のhttptest Go 1.27で変わるHTTPサーバテストの裏側 / go conference2026 synctest and httptest
budougumi0617
1
2.6k
AIオーケストレーションを活用した 開発ワークフローの設計と実践
bqnq
0
130
Code4Lib JAPANカンファレンス2026 開会挨拶 / Code4Lib JAPAN Conference 2026: Opening Remarks
ykiyota
0
340
2026-09-10 【Snowflake World Tour Tokyo 2026】dbt Core と Snowflake で実現する多層的なデータガバナンス / Multi-Layered Data Governance Powered by dbt Core and Snowflake
civitaspo
0
330
プロダクト思考 × 基盤思考を AIで実現する Compound Engineering
tkc66buzz
1
320
あるけみー式LTスライド作成術
alchemy1115
1
180
10分で知る最近のOmarchy
komagata
0
260
AI時代だからこそ、スケールしないことをやろう
yutashigemura
1
140
越境するなら専門用語を使うな高校校歌 / If you wanna cross border, you shouldn't use jargon
vtryo
0
120
Screen Lens - 今見てる画面を翻訳する
komagata
0
250
コスト最適化の「めんどくさい」を AWS FinOps Agent でチョット楽にする
classmethod_kaz
0
310
薬剤師(ドメインエキスパート)と一緒に育てる薬局向けAIアシスタント
kakehashi
PRO
2
150
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
28
2.8k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
440
Un-Boring Meetings
codingconduct
0
410
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.9k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
380
Utilizing Notion as your number one productivity tool
mfonobong
4
580
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.1k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
4 Signs Your Business is Dying
shpigford
187
23k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Transcript
Amazon Kinesis Video Streams × Deep Learning JAWS-UG AI #6
2017/12/14 ABEJA, Inc Toshiya Kawasaki
河崎 敏弥 @toshitanian ABEJA, Inc. Platform Division Lead Engineer •創業1年の時にABEJAに参画
•バックエンドエンジニア •クラウド上でシステム構築 •IoTデバイスとのシステム連携 •コンテナ •エッジコンピューティング
社名 株式会社ABEJA 設立 2012年9月10日 住所 東京都港区虎ノ門4-1-20 田中山ビル10F 資本金 (資本準備金含む) 1,148,518,043円
企業理念 イノベーションで世界を変える 事業内容 ディープラーニングを活用した 産業構造変革
ABEJA Platform Ecosystem "
• エンジニア・デザイナが色々な話を書いてます • ML/DL • AWS・インフラ • IoT • デザイン
ABEJA Tech Blog 5 http://tech-blog.abeja.asia/
•Kinesis Video Streams •Overview •How to use •Integrating with deep
learning applications Agenda 6
Kinesis Video Streams Overview
8 re:Invent 2017でデモってきた https://www.youtube.com/watch?v=rjBXbktBxBg
• コーデック・コンテナ • ビデオの保存・管理方法 • ストリーミングプロトコル • カメラとの接続 • ffmpeg/gstreamer
• etc… 画像系MLをやった事ある人 ビデオで苦しんだ事ありますよねʁ! Kinesis Video Streamsが、そのツラミを一部 吸収してくれます
• 映像版Kinesis Streams • 従来のKinesis StreamsはKinesis Data Streamsに改名 • 映像ストリームデータの保存・リアルタイムな取得ができる
• フレーム単位でのデータ転送 • ミリ秒単位の遅延でデータの処理が可能 • 過去データの管理・検索・取得もできる • 数百万のデバイスからのビデオストリームにも対応 Kinesis Video Streams 10
• Computer Vision / Machine Learningでの解析を主用途にしている • Consumer側のSDKはJava • PythonからビデオストリームにアクセスできるハイレベルSDKはまだ無い
• Kinesis Video Streams readyなカメラデバイスが今後出て来るハズ • Control Plane APIとData Plane APIを提供 • ストリームの管理用API • 暗号化、リテンションピリオド • ビデオデータのIngest/Consumeを実際に行うAPI Kinesis Video Streams (cont.) 11
• スマートホーム • ペット、老人の見守りカメラ • Amazon Key 的なシステム • スマートシティ
• 犯罪防止 • 自動運転、自動車のナンバープレート検出 • リテール • リピーター検知、来店者属性推定 • 無人コンビニ • 製造 • 検品、異常検知 Use cases 12
Data flow 13 https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/how-it-works.html • Producer • データの送信元 • Java/C++
SDK • Video Stream • Consumer • データを取得・処理をするアプリ • streams-parser-library
• フレーム単位でのIngest/Consume • コンテナフォーマット • mkv (matroska) • Video/Audio以外でも乗せられる •
各トラックのデータ • 基本的に何でもOK • h264だとコンソールで確認できる • デコードはユーザがやる Data format 14 https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/how-it-works-kinesis-video-api-producer-sdk.html
Price 15 σʔλͷIngest σʔλͷConsume σʔλอଘ Kinesis Video Streams $0.01097/GB $0.01097/GB
$0.02500/GB-mo ※追加でEC2に準じたデータ転送料金がかかります ※Tokyo regionの価格です •データ保存料金 + データのIngest/Consume •データ保存料金はS3と同じ •通常の利用用途の場合、S3の価格の2倍と考えてよさそう
Kinesis Video Streams How to use
• GitHub • awslabs / amazon-kinesis-video-streams-producer-sdk-cpp • awslabs/amazon-kinesis-video-streams-produscer-sdk-java • aws
/ amazon-kinesis-video-streams-parser-library • Kinesis Video Streams - Management console • quick start for C++ and Java Producer SDK • Developer Guide • Java / C++ producer library sample • Stream parser library sample 現在公開されているリソース 17 Consumerとして 動かしてみる Producerとして 動かしてみる
• MacBookのカメラ映像をリアルタイムにKinesis Video Streamに送る • 今公開されているproducerでは一番安定している GStreamer Producer Sample Application
18
$ git clone https://github.com/awslabs/amazon-kinesis- video-streams-producer-sdk-cpp.git $ cd amazon-kinesis-video-streams-producer-sdk-cpp $ cd
kinesis-video-native-build $ ./install-script $ export AWS_ACCESS_KEY_ID=[KEY] $ export AWS_SECRET_ACCESS_KEY=[SECRET] $ ./kinesis_video_gstreamer_sample_app [stream-name] Running gst-sample 19
•Developer Guideのサンプルにはデータの取得部分は書いてない •putMedia APIからリアルタイムにデータを取得するサンプルはまだ公開 されていないみたいですね •AWS Java SDKと組み合わせるといいです Stream parser
library sample (consumer) 20 https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/parser-library.html
Kinesis Video Streams Integrating with deep learning applications
re:Inventで実施したデモ 22 https://www.youtube.com/watch?v=rjBXbktBxBg&t=46m47s
re:Inventで実施したデモの構成 23 • MacBook上でGStreamerのアプリケーションを動かす • ECS上でVideo Processing • 1) Stream
Parsing Library (Java)を使ってフレームの取得、JCodecでデコード、bitmapで保存 • 2) PythonのEstimatorが推論・レンダリング・結果の保存(yuv) • 3) gstramerのアプリケーションが別のStreamに送信 • Web Consoleで確認
• リアルタイム(ミリ秒レベルの遅延!)でデータが処理できる • 過去データの取得も可能 • トレーニングデータを作るのに必要 • 過去データへのモデルの再適用も結構やる • ビデオストリームのインフラを考えなくて良い
• ビデオストリームの管理をやってくれる • 暗号化、保存期間設定、Management Consoleでの映像チェック 使ってみてわかった良さ 24
• Producer SDKの使い方が難しい • C++/Java SDK: Inputはエンコード済みフレームデータ • Android SDK:
coming soon… • GStreamerサンプル: GStreamerの勉強 ✏ 使ってみてわかったツラミ 25
• Consumer側のプログラムを作るのが難しかった • Java… mkv… • http clientからstream parser libraryに非同期でデータを渡す方法
• streaming parser libraryでFrameデータを取れない時のデバッグ • 取得したFrameのDecodeは自分でやる必要がある • 僕はDeep Learningをしたいだけなのに… • 今後、ラッパーライブラリが出てくると思います 使ってみてわかったツラミ (cont.) 26
Kinesis Video Stream + Rekognition Video 27 http://docs.aws.amazon.com/rekognition/latest/dg/streaming-video.html • 試したかったけど、間に合いませんでした。
• Rekognition Video側でstreamのARNを指定するだけでOKっぽい • $0.12 per 1 min of live stream video analyzed (Oregon) • $0.12 /min × 60 min x 24hour x 30 days = $5,184 /mo • ご利用は計画的に
• YouTube: AWS re:Invent 2017: NEW LAUNCH! Introducing Amazon Kinesis
Video Streams (ABD216) • https://www.youtube.com/watch?v=rjBXbktBxBg • YouTube: AWS re:Invent Launchpad 2017 - Amazon Kinesis Video Streams • https://www.youtube.com/watch?v=P0O3zBNbtk0 • Kinesis Video Streams - Developer Guide • https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/what-is-kinesis-video.html • Kinesis Video Stream + Rekognition Video • http://docs.aws.amazon.com/rekognition/latest/dg/streaming-video.html What’s next? 28
告知: ABEJA Cloud AI Night 29 http://eventregist.com/e/1222_abejanight