ソースに絡まるエスカルゴ

貧弱プログラマの外部記憶装置です。

python

【Raspberry Pi/python】Raspberry Pi 4のGPIOを使ってLチカをする

Raspberry Pi 4についての記事はいくつか書いてきましたが、そういえばGPIOを扱ったことはありませんでした。 なので今回はRaspbery Pi 4のGPIOを使ってLチカをやるまでの備忘録になります。 基本的には参考資料に挙げているページ様の通りなので、詳しくは…

【Raspberry Pi/python】Raspberry Pi 4にTensorFlow環境を作ってサンプルを動かしてみる

色々と耳にしてはいましたが、今まで一切触れてこなかったTensorFlowなるものをRaspberry Pi 4に入れてみようと思って入れてみました。 一応サンプルが動くまではいったのですが、よくわからないエラーやWARNINGなどが出るのと処理が結構遅かったりするので…

【python】pygameでスプライトアニメーションと画像の変形、回転

以前にpygameでタッチパネルを使う簡単なサンプルの記事を書きました。 【Raspberry Pi/python】pygameのインストールとタッチパネルを使ったサンプル - ソースに絡まるエスカルゴ 今回はもうちょっとpygameをちゃんと使ってみようと思い、タイトルにあるよ…

【Raspberry Pi/python】Raspberry PiのCPU温度などを取得する

Raspberry Pi 4は発熱がものすごく、普通に使っていてもCPU回りを触ると温かくなります。 ファンやヒートシンクはほぼ必須なのですが、具体的にどれぐらいの温度になるのかを知りたくて調べたところ簡単にCPUの温度などの情報を取得できることがわかりました…

【Raspberry Pi/python】pygameのインストールとタッチパネルを使ったサンプル

Raspberry Pi用に使っている小型ディスプレイがタッチパネルにもなっているので、タッチ機能を使った何かができないかと調べていたらpygameというライブラリを見つけました。 このライブラリはpythonでゲームを作るためのものらしいのですが、タッチパネルの…

【Raspberry Pi】Raspberry Pi 4のRaspberry Pi OSにOpenCV環境を構築する

今までも何度もOpenCVをラズパイにインストールしてきましたが、今回もまたインストールしていきます。 Raspberry Pi OSになって初めてインストールするのと、実際にインストールして色々問題が発生したりしたのでその備忘録です。 ちなみに流れとしては前に…

【python】別スレッドのExceptionを検知してそのスレッドを再起動させる

pythonの記事は色々書いてきたものの、スレッドについては今まであまり触れてきませんでした。 自分の勉強がてら「別スレッドのExceptionを検知してそのスレッドを再起動させる」ことができたのでその備忘録です。 では始めます。 1:スレッドの書き方 pyth…

【python】pythonでHTTP通信を行って天気を取得する

pythonでHTTP通信をやったことなかったことに気づいたのでやってみた備忘録です。 やっていることはほぼコピペなので詳しく知りたい方は参考資料のページを参照してください。 では始めます。 1:requestsのインストール HTTP通信を行うにはrequestsをimpor…

【python/OpenCV/Pillow】Pillowを使ってgifアニメーションを作成してみる

rikoubou.hatenablog.com 過去に上記の記事でpythonとOpenCVの環境を構築しました。 pythonとOpenCVを使ってgifファイルは作成できないのか、と思い調べてみるとPillowというものを組み合わせればgifファイルを作成できることがわかったのでその備忘録です。…

【python】Windowsにdlibをインストールする

以前の記事でMacにdlibをインストールしました。 【python】MacOSにdlibをインストールする - ソースに絡まるエスカルゴ 今回はWindowsでもdlibのインストールをやってみたのでその備忘録です。 では始めます。 0:前提条件 以下の記事を参考にしてWindows…

【python/OpenCV】Windows10にpythonとOpenCVの環境を構築する

今まで以下のようにDebianとMacOSでのOpenCVの環境構築をやってきました。 【TinkerBoard/OpenCV】TinkerBoardにOpenCVの環境を構築する - ソースに絡まるエスカルゴ 【python/OpenCV】MacOSにpythonとOpenCVの環境を構築する - ソースに絡まるエスカルゴ 今…

【Raspberry Pi】Raspberry Pi Zero WにOpenCVの環境を構築する

rikoubou.hatenablog.com 以前の記事でTinkerBoardにOpenCV環境を構築してみました。 最後のところで「Debian系なのでRaspberry Piでもいけるはず」と書いていたので、今回Raspberry Pi Zero WにOpenCV環境の構築をやってみました。 結論から言うとほぼ同じ…

【python/OpenCV/dlib】顔を認識して笑い男画像をリアルタイムで貼り付ける

過去の記事でdlibを使って顔認識をしたり、アルファ画像を合成したりしました。 【python/OpenCV/dlib】dlibとOpenCVを使って顔認識をする - ソースに絡まるエスカルゴ 【python/OpenCV】背景画像にアルファ画像を合成する方法 - ソースに絡まるエスカルゴ …

【python/OpenCV】背景画像にアルファ画像を合成する方法

今回はpythonとOpenCVを使って背景画像にアルファ画像を合成する方法の備忘録になります。 では始めます。 1:背景画像とアルファ画像を用意する 背景画像と合成用のアルファ画像を用意します。 今回は以下の画像を使った前提で進めていきますので、必要な…

【python】ディレクトリ(フォルダ)の作成と削除

