画像処理

Python Google Earth Engine(GEE)を用いてNDVI(植生指数)を図示する

本記事では、Google Earth Engine(GEE)を用いて、下図のような衛星画像と 正規化植生指標(NDVI, Normalized Difference Vegetation Index)を取得する雛形コードを載せました。 下図は鳥取砂丘の周辺の地区について、2023年の4月,8月,12月の衛星画像とNDV…

Python Google Earth Engine(GEE)を使用した地図上に、指定した区域を描く

Google Earth Engine(GEE)は、地球の様子を衛星画像によって可視化、分析できる地理空間分析のプラットフォームです。クラウドベースでデータを取得します。 本記事では、指定した区域を描く雛形コードを載せました。下図例では滋賀県の市町村の境界を色分…

Python URLからQRコードを作成する

本記事では、URLからQRコードを生成する雛形コードを載せました。お気に入りのURLを保存しておきたい場合、あるいはそれを誰かに教えるために他のデバイスに転送したい場合に、URLをQRコード(画像ファイル)にすることでスマートにできます。 例えば、下記…

Pyhotn 線図の細線化「scikit-image × sknw」とsvgファイルの作成「svgwrite」

本記事では、下図のような画像ファイル(.jpgや.png)の線図のラインをpathとしたsvgファイルを作成するPythonの雛形コードを作成しました。 作成したsvgファイルは、CADソフトで読み込むことが出来ます。下図は、オープンソースのFreeCADで読み込んだ例です…

Pyhotn 線図の細線化「cv2.ximgproc.thinning」とsvgファイルの作成「svgwrite」

本記事では、下図左のような線図の線を検出して、下図右のようにCADで読み込めるsvgファイルを作成する雛形コードを載せました。 線図の線は、領域ごとに閉じたポリゴンとして作成します。そのため、押し出すことができます。下図は、オープンソフトのFreeCA…

Python 画像ファイルjpg, pngをsvgへコマンドラインで変換する「Inkscape, Potrace」

コマンドライン(command line)で、画像ファイルjpg, png, bmp等をsvgへ変換するには、ソフトウェアである「Inkscape」 もしくは 「Potrace」を用いる方法があります。本記事では、これらをPythonスクリプトで実行する雛形コードを載せました。 下図はjpg画像…

Python 思い出の写真をコメントと共に動画にする「OpenCV」

本記事では画像ファイルを繋げて動画にする雛形コードを載せました。下図は、ここ数年でワタクシが呑んで写真を撮った日本酒の一覧で61枚あります。写真の解像度はバラバラであっても、指定したサイズ(本コード中では1920×1080)に調整する仕様のため問題な…

Python タートルグラフィックスで絵を描く「turtle」

'21/06/13更新:クロソイド曲線の雛形コードを中程に追記しました。 本記事では、下図のように亀で絵を描く雛形コードを載せました。下図中の左側から、丸, 三角, 四角, 花柄模様はネット検索で出てくる基本事項です。一方、下図右側の赤線のsin波は、自作関…

Python 動画をアニメ化する「OpenCV」

本記事では、動画をアニメチックに変換する雛形コードを載せました。動画の返還前後の動画は下記です。 www.youtube.com ■本プログラム import os import cv2 from PIL import Image, ImageFont, ImageDraw import moviepy.editor as mp import numpy as np …

Python 写真をアニメ化する「OpenCV」

本記事では、画像ファイルをアニメっぽく変換する雛形コードを載せました。変換例を4つ、下記のように動画にしました。 www.youtube.com ■本プログラム import os, glob import cv2 import numpy as np def main(): for file_path in file_path_list: # ファ…

Python 図形の境界を検出して、各領域の面積を求める「OpenCV」

本記事では、画像認識により図形の輪郭を検出して、各領域の面積を求める雛形コードを載せました。同時に、各領域の重心座標と輪郭の長さも数値データとしてcsvファイルに保存し、ヒストグラムや累積分布図も作成する仕様です。 各領域の検出と面積を求める…

Python 音声付きの左右反転動画を作る「OpenCV」

本記事では、Pythonで左右反転動画を作成する雛形コードを載せました。 www.youtube.comの 使用するライブラリは3つで、OpenCV, Pillow, MoviePyです。それらのインストールはpipで次のようにします。 pip install opencv-pythonpip install Pillowpip insta…

Python 3Dグラフを回転する。さらに各画像や動画で保存する方法「matplotlib×OpenCV」

本記事では、matplotlibで作成した3Dグラフを回転して表示する方法と、それらを画像(png, jpg)や動画(mp4)で保存する雛形コードを載せました。 ■本プログラムの仕様三次元にプロットするデータは何でも構いませんが、ここでは下表のような4点としました。 x …

Python 学習済みCNN画像分類器を用いて、画像を分類する雛形コード「TensorFlow2」

本記事では、作成した学習器(CNN:畳み込みニューラルネットワーク)を用いて、画像を分類する雛形コードを載せました。 自前の画像ファイル(jpg, png)で分類学習器を作成する雛形コードは、次のリンク先です。hk29.hatenablog.jp 本記事のプログラムを実行…

Python 自前の画像を分類するため、畳み込みニューラルネットワーク(CNN)による学習器の作成「TensorFlow2」

