tak0kadaの何でもノート

発声練習、生存確認用。

医学関連は 医学ノート

アルゴリズム

ボクセルデータからのメッシュ生成

結論: GitHub - mkazhdan/IsoSurfaceExtraction: Isosurface extraction from regular voxel gridsで十分 (3D numpy array).flatten().tofile()と(1D numpy array).tofile()の出力は異なるので注意(python上での演算では区別が付かないがメモリのレイアウト…

空間分割アルゴリズム

三角形に分割された閉曲面(球面)と複数の半直線があったとき、それぞれが交差するかどうかの判定をしたい。レイトレーシングで使用されるようなアルゴリズムとしてはBVH、Quadtree、Octreeなどが見つかった。 BVH (Bounding Volume Hierarchies)は、領域を木…

2値、2次元でのMarching Cubes実装

Polygonising a scalar field (Marching Cubes)、http://users.polytech.unice.fr/~lingrand/MarchingCubes/algo.htmlを見つつ実装した。ただし2つめのページにあるように表面に穴が開く場合がある。

ボクセルデータのメッシュ化

セグメンテーション済み画像データからのメッシュ化 ボクセルデータからメッシュを作ることになるので調べものをしたところ、[Insight-users] mesh creation from segmented imageを見つけた。このアルゴリズムについてはWikipedia、Marching Cubes 作業メモ…

「Probabilistic Programming and Bayesian Methods for Hackers」を読んだ - (5章)

第5章は損失関数について。損失関数の計算に真の値を使わずにどう計算するのか気になっていたが事後分布を使うと知って納得。

「Probabilistic Programming and Bayesian Methods for Hackers」を読んだ - (4章)

4章は大数の法則と大数の法則にまつわる注意点について。

「Probabilistic Programming and Bayesian Methods for Hackers」を読んだ - (3章)

第3章はMCMCの原理について。

数独 :: DFS

数独をコンピュータに解いてもらうシリーズの第一段。 DFS(深さ優先探索)は、名前の通りグラフの親ノードから子ノードがなくなるまで探索し、バックトラックする方法である。再帰かスタックを用いて実装される。c++が初めてなのもあるが、ゆっくり実装しすぎ…

数独をコンピュータに解いてもらう(その1、アルゴリズム事始め)

1回生か2回生か忘れたが工学部の授業ではCで数独を解かせるらしい。一般教養レベルの問題ということらしいが結構難しいと思う。(単純に実装したらif文の塊になってしまう) 方針 ググってたら山ほど方針が見つかった。結局全部一緒に見えるが 総当りとその仲…

アルゴリズムの分類

アルゴリズムも覚えていきたいがそれだけをやる時間はなかなか取れそうにないのでオンデマンドに勉強することになりそう。さしあたっては分類だけでも把握しておく。

エストラネスの篩を使って素数判定する

久々にProject Eulerを解いていて素数の判定をしないといけなくなったのでメモ。簡単な問題でも素数の判定が入っていると結構時間がかかるのでエストラネスの篩を使うべき。