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
TSX の <Hoge<Fuga>> という構文に驚いた話 / tsx-type-argument-syntax
kanaru0928
0
240
VibeCodingからAgenticWorkflowへ
starfish719
0
740
React本体のコードリーディング
high_g_engineer
1
150
片田舎のおっさん、 Swift Buildのダイアモンド問題解決の不具合修正PRを出すが、解決方法がキャッシュをしないようにすることであり、ビルド時間が伸びると言われてマージされないので高速化もする/swiftbuild
yimajo
0
230
AIを紡ぐPMのお話
swdtkuy
0
120
Flow は今どうなっているか
mizdra
PRO
0
670
Discordを用いたラボオートメーション関連情報収集の自動化
noguhiro2002
0
310
Go 1.27 における memory allocation の高速化
andpad
0
290
Jindong: Introducing Declarative Haptics in Compose Multiplatform
l2hyunwoo
0
130
Android CLI
fornewid
0
230
仕様駆動開発の消費期限
watany
20
8.8k
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
1
710
Featured
See All Featured
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3k
Making Projects Easy
brettharned
120
6.7k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
ラッコキーワード サービス紹介資料
rakko
1
4.5M
Discover your Explorer Soul
emna__ayadi
2
1.3k
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
400
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
420
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
The Invisible Side of Design
smashingmag
301
52k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
380
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
280
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 | |_________| ∧∧ || ( ゚д゚)|| / づΦ