###### tags: `研究メモ` # リダクションについて ### ファイル形式の比較 ![](https://i.imgur.com/7U0UcF9.png) http://norman3d.com/TextureMorphTargets/Vertex-count-agnostic_Morph_Targets.pdf ## 可視性の重みづけ とりあえず,面ごとに(反射回数,屈折回数)の配列を作成.ただ,フレネルによって屈折→反射→屈折や,屈折→屈折→反射といった面がおなじ値になってしまっている. ## 見えない部分を削除して検証 自作/制限:4,4/たどり着かなった部分はそのまま飛ばす(環境マップ) ![](https://i.imgur.com/wvzM1G8.jpg) 自作/制限:4,4/たどり着かなかった部分を黒に/6568ms ![](https://i.imgur.com/uYXH5mi.jpg) 見えない部分を削除 4/4 14,828KB→14,019KB vertex 404294->366753 ![](https://i.imgur.com/eQe5ozS.jpg) MAYAでは 324422 削減前 ![](https://i.imgur.com/amsoEaF.jpg) 削減後 ![](https://i.imgur.com/EnkOq3z.jpg) 自作/制限:3,3/2630ms ![](https://i.imgur.com/WzSeiUI.jpg) 見えない部分を削除 3/3 14,828KB→11,859KB vertex 404294->265469 ![](https://i.imgur.com/TVSmjQ8.jpg) Maya 324422 ![](https://i.imgur.com/1XV6fgN.jpg) ### 削減によってどのくらい画像が変わるのか? #### 見えない部分を削減 (Maya/32442) |屈折2回,反射2回 二乗誤差:140.7|屈折3回,反射3回 二乗誤差:32|屈折4回,反射4回 二乗誤差:2.09| | :---: | :---: |:---: | |![](https://i.imgur.com/IsYl6xf.jpg)|![](https://i.imgur.com/zxsjAzW.jpg)|![](https://i.imgur.com/HP19CO7.jpg)| |![](https://i.imgur.com/qbUDpeL.png)| ![](https://i.imgur.com/jLOD8ne.png)|![](https://i.imgur.com/aj0mFdo.png)| |![](https://i.imgur.com/V5kzcBO.png)|![](https://i.imgur.com/djK9NSK.png) |![](https://i.imgur.com/EM1z3bO.png) | | #### 全体的に削減 |元(制限:3,3自作)v:202133|v:171306(10%off) 二乗誤差186.543|v:146493(20%) 二乗誤差286.095| | :---: | :---: |:---: | |![](https://i.imgur.com/2tkY9Bh.jpg)|![](https://i.imgur.com/w7qfUj7.jpg)|![](https://i.imgur.com/lAJKFFB.jpg)| ||![](https://i.imgur.com/VjhDtiI.png)|![](https://i.imgur.com/2rwyJjq.png)| ||![](https://i.imgur.com/BNP99hI.png)|![](https://i.imgur.com/jxXPRoM.png)| |v:127498(30%) 二乗誤差364.547|v:101068(50%) 二乗誤差590.026|| | :---: | :---: |:---: | |![](https://i.imgur.com/qQ4mZzP.jpg)|![](https://i.imgur.com/XSFrCIX.jpg)|| |![](https://i.imgur.com/uZ5ZVjF.png)|![](https://i.imgur.com/EUJcxgt.png)|| |![](https://i.imgur.com/iwxNCzv.png)|![](https://i.imgur.com/qLIgcs7.png)|| 重みづけ |(屈折で重みづけ/0,0.2,0.4,0.6,0.8)v:183528(71157) 二乗誤差282.001|(屈折で重みづけ/0,0.1,0.3,0.5,0.7)v:176998(94192?) 二乗誤差181.003| | :---: | :---: |:---: | |![](https://i.imgur.com/IFj5RFJ.png)|![](https://i.imgur.com/p0ljHop.png)|| |![](https://i.imgur.com/QOS5Ida.png)|![](https://i.imgur.com/eK2W8sZ.png)|| ★課題 リダクションがなんかおかしい あと,50%削減したはずなのに重複頂点が23k/202kしかない 辺の省略個数がおかしい 毎回長さソートを行わないから? |||| | :---: | :---: |:---: | |![](https://i.imgur.com/vyWC2UI.jpg)|![](https://i.imgur.com/SWk27BO.jpg)|| いい感じだけど削減数の制御がいまいち 不正頂点数が削減数に比例しない. |||| | :---: | :---: |:---: | |![](https://i.imgur.com/cjHSRqn.png)|![](https://i.imgur.com/v1RpaXG.png)|| リダクションの改善 毎回ソートを行うことで,より正確に * 黄色の部分のみを削減 |![](https://i.imgur.com/ovlvM3o.jpg)|→|![](https://i.imgur.com/UEqGlWt.jpg)| | :---: | :---: |:---: | ただし,削減量を大きくするとそれ以外の部分も削減してしまう... どっちも微妙なので見直し必要 |レイの長さ||光のつよさ| | :---: | :---: |:---: | |![](https://i.imgur.com/gd4mQNb.png)||![](https://i.imgur.com/DCEomW4.png)| |![](https://i.imgur.com/WeD60N7.png)| * リダクションの改善? |||| | -------- | -------- | -------- | |削減無し| ![](https://i.imgur.com/x0NeLZJ.png)|| |中心右のみ削減|![](https://i.imgur.com/2hGSEVq.png)|| |右にいくにつれて削減|![](https://i.imgur.com/0cPgvxn.png)|| * 光の長さはあってるか |長さ||| | -------- | -------- | -------- | |![](https://i.imgur.com/zdYoC8k.png)|![](https://i.imgur.com/AqsNR20.png)|| |強さ||| |![](https://i.imgur.com/0Wb4bEf.png)||| 強さを使ってリダクション |元|強さで重みをつけて50%削減|全体的に削減(7391kB)| | -------- | -------- | -------- | |![](https://i.imgur.com/0UfByYb.jpg)|![](https://i.imgur.com/iUVjXJr.jpg)|![](https://i.imgur.com/FNekb6R.jpg)| |レンダリング時 の平均二乗誤差|113.488|306.832| ||![](https://i.imgur.com/I2MlO5A.png)|![](https://i.imgur.com/yw6F6WH.png)| |長さで削減|長さ*強さ(101066)|| | -------- | -------- | -------- | |312?うまくいかん|![](https://i.imgur.com/WhaTIuP.jpg) || 値の差が多きすきるような気がするけど,差分画像を見たら重みをつけたほうはほぼさがなかったけど,全体の方は差が結構あった. --- |強さで重み付けて削減(80%:40426) | 全体的に削減(80%:40426) | | -------- | -------- | -------- | |![](https://i.imgur.com/bQsqeRE.png)|![](https://i.imgur.com/GdEnjT4.png)| |391.159|482.787| |長さで重みをつけてリダクション(80%:40426)|強さ*長さ| | -------- | -------- | -------- | |![](https://i.imgur.com/ocCst8N.png)|![](https://i.imgur.com/ZzPfOKu.png)| |![](https://i.imgur.com/HkuAPVF.png)|![](https://i.imgur.com/IGb0uR6.png) | |372.699|387.744| * アニメーション これでMayaで連番OBJが読める?? https://www.youtube.com/watch?v=JwcuK-0dMm8 →読めた 適当に削減して,課題が見えてきたらうれしい * Mayaでは | Column 1 | 全体的に50% | 重みをつけて50% | | -------- | -------- | -------- | | 平均二乗誤差 |83.98|78.83| |SSIM|0.936|0.939| | Column 1 | 全体的に80% | 重みをつけて80% | | -------- | -------- | -------- | | 平均二乗誤差 |132.335|103.307| |SSIM|0.895|0.921| まあ減ってはいる | Column 1 | 全体的に95% | 重みをつけて95% | | -------- | -------- | -------- | ||![](https://i.imgur.com/CKo8Vm1.jpg)|![](https://i.imgur.com/yeSQhAk.jpg)| | 平均二乗誤差 |668.641|574.571| |SSIM|0.806|0.843| --- ### 法線転写を実験(頂点を重み無しで八割削減したものに元モデルの法線を転写) ・目でみてもかなり元画像に近い ・テクスチャは2048*2048のJpeg画像(1.6MB)を使用 ・この時(8割削減)のメッシュデータ削減量11.7MBに対してはそこまでの大きさではないが,全フレーム必要.またカメラ位置によっては解像度が不十分かも? ・トポロジが変化するなら毎回UV展開が必要? | 元 | 転写なし(80%off) | 転写あり(80%off) | | -------- | -------- | -------- | |![](https://i.imgur.com/gJd8XFF.jpg)|![](https://i.imgur.com/PtRDisR.jpg)|![](https://i.imgur.com/zZhuaKx.jpg)| | 元画像との平均二乗誤差 | 132.335 | 40.189 | |SSIM|0.895|**0.975**| --- ### SSIMを計算 http://darosh.github.io/image-ssim-js/test/browser_test.html * 上表 * 0.95以上で視覚的に等価である --- ![](https://i.imgur.com/CcX4WO9.jpg) ### 強さと長さの合成の実験 80%削減 |80%全体的に| (長さ*(1-強さ)) | 強さ | 長さ | |--------| -------- | -------- | -------- | |![](https://i.imgur.com/9wWwQFs.jpg)| ![](https://i.imgur.com/BobBHF4.jpg)| ![](https://i.imgur.com/M8PFcCw.jpg)|![](https://i.imgur.com/MPV2cfW.jpg)| |0.889|0.924|0.921|0.925| | 長さ*(1/強さ) | 長さ+(1/強さ) | (長さ+(1-強さ))/2 || | -------- | -------- | -------- |-------- | |![](https://i.imgur.com/8o5RwpE.jpg)|![](https://i.imgur.com/4yfdQJZ.jpg)|![](https://i.imgur.com/Y6GeBp7.jpg)|![](https://i.imgur.com/GNJFlHq.jpg)| |0.911|0.918|0.923|0.924|