'21/03/23更新: 本記事では、自前の画像を分類する学習器を作成する雛形コードを載せました。kerasを利用したシーケンシャルなコードです。#####tensorflow2.4.1で動作確認しています。tensorflow2系のインストール方法は、Anacondaのverによっては、pip in…

Python 画像ファイルjpg/pngをsvgへ変換する「OpenCV × svgwrite」

'22/05/01更新:CADで読み込めるsvgを作成する雛形コードを載せました。 画像ファイルjpgやpng等は、ドット(画素)絵でラスタ形式と呼びます。そして、画像ファイルsvg(Scalable Vector Graphics)をベクタ形式と呼び、曲線でも解像度に依らずに滑らかに表…

Python 2値化フィルターによる輪郭の強調。そして座標を抽出する「OpenCV」

'22/07/03更新:グレースケールと輪郭強調だけでは対応できない場合の対策例として、その間の画像加工のコードの記述例を追記しました。・しきい値調整(トライアングル, 大津処理)・ヒストグラム平坦化・白黒反転・パイラテラルフィルタ・ノイズ除去 本記…

Python 複数の画像ファイルを連結して1枚の画像ファイルを作成する「OpenCV, matplotlib, numpy」

'23/11/16更新:図例を見やすいのに差し替えたのとコードの可読性を若干向上しました。 本記事では、Pythonで複数の画像ファイル(jpg, png)を連結して1つの画像ファイルに保存する雛形コードを載せました。下図は、8枚の画像ファイルを3列3行の位置に配置し…

Python 画像ファイルpngをjpgへ変換する「Pillow(PIL)」

本記事では、複数のpng画像ファイルをjpgへ変換するコードを載せました。pngがあるフォルダを指定することや、jpg変換先フォルダを指定すること、オリジナルpngファイルを削除するかを指定することも可能です。処理過程は下図のようにprint出力する仕様です…

Python 画像中の文字認識をして、テキストへ出力する「pyocr/Tesseract-OCR」

光学文字認識の技術であるOCR(Optical Character Recognition)を使用します。 ▼必要なライブラリとソフトのインストール 1. pyocrをインストールするpip install pyocr 2. tesseract-OCRをインストールするWindowsは下記リンク先にexeファイルがあります。 H…

Python Keras(TensorFlow2.0)による畳み込みニューラルネットワーク,CNN

畳み込みニューラルネットワーク, CNN(Convolutional Neural Network)は、画像分類において、画像の位置ずれに強くしたNNです。そのため、画像認証のマルチクラス分類に活用されます。特徴は、2次元フィルタによる畳み込み層と(最大)プーリング層の2種類の…

Python 輪郭の検出とその座標の抽出「OpenCV」

本記事では、画像ファイルの物体の輪郭を抽出する雛形コードを載せました。検出手法を関数として4つ載せました。いずれも処理の大まかな流れは、2値化してしきい値で判別します。その2値化が画像に依っては難しいのです。 そのため、毛色の異なる次の2つのリ…

Python フォルダを再帰的に探索し、フォルダ別に複数の画像ファイルを動画にする

# '20/02/29更新:新しいフォルダを作成して、そこに動画を格納する仕様に変更しました。多数の画像ファイルが、例えば、下図のようなフォルダ構成である場合に適応する。フォルダ名とファイル名は何でも良い。 カレントフォルダ├─17│ ├─meat│ │ 画像1│ │ 画…

Python 画像連結により動画を作成する方法 OpenCV

'20/07/26更新:本文を一部編集しました。 下記動画は写真を連結をして作成しました。音楽の挿入はWindows10標準搭載のフォトを使用していますが、それ以外の加工は全てPythonです。 www.youtube.com ▼本プログラム実行のためのフォルダ環境 ① jpg2avi.py…本…

Python OpenCVによる顔認証とモザイク処理

'21/07/17更新:モザイクをかける関数を追記しました。 簡単に出来ます。その理由は、「haarcascade_frontalface_default.xml」のようなカスケード分類器を活用するためです。これは、機械学習でいう特徴量をすでに学習済みである学習分類器(オブジェクトフ…

Python 顔認証など画像処理するOpenCVのインストール方法

'20/08/23更新:condaによるインストール方法を追記しました。OpenCVをインストールする方法は次の2通りです。 pip install opencv-python もしくは、anaconda環境下ではcondaで次のようにします。 conda install -c conda-forge opencv 以上です。 以下では…

Python webスクレイピング/①google NEWSトップページ/②googleニュース検索エンジン/③画像

■本記事はスクレイピングに関して、3つのことをします。 ①google NEWSトップページにあるリンクをスクレイピングする ②googleニュース検索エンジンにキーワード検索をした結果をスクレイピングする 下図のように、タイトルとURLを抽出する。実行する度に、実…

VBA サブフォルダ内の全ての画像ファイルをExcelに貼り付ける

'18/05/19更新:フォルダ名/ファイル名の並びを各々ソートして取得する仕様にコードを更新した。本プログラムは、main関数を指定して実行するとダイアログが表示されるので、下図のように画像ファイルがあるサブフォルダの親フォルダの箇所でOKを押す。ちな…