Chrome Driverとバイナリーのバージョンを一致させるためのDockerfileの書き方 2023-07-17 2.2k{icon} {views} Seleniumでスクレイピングするには、Chrome Driveとバイナリーの両方が必要になりますが、両者のバージョンの一貫性をDockerfile内で保つことにややハマったので自 […]...
Jupyter Lab上からChatGPTを使える「Jupyter AI」をDockerから利用する 2023-06-13 1.3k{icon} {views} Jupyter Lab上から簡単にChatGPTを使える「Jupyter AI」をカスタムDockerで動かしてみました。使用するライブラリに応じてオリジナルな開発環境を自在に構築す […]...
ディープラーニングの動画読み込みをいい感じにしてくれる「Decord」の紹介 2023-02-04 2.6k{icon} {views} ディープラーニングでの動画解析向けの読み込みライブラリ、Decordを紹介します。OpenCVよりもフレーム間のスキップやバッチ化が簡単にできるようになっています。PyTorchと連 […]...
colorsysでライブラリ不要でRGB→HSV変換をする 2023-02-04 3.4k{icon} {views} PythonでRGB値から色相、彩度、明度への変換は画像処理ライブラリを使わないで行うことができます。ビルトインのcolorsysというモジュールを使います。 きっかけ コード書くの […]...
Gradioでセッションの概念を導入する 2023-01-24 2.5k{icon} {views} Gradioでユーザー名などセッションごとに変数を記録したいときはよくあります。gr.Stateで簡単にできるので、アンチパターンとセットで紹介していきます。 アンチパターン:グロー […]...
Gradioでログイン認証を入れる方法 2023-01-23 5.4k{icon} {views} Gradioで作ったアプリにログイン認証を入れる必要があったので、方法を調べてみました。launchの引数にauthを追加するだけで簡単にできます。 はじめに Hugging-Fac […]...
OpenCVで「 (-5:Bad argument) in function ‘rectangle’」と怒られた 2022-12-05 11.5k{icon} {views} OpenCVでcv2.rectangleを実行したところ、「-1: error: (-5:Bad argument) in function ‘rectangle […]...
ffmpeg-pythonでサクッとNumPy配列から動画を出力する 2022-12-05 7.6k{icon} {views} ffmpeg-pythonを使って、NumPy配列から動画を生成する方法を説明します。OpenCVのVideoWriterよりも、コーデックの問題が発生しづらかったり、画質を柔軟に選 […]...
DockerでGPU版ONNXを使ってみる 2022-12-04 2.9k{icon} {views} DockerでGPU版をONNXを動かしてみました。比較的に簡単に動かせたので、いろいろ便利だと思います。YOLOXを例に検証します。 概要 ONNXRuntimeのGPU版をDoc […]...
FastAPI+MessagePackで画像とメタデータを一緒にPOSTする 2022-11-25 1.5k{icon} {views} FastAPIで画像とメタデータ(テキストやリストなど)を一緒に、1つのオブジェクトとしてPOSTする方法を解説します。MessagePackで全部丸々固めてしまうやり方で、サクッと […]...