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
画像内の “写ってはいけないもの” を 弾きたい / I want to play the ...
Search
koki otaka
May 15, 2026
Technology
150
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
画像内の “写ってはいけないもの” を 弾きたい / I want to play the "things that shouldn't be in the picture"
PHPカンファレンス⼩⽥原 2026登壇資料
https://phpcon-odawara.jp/ja/2026
koki otaka
May 15, 2026
More Decks by koki otaka
See All by koki otaka
管理機能の技術選定: 5年後、現場は耐えたか? / Technology selection for management functions
minisera
0
1.2k
CSとエンジニアをつなぐ新戦略: Embedded CRE 導入事例 / Embedded CRE Case Study
minisera
0
180
管理画面とユーザー機能の調和を取り戻す!~クエリパフォーマンス改善の成功物語~ / Restore harmony between administrative and user functions!
minisera
1
1.2k
Other Decks in Technology
See All in Technology
アクセスキーこわい やめかたと漏らさない工夫
sassssan68
1
380
え、こんなに早く改修できるの?──新人エンジニアとスクラムマスターの2人が語る、AI×アジャイル開発の現場
ysasago
1
290
バイブコーディング時代のWebアプリ開発入門~Cloud Runで学ぶセキュアなビルドとデプロイ
waiwai2111
1
130
AIに任せた品質は、誰が見立てるのか - AI時代のテストマネジメント
nakanao
3
2.1k
AI 時代のスタートアップエコシステ厶から考究する技術的負債との向き合い方
m3m0r7
PRO
3
2.2k
AI時代、データエンジニアが一番おもろい
genshun9
0
660
安心して変更できるWebフロントエンドの作り方
pirosikick
5
2.7k
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
3
510
「ピッケル本」日本語版は4.0(第6版)が出版されるべき / pickaxe4-nagoyark05
kakutani
1
170
AI時代の「技術的負債」の変質ー概念の終焉と再解釈、エージェントと共に向かう先
nwiizo
1
2.8k
DEFCON34-Write-up_HYCu-MYCu
daikiokazaki
0
160
技術的負債から考える、AI時代のエンジニアリング投資 — ビズリーチの技術的負債と向き合った経験から、変更し続けられるソフトウェアを考える/ technical-debt-con2026
visional_engineering_and_design
4
3.1k
Featured
See All Featured
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
330
How GitHub (no longer) Works
holman
316
150k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
240
Agile that works and the tools we love
rasmusluckow
331
22k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
540
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
360
What does AI have to do with Human Rights?
axbom
PRO
1
2.4k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
890
Visualization
eitanlees
152
17k
Transcript
画像内の “写ってはいけないもの” を 弾きたい PHPカンファレンス⼩⽥原 2026 @minisera
4 SmartBank, Inc. αʔόʔαΠυΤϯδχΞ ΈʹͤΒ / minisera @oh_minisera @minisera ʲࠓͷʳ
ը૾όϦσʔγϣϯͰࢼߦࡨޡͨ͠
導⼊ 画像アップロード、よくありますよね ファイル形式 JPEG, PNG など 対応形式 ファイルサイズ 5MB以下かどうか サイズの上限
縦横サイズ 画像の解像度が 基準を満たすか バリデーションたち:
導⼊ 画像の「中⾝」、⾒てますか? ͋ΔҰ͕݅ى͖Δ·Ͱݟ͓ͯΒͣ…
導⼊ 実際に起きた問題: ユーザーに決済情報を添付いただく際に クレジットカード番号が写った画像がアップロード
導⼊ “写ってはいけないもの” 弾きたい
OCRの試み OCRでクレカ番号を読み取る 画像 OCR テキスト パターン 検出
OCRの試み ͳΜ͔͍͚ͦ͏ʂ
OCRの試み 現実は⽢くなかった 斜め撮り ⽂字化け 影‧ブレ 認識不能 OCR結果: 4S2B 0I2 34S6
?890 正解: 4528 0123 4567 8901 ࢀߟը૾ ΛషΔ
OCRの試み ผͷ࡞ઓΛߟ͑Δ OCRɺୀ "
発想の転換 ⽂字ではなく「モノ」で判断する Before 「番号を読み取る」 After 「カードっぽいのが 写っているか判定」
発想の転換 AWS Rekognition DetectLabels Λ͏ ࢀߟ: https://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/labels-detect-labels-i Response: { "Labels":
[ { "Name": “Credit Card”, "Confidence": 95.2364013671875, "Instances": [ { "BoundingBox": { "Width": 0.26779675483703613, "Height": 0.8562285900115967, "Left": 0.3604024350643158, "Top": 0.09245597571134567, }
ൃͷస ศརʂউͬͨʂ
チューニングの旅 検出漏れが多々 # 縦向きカード 89.1% 閾値 90% スルー 影ありカード 87.0%
閾値 90% スルー Response: { "Labels": [ { "Name": “Credit Card”, "Confidence": 95.2364013671875
チューニングの旅 ⼀律の閾値ではなく「複合条件」 ⾼信頼度パターン CreditCard 80%以上 補助条件なし そのまま検出 BBox検出パターン CreditCard 68%以上
カードの⾯積が 画像の⼤部分である スクショパターン CreditCard 56%以上 εΫγϣ૬ͷ ϥϕϧが共存
νϡʔχϯάͷཱྀ ͜ΕͰʂ ΊͰͨ͠ΊͰͨ͠
伏線回収 …まだ漏れるケースがあった カードデザインのないバーチャルカードのスクショ • ただの数字の羅列 • 物体認識では⾒つけられない OCRͷదੑ͋ΔͷͰ…?
OCR、再登場 「補完レイヤー」として復活
最終構成 ମೝࣝ + OCR の⼆層構造 ⼊⼒画像 層1 ମೝࣝ クレジットカードっぽいものか検証 層2
OCR OCR + ΫϨΧ൪߸͔Ͳ͏͔検証 どちらかで検出
νϡʔχϯάͷཱྀ ͜ΕͰ”ຊʹ”ʂ ※本当です
⼀度捨てた技術も 組み合わせれば武器になる
まとめ 3つの学び 問題の捉え⽅を変える 「番号を読む」→「カードが写っているか」。問いを変えるとシンプルな解に辿り着く 銀の弾丸はない ⼀度ボツにした技術も補完レイヤーとして活きる。組み合わせも考える ӡ༻͠ͳ͕Β磨く ͲΜͳΠϯϓοτ͕དྷΔ͔༧ଌ͕͍࣌͠ɺӡ༻͠ͳ͕Βݕग़ਫ਼ΛߴΊ͍ͯ͘
まとめ ͝ਗ਼ௌありがとうございました! クレカ番号の判定の詳細は是⾮ブログを! https://blog.smartbank.co.jp/entry/2026/01/08/100000 画像内の“写ってはいけないもの”を弾きたい @minisera
None