Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
画像認識ハンズオン
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
ISHIGO Yusuke
PRO
January 27, 2018
Technology
0
200
画像認識ハンズオン
ISHIGO Yusuke
PRO
January 27, 2018
Tweet
Share
More Decks by ISHIGO Yusuke
See All by ISHIGO Yusuke
講演(滝学園)2025/12/22
yusk1450
PRO
0
47
2026年度 基礎演習(石郷ゼミ)紹介(名古屋文理大学)
yusk1450
PRO
0
24
ハッカソンを活用したモノづくり教育について
yusk1450
PRO
2
340
コロナ対応 混雑状況マップ搭載 「岐阜県観光AIサイネージ」(2021年)
yusk1450
PRO
0
58
ゲーム技術基礎#1
yusk1450
PRO
0
88
ゲーム技術基礎#2
yusk1450
PRO
0
52
ゲーム技術基礎#3
yusk1450
PRO
0
43
2025年度アプリ開発プロジェクト紹介(名古屋文理大学)
yusk1450
PRO
1
200
自己紹介(研究活動)
yusk1450
PRO
0
100
Other Decks in Technology
See All in Technology
StrandsとNeptuneを使ってナレッジグラフを構築する
yakumo
1
130
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
150
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
今日から始めるAmazon Bedrock AgentCore
har1101
4
420
AWS Network Firewall Proxyを触ってみた
nagisa53
1
240
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
400
OpenShiftでllm-dを動かそう!
jpishikawa
0
140
Amazon Bedrock Knowledge Basesチャンキング解説!
aoinoguchi
0
160
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
2
3.2k
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.6k
コンテナセキュリティの最新事情 ~ 2026年版 ~
kyohmizu
6
1.8k
pool.ntp.orgに ⾃宅サーバーで 参加してみたら...
tanyorg
0
710
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
432
66k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
310
Information Architects: The Missing Link in Design Systems
soysaucechin
0
780
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
440
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Mind Mapping
helmedeiros
PRO
0
90
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
87
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
410
Transcript
None
自己紹介 日本総合ビジネス専門学校 NIHON-CHUO Institution 2017.4- 合同会社4D Pocket 4D Pocket LLC.
2017.4- 石郷 祐介 ISHIGO Yusuke Programmer
ࣾ ձ ʹ ؾ ͮ ͖ Λ ༩ ͑ Δ
ಓ ۩ Λ ։ ൃ ͠ · ͢
モバイル IoT ロボット 人工知能 Web センサ 音声認識 音声合成 機械学習 Beacon
オープンデータ Bot 異分野 × アイデア × 技術 他社との研究開発を主とし、新たな価値を生み出すツールを作る
本日の流れ 1. 画像処理ライブラリ「OpenCV」を使ってみる ・画像を読み込んで表示する ・ノイズ除去、画像反転、輪郭抽出、顔認識 2. 「TensorFlow」と「Keras」で画像分類してみる 3. 「IBM Watson」で画像解析してみる
・風景写真の中から似た風景の写真を探す
Pythonの特徴 サーバサイド言語として登場(P言語のひとつ) ・AI(機械学習) ・データ分析 ・IoT(Raspberry Pi) ・ロボット(ROS) 等 計算用ライブラリが豊富なため、高度な計算が必要なプログラム に多く使われている
開発環境 pyenv PythonやAnacondaをダウンロードしたり、バージョンを切り替える ためのツール Anaconda condaを含んだPythonとパッケージ(プラグイン)をまとめたもの (NumPy、scipy、Pandas、Jupyer、Scikit-learn等のパッケージ) Web系の言語には、バージョンを管理するツールが存在する conda Pythonパッケージをインストールできるツール
Pythonには、標準で同機能のpipがインストールされているが、 Anacondaを使う場合は、condaを使う(condaにないパッケージはpip)
言語の特徴 ① 1.文末のセミコロンは不要 print(“Hello, world!”) 2.変数に型は必要ない(動的型付け=ダックタイピング) hoge = “Hello, world!”
hoge = 123 print(“Hello, world!”); ◯ × String hoge = “Hello, world!” int hoge = 123 × ◯ If it walks like a duck and quacks like a duck, it must be a duck. もしそれがアヒルのように鳴き、アヒルのように歩いたら、それはアヒルである
言語の特徴 ② 3.カッコでなくインデントでまとまりを示す if hoge == ‘aaa’: print(‘Hello,’) print(‘world!’) if
hoge == ‘aaa’ { print(‘Hello,’) print(‘world!’) } ◯ × オフサイドルール
本日の流れ 1. Pythonについて 2. 開発環境の構築 ・pyenv、anacondaのインストール 3. ライブラリを使ってみる ① 標準ライブラリでWebサイトからスクレイピング
② 「matplotlib」で取得したデータのグラフ表示する 4. 基本的な機械学習アルゴリズムを自作してみる ① エクセルのデータを読み込んでグラフ表示する ② 「協調フィルタリング」の実装 5. 「scikit-learn」で簡単に機械学習を実践してみる
OpenCVを使ってみる OpenCV 画像処理・解析のためのライブラリ conda install -c https://conda.anaconda.org/menpo opencv3 C/C++、Java、Python、MATLAB等、多数の言語に対応 Windows、macOS、Linux、Android、iOS等をサポート
機械学習の教師データのための画像整備のために必要
OpenCVを使ってみる ① import numpy as np import cv2 as cv
img = cv.imread(‘Lenna.png’) cv.imshow(‘ウィンドウ名’, img) cv.waitKey(0) cv.destroyAllWindows() 画像を読み込み表示する
OpenCVを使ってみる ① import numpy as np import cv2 as cv
img = cv.imread(‘Lenna.png’, cv.IMREAD_GRAYSCALE) cv.imshow(‘ウィンドウ名’, img) cv.imwrite(‘output.png’, img) cv.waitKey(0) cv.destroyAllWindows() グレースケールで画像を読み込み、保存する データ量を減らすために、グレースケールにしてから画像認識する
OpenCVを使ってみる ② ノイズ除去(平滑化、スムージング) 移動平均フィルタ メディアン(中央値)フィルタ 連続するデータにおいて、他値と乖離しているものを除去する手法
OpenCVを使ってみる ② 移動平均フィルタ 20 0 13 11 9 10 12
8 7 (20 + 12 + 8 + 13 + 7 + 11 + 9 + 10) / 8 = 11.25 20 11 13 11 9 10 12 8 7 補正するピクセルの周辺のピクセルの平均をとる ノイズや境界線の影響を受けて全体的にぼやける
OpenCVを使ってみる ② メディアンフィルタ 20 0 13 11 9 10 12
8 7 7、8、9、10、11、12、13、20の中央値→10 20 10 13 11 9 10 12 8 7 補正するピクセルの周辺のピクセルの中央値を適用する ノイズや境界線の影響を受けにくいので、ノイズのみを除去しやすい
OpenCVを使ってみる ③ ディープラーニング等の教師データとして反転した画像を追加する 画像反転
OpenCVを使ってみる ④ 輪郭抽出(物体認識)
OpenCVを使ってみる ⑤ 顔認識 OpenCVの標準の学習データを使って顔認識を行う 学習データを更新することで、認識物を変えたり、精度を向上できる
本日の流れ 1. 画像処理ライブラリ「OpenCV」を使ってみる ・画像を読み込んで表示する ・ノイズ除去、画像反転、輪郭抽出、顔認識 2. 「TensorFlow」と「Keras」で画像分類してみる 3. 「IBM Watson」で画像解析してみる
・風景写真の中から似た風景の写真を探す
TensorFlowとKeras TensorFlow Googleが開発しているオープンソースの機械学習ライブラリ ディープラーニングに対応している Keras Python用のニューラルネットワークライブラリ TensorFlowをバックエンドとして、同様の機能を完結な書き方で実現できる
ディープラーニング ① 人間の神経細胞の繋がりをモデルにした機械学習手法 パーセプトロン、ニューラルネットワーク 特徴A 特徴B 特徴C 閾値 結果(0 or
1) シグモイドニューロンの場合は0.0〜1.0の間 w1 w2 w3 1.学習したい物事を複数の特徴に分ける 2.特徴の重要性を重み(w1、w2、w3)として設定する 3.入力の合計値が、閾値を超えたら、1を返す
ディープラーニング ② パーセプトロンを層にしたもの 多層パーセプトロン(入力層、隠れ層、出力層が3つのもの) 入力層 出力層 隠れ層 重み付けが大変!
ディープラーニング ③ パーセプトロンを層にしたもの 多層パーセプトロン(入力層、隠れ層、出力層が3つのもの) 入力層 出力層 隠れ層 誤差逆伝播法(バックプロパゲーション) 誤差からパラメータを調整する手法 重み付けが大変!
誤差 重み調整
ディープラーニング ④ 入力層、隠れ層、出力層が4つ以上のもので、誤差逆伝播法の問題点を 解決したもの ディープラーニング 入力層 出力層 隠れ層 … TensorFlow
Playground http://playground.tensorflow.org/
本日の流れ 1. 画像処理ライブラリ「OpenCV」を使ってみる ・画像を読み込んで表示する ・ノイズ除去、画像反転、輪郭抽出、顔認識 2. 「TensorFlow」と「Keras」で画像分類してみる 3. 「IBM Watson」で画像解析してみる
・風景写真の中から似た風景の写真を探す
「IBM Watson」で画像解析してみる あい旅っと 写真の風景に近い国内の風景を探し出し、マップを表示するアプリ
「IBM Watson」で画像解析してみる あい旅っと 写真の風景に近い国内の風景を探し出し、マップを表示するアプリ
「IBM Watson」で画像解析してみる Bluemix Watson API
None