tak0kadaの何でもノート

発声練習、生存確認用。

医学関連は 医学ノート

C++での時間の取り扱い

C++で日時を取り扱うプログラムを書いている。Cスタイル、C++スタイルの両方が存在しているほか、相互に変換するための関数、計測精度ごとに複数の関数が存在するなど非常にややこしい。以下は簡単なまとめとして、具体的にインクルードすべきヘッダ、型に関する情報はレファレンスをその都度参照して確認する。

続きを読む

KLダイバージェンス、JSダイバージェンス

# Kallback-Leiblerダイバージェンス
def kld(p, q):
    p = np.array(p)
    q = np.array(q)
    return np.sum(p * np.log(p/q))

# Jensen-Shannonダイバージェンス
def jsd(p, q):
    p = np.array(p)
    q = np.array(q)
    m = 0.5 * (p + q)
    return 0.5 * (kld(p, m) + kld(q, m))

PaaSいろいろ

常時運用しているサーバーを持っているわけではないのでPaaSというものが便利そうに見える。

以下は各種サービスについてのメモ

続きを読む

LINE Messaging API

部活で使っているLINEグループの会話履歴を取るのに便利そう。

jarファイルの逆コンパイル

jar xvf test.jar jad -o -r -sjava -dsrc **/*.class

jadhttp://varaneckas.com/jad/からダウンロードする。扱いやすそうなのでstatically linkedなファイルを選択した。

日本語は\uから始まる文字列になっているのでpythonならline.encode().decode('unicode-escape')して変換できる。文字コード周りも何の知識もないので勉強する必要がある。

GIMPのプラグイン

卒業アルバムのために少し写真を編集するのにGIMPを使った。GIMPプラグインが色々あって画像処理のプログラムを自分で書けなくても利用することが出来る。以下プラグイン名のみメモ。

続きを読む