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
呪符式高速詠唱シェル芸 3
Search
xztaityozx
July 23, 2023
Programming
810
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
呪符式高速詠唱シェル芸 3
第65回シェル芸勉強会のLTで使った資料です
xztaityozx
July 23, 2023
More Decks by xztaityozx
See All by xztaityozx
音声合成してみよう
xztaityozx
2
1.9k
Other Decks in Programming
See All in Programming
はてなアカウント基盤 State of the Union
cockscomb
1
1.3k
Welcome to the "Parametricity" 🏙️ − Generic だけど Specific な世界 −
guvalif
PRO
1
180
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
330
Haskell/Servantを通してWebミドルウェアを捉え直す
pizzacat83
1
610
Embedded SREと共に達成した会員管理システムのAWS移行 - SRE NEXT 2026 ランチスポンサーセッション
niftycorp
PRO
1
3k
信頼性について考えてみる(SRE NEXT 2026 miniLT)
hayama17
0
210
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
3k
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
380
Claude Opus 4.6以後の受託開発エンジニアの変化(Claude Code開発ノウハウ大公開スペシャルbyクラスメソッド)
iidatakuma
1
860
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
240
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
180
1年で人数1.5倍、PR数5.5倍増。 品質とアウトカムはどうなったか、 何が効いたか
ike002jp
0
150
Featured
See All Featured
Between Models and Reality
mayunak
4
380
Building AI with AI
inesmontani
PRO
1
1.1k
Ruling the World: When Life Gets Gamed
codingconduct
0
290
Deep Space Network (abreviated)
tonyrice
0
230
Speed Design
sergeychernyshev
33
1.9k
sira's awesome portfolio website redesign presentation
elsirapls
0
310
Docker and Python
trallard
47
4k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
220
The SEO identity crisis: Don't let AI make you average
varn
0
520
Raft: Consensus for Rubyists
vanstee
141
7.6k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
3
360
Un-Boring Meetings
codingconduct
0
350
Transcript
呪符式高速詠唱シェル芸 3 たいちょー
みなさん#!/bin/bash(こんにちはの意) たいちょーです twitter: @xztaityozx_001 GitHub: xztaityozx 好きな言語: C#, Go
今回話すこと 多数決で読み取り精度をあげようとした話
前回までのあらすじ
1. yukichantという文字列⇔呪文変換ツールがあった $ echo シェル芸 | chant 羅の烙印を底より守る。沈み世界を呼び声の砕ける。引きを肉より災いを成り。守り。
2. 詠唱が難しいので前もって書いておくことにした echo unko の呪文
3. OCRの気持ちになり切れず修行不足という結論になった
4. ある度修正できるようにした 誤認識されやすい文字のマッピングを書いて修正させる
5. でも本番では失敗した もっと精度を上げたい…!
いままでの仕組みのつらみ 今の仕組み i. OCRで読み取り ii. 誤認識を修正 iii. yukichant でデコード iv.
コマンド実行 単一のOCRエンジンの出力をそのまま使っていました なのでそのOCRエンジンが間違えたらおしまいなわけです
複数個に増やせばいい のでは?
複数個OCRの多数決を 取ってみる 1. N個のOCRがそれぞれ読み取り 2. 読み取り結果を審議 a. 信頼度を計算し文字に投票 b. 得票数が一番多い文字を採用
3. 2を繰り返して元の文章を復元
多数決を取るやつ Magi OCRの結果をまとめて多数決を取るやつを作ります 信頼度は以下の項目をもとに計算 OCRの読み取り精度(体感) yukichantに登場する文字かどうか 文字数は長い方にあわせる 正しい長さの計算方法がわからん Magi 東方の三賢者ってやつらしい
正直エヴァ参考にした
三賢者の紹介 Tesseract OCR オープンソースなOCRエン ジン 読み取り精度はそこそこ 追加学習できるけど今回は 間に合わなかった
三賢者の紹介 Windows OCR Windows組み込みのやつ .NET系なら簡単に扱える 読み取り精度は謎
三賢者の紹介 Google Cloud Vision API Google Cloudで提供されて るOCRサービス Google Driveのやつより簡
単に使える なんか読み取り精度すごい 従量課金
実装しましょう
できました 以前のライブコーディングで書いたデータで試してみます
読み取れました
多数決の過程 緑が採用、赤が不採用な文字 なんかTesseractが完璧に読み取れているんですが…なんで…。
ライブコーディングをやります 今度こそ魔術師になるんだ 誘惑の邪気を魂すら借り。業火に羅の星と失え。血を果たせ。
まとめ OCRをN個使ってどれかが間違っても他で補えるようにしました 読み取り結果を多数決とりました 前回失敗したやつは補正できました
$ owari kan -ga xztaityozx | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄| | 終 | |
制作・著作 | |  ̄ ̄ ̄ ̄ ̄ ̄ ̄ | | xztaityozx | |_________| ∧∧ || ( ゚д゚)|| / づΦ