2022-01-01から1ヶ月間の記事一覧

自家製はんだフラックスの作り方

www.youtube.com 無水エタノール(IPA) 松ヤニ グリセリン クエン酸

アナログ映像信号の転送

www.youtube.comelectronoobs.com

写真のEXIF(作成日)をチェックする

import glob import os import subprocess files = glob.glob('./*') for filename in files: cmd = """exiftool -a -u -g1 """ + filename + """ | grep "Create Date" | head -n 1 | awk '{split($0,a,":"); print a[2]"/"a[3]"/"a[4]":"a[5]":"a[6]}'""" …

Matlabで異常値を削除する

www.mathworks.com B = rmoutliers(A) 異常値を削除したあと欠損値を埋めれば前処理として使える。 B = rmoutliers(A) C = fillmissing(B,'movmedian',10);

Matlabで欠損値を移動平均で埋める

>> F = fillmissing(A,'movmedian',10);

飽差について

shisetsuengei.com 上の表を見ると、だいたい6.8 g/m3を超えると不足といえる。 実測データから計算してみると、ほとんどの時間で不足しているようである。 github.com ちなみに温度と飽差(HD)は連動している。温度の上昇を予測することができれば、飽差の…

Pytorch liveで画像識別モデルをAndroidアプリにデプロイ

pytorch.orgチュートリアルに従うと../../models/detr_resnet50.ptlがないと怒られる。 make_model.pyを実行する必要がある。 cd ImageClassificationTutorial/models python make_models.py実行するとモデルが作られてmodelsディレクトリが1.27Gになった。 …

SSDの転移学習

cedro3.com

Phantom3のシリアル番号の調べ方

service.dji.com

モデル予測制御のチュートリアル

www.youtube.com

変数選択:PCAとL1正則化(Lasso)

tjo.hatenablog.com 上の記事を読んでいたら次の箇所が気になった。 「予測モデルの変数を重要なものだけに絞りたいと思ってPCAで上位のものだけを残したら、却って予測精度が下がってしまいました」 変数選択をするならむしろL1正則化(Lasso)を使った方が無…

HaltWintersの結果プロット

aはある時系列データ(tsオブジェクト)とする h <- HoltWinters(a) plot(h) 原信号、トレンド成分、周期成分、残渣成分に分けてプロットする decomp <- ts.union(y=h$x,Level=h$fitted[,"level"]+h$fitted[,"trend"],Season=h$fitted[,"season"],Residuals=…

Rのプロット上でズームする

stackoverflow.com library(zoom) # Invoke the Library # Call plot zm() Xの別ウィンドウが立ち上がるので、iでZoom in、oでZoom outできる。 矢印キーで上下左右に移動できる。

Rでxtsからtsに変換する

stackoverflow.com XTS -> TSへの変換 library(tsbox) nowTS <-ts_ts(<YOUR XTS FILE>) TS -> XTSへの変換 library(tsbox) nowXTS <-ts_xts(<YOUR TS FILE>)</your></your>

Pandasで時系列データのデータフレームの作成とプロット

こういうCSVデータを時系列データとして扱いたい。 Timeデータは(秒)を表す。 Time,Temperature,Humidity,CO2,"Soil Moisture" 22,20.7,79,380,80 44,20.7,80,380,87 66,20.7,80,396,88 88,20.6,79,399,87 110,20.6,79,399,87 132,20.6,79,399,87 154,20.6…

Rでミリ秒データをPOSIX時間に変更してtsオブジェクトに格納する

今回対象とするデータは以下のようなもの > head(df) Time Temperature Humidity CO2 Soil.Moisture 1 22 20.7 79 380 80 2 44 20.7 80 380 87 3 66 20.7 80 396 88 4 88 20.6 79 399 87 5 110 20.6 79 399 87 6 132 20.6 79 399 87 ミリ秒のPOSIXtimeへの変…

TeXでCVに更新日を入れる

tex.stackexchange.com \newcommand{\updateinfo}[1][\today]{\par\vfill\hfill{\scriptsize\color{gray}Last updated on #1}}

jMAVSIMのショートカットキー

Sで地上固定カメラ。 FでFirst person view。 github.com public static void printKeyCommands() { System.out.println("Views:"); System.out.println(" F - First-person-view camera."); System.out.println(" S - Stationary ground camera."); System.…

メトロポリス法でガウス積分を求める

import random import math import matplotlib.pyplot as plt from tqdm import tqdm niters = [int(1e3),int(1e5),int(1e7)] # niter = 1000 for niter in tqdm(niters): step_size = 0.5 x = 0 naccept = 0 xs = [] for i in range(niter): backup_x = x a…

モンテカルロ法でガウス関数の積分を求める

を求める。 とすると、乱数r(-a≤r≤a)に対する関数の値の値の平均値を計算し、積分区間の幅をこのにかけることで、もとの定積分の近似値が求まる import random import math import numpy as np import matplotlib.pyplot as plt from tqdm import tqdm a_s =…

モンテカルロ法で円周率を求める

import random from re import I N = 1000000 p_in = 0 p_out = 0 for _ in range(N): rx = random.random() ry = random.random() if rx**2+ry**2 <=1: # inside p_in += 1 else: p_out += 1 all = p_in+p_out target_area = p_in/all circumference = targ…

RosettadroneでDJI Phantom3コントローラの信号をQGroundControlに中継する→失敗

github.com Androidアプリをインストールしてみたができなかった。 あきらめてPS3コントローラで試すことにする。

PX4+jMAVSIMでドローンのシミュレーション

docs.px4.io make px4_sitl_default jmavsimMavlinkが裏で動いているので、QGroundControlを立ち上げるとドローンと通信できる。 開始位置の座標は以下で指定できる。 docs.px4.io export PX4_HOME_LAT=28.452386 export PX4_HOME_LON=-13.867138 export PX4…

QGroundControlでJoystickの設定

docs.qgroundcontrol.com

PX4のGazeboでズームできない

discuss.px4.io Tools/sitl_run.shを書き換える。 # Disable follow mode if [[ "$PX4_NO_FOLLOW_MODE" != "1" ]]; then # follow_mode="--gui-client-plugin libgazebo_user_camera_plugin.so" follow_mode="" else # follow_mode="" follow_mode="--gui-cl…

PX4でGazebo SITLのビルド

レポジトリのクローン git clone https://github.com/PX4/PX4-Autopilot.git cd PX4-Autopilot git submodule update --init --recursive デフォルトのMakefileは全コアを使い、メモリを食いつぶしてしまう。 以下のファイルでビルドの並列化を2に設定する…

catkin_makeとcatkin toolsの対応表

catkin-tools.readthedocs.io

Ubuntu16.04にxRDPをインストール

$ sudo apt-get install xrdp $ sudo apt-get install mate-core mate-desktop-environment mate-notification-daemon $ sudo sed -i.bak '/fi/a #xrdp multiple users configuration \n mate-session \n' /etc/xrdp/startwm.sh

Stan入門

Stan超初心者入門 from Hiroshi Shimizu www.slideshare.net

live-serverの代わりのbrowsersync

stackoverflow.com npm install -g browser-sync browser-sync start --server --files .