iOSショートカット版のリザルト計算機つくったんですけども、
写真の選択とかの操作がめんどくさい、
Androidで使えない
ってのであまり使われませんでした。
そこでDockerで動かせるAPIサーバー作りました。
パソコンさえあれば計算できるようにしました
https://nenelobo-calc.wamom.f5.si/ocr
メソッド: POST
image: PNG、またはJPEG形式のバイナリ画像ファイル
拡張子は'*.png', '*.PNG', '*.jpg', '*.JPG', '*.jpeg', '*.JPEG'
debug: "1" を指定するとデバッグ用の画像を返す(省略可)
{
"results": [
{
"player": 1,
"perfect": 1234,
"great": 56,
"good": 7,
"bad": 0,
"miss": 1,
"score": 157890
}
]
}
results: プレイヤーごとの認識結果
score: ランクマッチ用スコア(Bot内で順位付けに使用)
debug_image_base64 や preprocess_params などのデバッグ情報を含む場合あり
DiscordでBotをメンションしつつ画像を添付すると、APIに送信してOCRします。
レスポンスを整形して、プレイヤーごとのリザルトや順位を返信します。
debug と一緒に送るとデバッグ用の画像も返信されます。
// OCR APIエンドポイント
const OCR_API_URL = 'https://nenelobo-calc.wamom.f5.si/ocr';
const form = new FormData();
form.append('image', buffer, { filename: 'image.png', contentType: 'image/png' });
form.append('debug', '0');
const ocrRes = await fetch(OCR_API_URL, {
method: 'POST',
body: form,
headers: form.getHeaders()
});
const result = await ocrRes.json();
NENELoBo-mini として公開しています。
使い方などはこれ見てください。