Python
Chromeを遠隔操作するタイプで動かすのが直感的で分かりやすかった。 qiita.com まずは selenium をインストールする pip install selenium chromedriver-binaryをインストールする。https://pypi.org/project/chromedriver-binary/#history へアクセスして…
以下の例では、list2でソートするためにd[1]と指定している。 list1 = ["a", "c", "b", "aa"] list2 = [8, 2, 5, 6] list3 = [1.4, 6.3, 4.5, 4.1] print(list1, list2, list3) list1, list2, list3 = zip(*sorted(zip(list1, list2, list3), key=lambda d: …
16bitモノクロ画像の輝度値の最小が3802、最大が11113とする。 import numpy as np import cv2 src= cv2.imread("input.tif",-1) src=np.add(src, -3802) src=src*(255/(11113-3802)) dst = src.astype(np.uint8) cv2.imwrite("output.png",dst) 注意点: imr…
Wikiediaには、ランダムなページに飛んでくれるSpecialなURLがある。 https://ja.wikipedia.org/wiki/Special:Randompage これを使って、適当なページに存在するひらがなの数を数えてみる。 import matplotlib.pyplot as plt import urllib.request n_pages …
from pip._internal import main as _main import importlib def _import(name, module, ver=None): try: globals()[name] = importlib.import_module(module) except ImportError: try: if ver is None: _main(['install', module]) else: _main(['install'…
等方的ビーム - KobaWiki 原理は先人のページを参考にしてほしい。以下、3次元球面上に乱数で点を描画するプログラムのPythonによる実装 import numpy as np xs = [] ys = [] zs = [] # 乱数を初期化 rng = np.random.RandomState(123) for _ in range(5000)…
バージョン3以降のOpenCVには、画像のラベリングできる関数が実装されている。 connectedComponents は、入力画像と同じサイズの画像にラベルの番号が書かれた画像を返してくれる。 connectedComponentsWithStats はStats、すなわち面積、重心等を含めた情報…
txt = open(target_file, 'r', encoding='utf-8').read().replace('\r', '') with open(target_file, 'wb') as f: f.write(txt.encode('utf-8'))
諸事情で複数の画像を簡易的に1つのファイルに統合したいことがあり、またそのファイルをPythonから読み込みたい需要があった。 Numpyを使ったバイナリファイルの読み込み方、OpenCVを使ったデコードの仕方などの知識を使う。 V00000001_L0_VX0001_VY0000_ma…
uncertainties をpipでインストールする pip install uncertainties 誤差付きの小数の定義はufloat である。 >>> from uncertainties import ufloat >>> a=ufloat(10,1) >>> b=ufloat(3,0.1) >>> a+b 13.0+/-1.004987562112089 >>> a-b 7.0+/-1.004987562112…
Visual Studio用。 UTF-8 BOMなしの場合は、/source-charset:utf-8 をつけておかないと、エライことになると同僚から報告を受けた。この話は後述する。 なので、可能な限りUTF-8 with BOMに自動で変換してみる。以下のコードを実行する前に必ずバックアップ…
Pythonをインストール Ubuntu (WSL2) Windows 各パッケージのインストール 日本語フォント Ubuntu Windows Jupyter extension Windowsでipynbをjupyter labで開く 方法 Jupyterのバージョン確認 PIP関連 Ubuntu(WSL2)へインストール Windowsへインストール P…
最近乱高下だったダウ平均株価を例にする。次のURLからTime PeriodをMaxにしてDownload Dataして、 DJI.csv として保存する。 finance.yahoo.com datetimeを使った時間のstrからdatetimeクラスへの変換とかも使う import csv import matplotlib.pyplot as pl…
nodejsをインストールする。12.16.1 LTSで良い。 nodejs.org qiita.com 例えば、Table of Contents (TOC)をインストールしてみる 拡張機能 パズルのピースっぽいマークを選択。なければSettings->Enable Extension manager (Experimental)をクリック toc を…
concurrent.futures の ThreadPoolExecutor と、 ProcessPoolExecutor を使うのがセオリーだろう。 スレッド内、プロセス内で例外が出たらprintする機能、スレッドやプロセスを順番に回収して残りスレッド数・プロセス数を表示する機能を実装してある。 使い…
まずは、 その19 直線同士の最接近距離と最接近点を知る をPythonへ移植する import numpy as np # http://marupeke296.com/COL_3D_No19_LinesDistAndPos.html def distance_2lines(line1, line2): ''' 直線同士の最接近距離と最接近点 return 直線間の距離,…
rcParamsの使い方 デフォルトのfigureのサイズを指定する アスペクト比を設定 上下左右の隙間を設定する figsizeに合わせて上下左右とsubplots間の隙間を自動調整 さらに細かくレイアウトを調整 subplotsに共通の軸ラベルを付ける 軸設定 (transform) rcPara…
取り急ぎ、Windows PCでQRコードを読み込みたい需要があったので、書いてみた。QRコードをデコードするコードは下記のqiitaを丸パクリした。 qiita.com import cv2 from pyzbar import pyzbar import subprocess # デバイス上でのウェブカメラを取得 cap = c…
qiita.com import yaml from collections import OrderedDict def represent_odict(dumper, instance): return dumper.represent_mapping('tag:yaml.org,2002:map', instance.items()) yaml.add_representer(OrderedDict, represent_odict) obj = OrderedDic…
以下のような、核種を表す表記を、LaTeXで使えるような表記に置換したい。 He4 → \Nuc{He}{4}{} He5L → \Nuc{He}{4}{\Lambda} シンプルなコードだと以下の通り。 グループ化という機能を使って、正規表現側で () で囲むと、囲んだところが \1 \2 と番号が振…
参考にした解説: http://www.cc.u-ryukyu.ac.jp/~fukami/p0.pdf 及び岐阜大学教育学部の物理学実験及びコンピュータ処理の解答例 ある二次元(x,y)の点列で与えられるデータ群を、一次関数 (=直線) でフィッティングするとき、カイ二乗を最小にすればよい。y…
Pythonのnumpyの np.cov を使って分散共分散行列を求め、モンテカルロデータを作るために np.random.multivariate_normal を使って分散共分散行列に従う乱数を生成する。 また、生成した乱数の標準偏差を求めることで、プログラムの検証をした。 import nump…
画像の読み込み(今回はグレー画像) ROI (今回の画像は300×300pixel、中央56×56 pixelを使う) リサイズ(伝統的なサンプルにならって28×28 pixelにするため0.5倍) フリップ・回転(サンプル画像を8倍に増やすため) revel() で1次元化 import cv2 import numpy a…
qiita.com
新記事に全てまとめました phst.hateblo.jp
Pythonで、ユーザのホームディレクトリ、すなわちログイン時のカレントディレクトリを取得する方法は、WindowsでもUbuntuでも(Macでも)同じ方法が使える。 Windowsの場合 >>> from os.path import expanduser >>> expanduser("~") 'C:\\Users\\Masahiro' Ubu…
from scipy import special import numpy as np import matplotlib.pyplot as plt x = np.linspace(-15, 5, 201) (ai, aip, bi, bip) = special.airy(x) plt.plot(x, ai, label="ai") plt.plot(x, bi, label="bi") plt.ylim(-0.5, 1.0) plt.legend() plt.sho…
JupyterファイルをそのままPDF化すると、日本語(2バイト文字)が出力されない。出力されるように、テンプレートのdocumentclassを変更する。 jupyter --path で出力されるパス data: C:\Users\Masahiro\AppData\Roaming\jupyter C:\Users\Masahiro\AppData\Ro…
PythonのJupyter Lab等でPDF出力するには、pandocを使ってLaTeXファイルを生成してから、それをXeLaTeXを通してPDF化するという手順を踏む。 pandocをインストールしていないと、 500 : Internal Server Error The error was: nbconvert failed: Pandoc wasn…
グレースケールで上記の画像を読み込む。 31x31のカーネルサイズのガウシアンフィルタをかける ガウシアンフィルタをかけた画像から元画像を引く しきい値 18 の処理をかける 確率的ハフ変換を行う 直線を描画する # %% import cv2 import numpy as np img =…