pythonの記事をいくつか書いていましたが、ディレクトリの作成や削除といったものをやってこなかったので、今回はディレクトリ操作についての備忘録です。 参考資料として挙げたページ様を簡単にまとめた形になるので、詳しく知りたい方はそちらを参照してく…

【python】線分ABと線分CDの交点(2つの直線の交点)を計算する

以前の記事でハフ変換を使って画像から直線を求めました。 【python/OpenCV】読み込んだ画像から直線を抽出する方法 - ソースに絡まるエスカルゴ 直線を出したら交点も求めたくなるのではないか、という気がするので今回はタイトル通りに2つの直線の交点を計…

【python】pythonにおける参照渡し/値渡し

2019/05/20:色々と間違えていたので修正しました。 今回は割とハマりがちなpythonにおける参照渡しと値渡しについてです。 関数の引数として渡した場合はどちらなのか? みたいな内容の備忘録です。 自分も結構はまってしまったので何かの助けになれば幸い…

【python/OpenCV】読み込んだ画像から直線を抽出する方法

今回はタイトルにある通りpythonとOpenCVを使って読み込んだ画像から直線を抽出する方法の備忘録です。 基本的には参考資料に挙げたページ様からの引用ですので、詳しく知りたい方はそちらを参照してください。 直線を抽出する大まかな流れとしては以下の通…

【python/OpenCV】カメラの歪み補正を行う方法

カメラのレンズの種類によっては画像自体に歪みが発生する場合があります。(広角レンズなど) そのカメラの歪みをpythonとOpenCVを使って補正する方法を説明していきます。 基本的には参考資料にあるページ様のソースコードそのままなので、詳しい内容はそ…

【python/OpenCV/dlib】dlibとOpenCVを使って顔認識をする

rikoubou.hatenablog.com 前回の記事でdlibをインストールしました。今回はそのdlibとOpenCVを使って顔認識をしていきます。 では始めます。 1:学習済みデータのダウンロード 顔の認識には学習済みのデータを使用します。 Index of /files 上記のページを…

【python】MacOSにdlibをインストールする

OpenCVでも顔の検知はできますが、より精度の高い顔の検知をするためのライブラリとして「dlib」というのがあるのを知りました。 今回はそのdlibをインストールする方法です。 基本的にはpipが入っていればコマンド一つでインストールできるのですが、自分の…

【python/OpenCV】カメラ映像をキャプチャするプログラム

pythonとOpenCVを使って色々やってきた中で今更な感じですが、今回はカメラ画像を任意のタイミングで気軽に画像として保存できるようにするプログラムです。 画像認識などを行う場合にはサンプルとして様々な画像を取得する必要があったりします。「楽してカ…

【python】pythonを使った最小二乗法でデータから数式を推定する方法

今回はタイトルにある通り、pythonを使ってデータから数式を推定する方法の備忘録です。 最小二乗法とか難しい言葉を使ってはいますが、要は「データをプロットすると一定の法則性があって数式化できそう」という場合に用いる方法になります。 詳しい理論な…

【python/OpenCV】画像の特定の色を抽出する方法

今回はpythonとOpenCVを使って画像の特定の色を抽出する方法の備忘録です。 OpenCVでは2つの方法で特定の色を抽出できるので、その2つの方法を説明していきます。 では始めます。 1:RGBでの色抽出方法 まず一つ目の方法としてRGBでの色の抽出方法がありま…

【python】クラスの継承

rikoubou.hatenablog.com 一つ前の記事では単体テストをやりました。今回はタイトルにある通りpythonでのクラスの継承です。 正直参考資料のページを参照した方がわかりやすいかと思いますが、自分のための備忘録として記事に残しておきます。 では始めます…

【python】単体テストの記述方法

rikoubou.hatenablog.com 以前書いた記事でpythonのクラスとファイル分けをしました。 今回はこの時作成したsumClass.pyを例として単体試験の書き方の備忘録という内容です。 では始めます。 1:単体テスト用の書き方 pythonにはデフォルトで単体試験用のク…

【python】クラスとファイル分け

今まで色々とpythonを使ってソースコードを書いてきましたが、処理を別ファイルに分けたりクラスに分けたりということを特に意識していませんでした。 なので今回はpythonでの「クラスとファイル分け」についての備忘録です。 では始めます。 0:テスト用コ…

【python/OpenCV】OpenCVで動画ファイルの読み込みと保存の方法

今までpythonとOpenCVを使ってWebカメラや静止画の加工などはやっていましたが、動画ファイルを扱ったことがなかったのでその備忘録です。(※ちなみにOpenCVでは音声は扱えません) OpenCVとpythonの他にどうやらopencv_ffmpegを入れてないと使えないような…

【Blender/python】Blender2.8でちょっとした自作アドオンを作ってみた

まだまだリリースは先なBlender2.8ですが、ベータ版が公開されてからはだいぶ安定して使えるようになってきている感じがあります。 そんな中、ちょっとBlender2.8でアドオンを作ってみるか、と思い立って作ってみたのでその備忘録です。 基本的にはBlender2.…

【OpenCV】Webカメラから取得したキャプチャが過去のものになっている時の対処方法

今回はタイトルにあるようにOpenCVで時々ある問題についての解決方法です。 このタイトルにあるような現象は、例えばRaspberry PiなどでOpenCVを使ってWebカメラからの画像を取得するといった場合に起こることがあります。また1台のPCで大量にWebカメラの画…