ラベル 意義 の投稿を表示しています。 すべての投稿を表示
ラベル 意義 の投稿を表示しています。 すべての投稿を表示

2025年9月7日日曜日

技術メモ 3DモデルのGigaMesh Software Framework展開前に行うMeshLab変換の意義

 Technical Note: The Significance of MeshLab Conversion Before Deploying 3D Models to the GigaMesh Software Framework


3D models (Wabefront (.obj)) must be converted to MeshLab before deploying them in the GigaMesh Software Framework. After four years, I finally understand why this is necessary. ChatGPT explained it to me.


3Dモデル(Wabefront(.obj))をGigaMesh Software Framework展開する前にMeshLab変換が必要です。なぜ必要なのか、4年経ってようやく理解できました。ChatGPTに教えてもらいました。

1 3DモデルのGigaMesh Software Framework展開方法

2021.09.27記事「GigaMesh Software Frameworkの使い方 その1 6面図の作り方

2021.09.30記事「GigaMesh Software Frameworkの使い方 その2 展開図の作り方


MeshLabに3Dモデルを読み込んだ様子

2 3DモデルのGigaMesh Software Framework展開前に行うMeshLab変換の意義

【ChatGPTへの質問】

フォトグラメトリソフト(3DF Zephyr Lite)で3Dモデルを作成し、それをGigaMesh Software Frameworkで展開しています。その際、3Dモデル(Wabefront(.obj))をMeshLabで変換(MeshLabに3Dモデル読み込み→書き出し)しないとGigaMesh Software Frameworkではテクスチャが貼り付きません。従って必ずMeshLabでWabefront(.obj)を変換します。

このMeshLabによる変換とは何を変換しているのか教えてください。MeshLabによる変換の意義を教えてください。

【ChatGPT回答】

良い質問です。結論から言うと、MeshLabでの「変換」とは、OBJファイルの形式・構造を標準的な形に書き直していることです。これは単なる「形式変換」や「保存し直し」に見えますが、実は以下のような意義があります。

1. OBJファイルの仕様の違いを吸収する

OBJ(Wavefront .obj)は非常に古いフォーマットで、拡張仕様や書き方の揺れがあります。

頂点(v)、法線(vn)、テクスチャ座標(vt)の書き出し順序や有無

マテリアルファイル(.mtl)の参照方法

パス表記(相対パス/絶対パス)

エンコードや改行コードの違い

Zephyr Liteが出力するOBJは、GigaMeshが想定している書式とは一部異なり、そのままではテクスチャ情報が正しく読み込めない場合があります。MeshLabで一度読み込み→書き出しを行うと、MeshLabが内部で解釈し、標準的なOBJ/MTLの形式に整理して出力してくれます。

2. マテリアルとテクスチャのリンクを再構成する

OBJには通常、外部ファイル(.mtl)を参照してマテリアルやテクスチャを読み込みますが、以下の問題が起こりやすいです。

.mtlファイル内のテクスチャパスがZephyr独自の書き方になっている

ファイル名にスペースや特殊文字が含まれている

相対パスが不正確でGigaMeshが見つけられない

MeshLabはこれらを適切に書き直し、パスを正規化します。そのため、GigaMeshで正しくテクスチャが貼り付くようになります。

3. データの整合性を保証する

フォトグラメトリ由来のモデルには、次のような「クセ」が含まれている場合があります。

重複頂点や未使用のテクスチャ座標

異常な法線の記録

サポートされないOBJ要素(グループ指定、smoothing groupなど)

MeshLabで「インポートしてエクスポート」する過程で、余計な情報が整理され、純粋な形状+マテリアル+テクスチャのセットに変換されます。

まとめ:MeshLab変換の意義

OBJ/MTLの仕様の揺れを吸収し、標準化する

テクスチャリンクを正しく修正する

不要・不正確なデータを整理して、GigaMeshが読み込めるようにする

つまり、MeshLabは「中継フィルタ」として働き、Zephyr出力 → GigaMesh入力 の間で互換性と安定性を保証する変換をしているのです。

👉 確認ですが、ユーザーさんはMeshLabで「単に読み込み→そのままエクスポート」していますか? それともエクスポート時に何か特定のオプション(例:法線の再計算、テクスチャを埋め込む、など)を設定していますか?

【あなた:】

MeshLabで「単に読み込み→そのままエクスポート」しています。

【ChatGPT:】

なるほど、ありがとうございます 🙆‍♂️

それならまさに 「MeshLabが内部でOBJ/MTLを標準化し直している」 だけで、ユーザー側の操作は不要という状況ですね。

具体的に何が起こっているか

1. OBJの構造整理

Zephyrが出力したOBJは、OBJの「ゆるい仕様」の範囲で独自の順序や書き方をしていることがあります。

MeshLabが読み込むと、一度内部の統一的なデータ構造に変換されます。

その後、MeshLabからエクスポートすると、一般的な書式に従ったOBJ/MTLファイルとして書き直されます。

2. MTLとテクスチャ参照の修正

Zephyrが書き出したMTLファイルには、テクスチャファイルの参照に「相対パスのずれ」や「特殊な記述」が含まれていることがあります。

MeshLabは読み込み時にそれを解釈し、エクスポート時に単純で標準的な相対パスに書き換えます。

その結果、GigaMeshがテクスチャを正しく見つけて読み込めるようになります。

3. データのクリーンアップ

ZephyrのOBJには、未使用のUV座標・法線・マテリアル参照が残っている場合があります。

MeshLabは不要な情報を整理してからエクスポートするため、余分なデータが除去されたクリーンなOBJ/MTLになります。

●意義まとめ

ユーザーがMeshLabで「ただ読み込んで書き出す」だけでも、

ファイル形式のゆれを吸収

MTL/テクスチャ参照を修正

不要なデータを整理

という処理が裏で行われており、結果としてGigaMeshが問題なくテクスチャを扱えるようになっています。

🔎 ちなみに、もしMeshLabを経由せずに直接GigaMeshで使いたい場合は、ZephyrのOBJエクスポート設定(特に「テクスチャの書き出し方法」や「マテリアルパス」)を調整すれば解決できる可能性もあります。

👉 ご希望があれば、「MeshLabを経由せずZephyr→GigaMeshを直結できる設定」についても調べて整理してみますか?

【あなた:】

MeshLabを経由せずZephyr→GigaMeshを直結できる設定について教えてください。

【ChatGPT:】

お待たせしました!MeshLabを経由せずに 3DF Zephyr Lite → GigaMesh Software Framework へ直接つなげるための設定手順について、以下に整理してご案内します。

1. 3DF Zephyr Lite のエクスポート設定

OBJ/MTL 書式の選択

Zephyr Lite では、「Export Textured Mesh」機能を使い、出力形式として OBJ/MTL を選びます

3Dflow

テクスチャ形式とリスケール

テクスチャの形式としては、PNG や JPG が選択可能です。

高解像度テクスチャが必要な場合は、「Rescale Texture to Nearest Power of Two(最も近い2の冪乗サイズへのリスケール)」をONにしておくと、後工程で非対応になる可能性が減ります

3Dflow

パス指定の注意

古いバージョンでは、単一テクスチャエクスポート時に 絶対パス が出力されてしまうバグがありました。これによりスペースを含むフォルダ名でテクスチャが読み込めないことがあったため、必要に応じて .mtl ファイルを手動修正するケースもあります

Steam Community

2. Zephyr 出力ファイルの内容確認

GigaMesh では OBJ/MTL ファイルから以下が正しく読み込まれることが前提となります:

.mtl ファイルが正しくリンクされているか(mtllib と usemtl 記述)

map_Kd に正しい 相対パス or シンプルファイル名が記述されているか

テクスチャ画像ファイル(例: JPG or PNG)が .obj・.mtl と同じフォルダにあるか

これらは Blender や他のツールでも確認できる一般的なチェック項目です

Blender Stack Exchange

YouTube

SourceForge

3. GigaMesh 側の対応能力と制約

MTL の読み込み対応

GigaMesh は元来 PLY 形式を推奨している側面が強く、OBJ/MTL の取り扱いは限定的である点に注意が必要です

ウィキペディア

テクスチャ読み込みに関するバグ報告

開発側のリリースノートでは、「複数のテクスチャが欠落しているメッシュのインポートが正しく機能しないバグ」が報告されています

gigamesh.eu

これは、MTL に複数のテクスチャ指定(たとえば複数の map_Kd)がある場合、正しく読み込めない可能性を示唆しています。

4. まとめ:直結できるか?条件は?

項目 推奨設定/確認点

出力フォーマット OBJ/MTL(テクスチャ付き)

テクスチャ形式 PNG or JPG。できれば「Nearest Power of Two」にリスケール

パス指定 .mtl は相対パスかファイル名のみ

.obj 内の記述 正しく mtllib と usemtl があるかチェック

GigaMesh 読み込み 複数テクスチャがないシンプルな構成なら比較的安定

実際に直結できるか?

可能性は高いですが保証はできません

上記の通り形式を整え、シンプルな構成にすれば、多くの場合 MeshLab を挟まずに GigaMesh へとデータを渡すことが可能です

ただし、出力時のバグや GigaMesh 側の不具合のため、事前テストが推奨されます

もしよろしければ、実際にエクスポートした OBJ/MTL + テクスチャを GigaMesh に読み込む際に直面したエラーや挙動を教えていただければ、より詳しく原因を調べてアドバイスできます。お気軽にお知らせくださいね!

3 感想

なぜMeshLab変換が必要なのか、GigaMesh Software Frameworkのマニュアルでは理解できず、実務的経験的にだけ必要性がわかっていたのですが、今回ChatGPTに質問してみて、はじめてその意義を理解することができました。

ChatGPTがなければ、この状況を質問できる人やサイトはなく、永遠にわからなかったかもしれません。




2024年12月15日日曜日

千葉市人形塚古墳地割線の意義

 The significance of the Chiba City Ningyozuka Kofun land division line


It is believed that the Chiba City Ningyozuka Kofun land division line was drawn to pass the size inspection of the kofun by the Haburi no Mikoto, the ritual administrator of the kofun, who was dispatched by the Yamato royal authority.


千葉市人形塚古墳地割線が描かれたのは、ヤマト王権から派遣された古墳儀礼管理者である視葬者(はぶりのみこと)の古墳大きさ検査に合格するためだったと考えます。

1 千葉市人形塚古墳地割線の意義

1-1 地割線の計画設計線としての意味

千葉市人形塚古墳地割線の計画設計線としての意味は全て判明しました。

2024.12.06記事「千葉市人形塚古墳地割線の検討 後円部内円

2024.12.08記事「千葉市人形塚古墳地割線の検討 後円部外円

2024.12.14記事「千葉市人形塚古墳地割線の検討 前方部

同時に全ての地割線に施工実用性がないことも判明しました。

1-2 施工実用性のない地割線が描かれた理由

施工実用性のない地割線(計画設計線)が古墳築造直前に描かれた理由を次のように想定します。

1) 視葬者(はぶりのつかさ)検査に合格するため

 ヤマト王権から派遣される古墳儀礼の統括管理者・機関である視葬者(はぶりのつかさ)は、造成される古墳の大きさが、被葬者に与えられた規格値序列に合致しているかどうか、事前現場検査していたと想定できます。被葬者サイドは墳丘範囲で整地してA~F線を描き、特にF線を描くことで後円部直径の実測ができるようにして準備したと考えます。これが実用性がない地割線を描いたメイン理由と考えます。

2) 段階施工に関する工事関係者共通認識を深めるため

 盛土工事では圧密沈下に伴う変形などに対処するために段階施工することが一般的です。人形塚古墳では土層断面図から2段階施工であったことが想定できます。くびれ部高さ(38.2m)までの盛土(半築古墳)で一旦工事を中断して圧密沈下の収束を数か月以上待ち、盛土安定化を図ったと考えられます。その半築古墳範囲を示すのがA線とC線です。設計・施工管理集団が被葬者サイド(盛土役務実行部隊)に伝えたかった重要情報であると考えます。これが実用性のない地割線を描いたサブ理由と考えます。


地割線の意義

2 地割線意義検討から浮かび上がる古墳関係者

横穴式石室と埴輪を除いた古墳本体の築造に関して、地割線意義検討から次の3者が関係者として浮かび上がりました。

・設計施工管理集団(渡来系専門家集団)

・視葬者(ヤマト王権)

・被葬者一族(盛土実働部隊)


地割線からみた人形塚古墳に関わる主要関係者

3 感想

所領の小さい被葬者(首長)が、望外の前方後円墳築造許可、埴輪使用許可を得て、一世一代のプロジェクトとして人形塚古墳プロジェクトに取り組んだと想像します。被葬者が設計管理集団に地割線描画を依頼し、描画された地割線を視葬者(はぶりのみこと)に見せるだけでなく、近隣の仲間(近隣の首長)にも見せたと想像します。これからつくる古墳について大いに自慢し、自分がヤマト王権と密接にリンクしている様子を人々に印象付けたと想像します。


2024年8月23日金曜日

甕被葬の意義(メモ)

 The significance of burial in a jar (note)


I happened to come across a photo of the burial in a jar at the Ariyoshi Minami Kaizuka, and I couldn't stop thinking about it. So I thought long and hard about the significance of burial in a jar.

I hypothesized that the jar is a device that stops the exoskeleton of the body from becoming active after the soul of the deceased has passed on to the afterlife.


たまたま目にした有吉南貝塚甕被葬の写真から離れられなくなりました。そこでじっくりと甕被葬の意義を考えました。

故人の魂があの世に向かった後、脱殻の肉体が活動しないようにする装置が甕被であると仮説しました。

1 甕被葬人骨


甕被葬人骨 「千葉県の歴史 資料編 考古1(旧石器・縄文時代)」から引用

参考 2018.09.10記事「事例学習 有吉南貝塚

甕被葬の意義についての記述は、とても興味があるので、これまでにいろいろと資料・情報を渉猟したのですが、結局なにも見つけることはできませんでした。そのため、自分にとって「わからないこと」であり、世の中的にも「流布されている仮説はない」と考えていました。

2 千葉市史(第一巻、昭和49年)の仮説

webで検索すると千葉市史(デジタルアーカイブ、第一巻原始古代中世編、昭和49年)に次のような記述があります。

「埋葬は、そのこと自体が、死者あるいは死に対する一定の観念の現われであるが、遺体に対する種々の所作により、更にそれが明確となってくる。

 それは、埋葬に際して、遺体の頭部に甕をかぶせるとか、胸部に石を抱かせるというような所作が行われている(二―八八図左下)。

 前者は甕被り葬と呼ばれ、遺体の中でも特に頭部を意識していることがわかる。

 後者は、石抱き葬と呼ばれ、これは胸部を意識している。

 これらは、縄文時代の当時にあっても、すでに、頭部及び胸部(心臓)が、身体の中でもっとも重要であり、人間の「生」あるいは「死」というものに、もっとも深くかかわりをもっているということを意識してのことであると考えられる。

 そして、そこには、人間の生と死をつかさどる不思議な何ものかの存在=霊魂の存在ということを、すでに縄文時代人は考えていたということも考えられる。

 甕をかぶせ、石を抱かせることによって死者の霊魂をしずめ、死者の霊魂がその肉体から遊離して生者に災厄を及ぼすことを防ごうとしたと推定される。」(千葉市史から引用)

明解な結論「甕をかぶせ、石を抱かせることによって死者の霊魂をしずめ、死者の霊魂がその肉体から遊離して生者に災厄を及ぼすことを防ごうとしたと推定される。」が記述されています。

3 検討

千葉市史の結論では埋葬とは故人の霊魂と肉体が土壙や貝層中などに閉じ込められることになります。

縄文人の死生観はそうではなく、故人の霊魂はあの世に行き、肉体は埋葬され閉じ込められるということだと、自分は、考えます。

従って、自分は、千葉市史記述の矛盾を解消するストーリーとして次のように仮説します。

人が死ぬと、埋葬という儀礼を行うことにより、故人の霊魂はあの世に行き、豊かな生活を送る。残された肉体は埋葬され土中で(あるいは貝層中で)深い眠りにつく。ただし、残された肉体がなにかの弾みで動き出したり、活動したりする不慮の事故が発生することが考えられる。そのような事故が発生すると霊魂はあの世で生活できない。そこで、霊魂が離れた肉体の頭部に甕を被せて、万一頭が動き出す兆候があっても、動けないようにしたと考えます。抱石葬も同じ趣旨で、霊魂不在の肉体が活動できないようにしたのだと思います。

甕被葬や抱石葬の意義は肉体に霊魂が戻れないようにすることにあったと仮説します。


2022年10月18日火曜日

北斜面貝層出土土器片と南斜面貝層出土土器片が接合する意義

The Significance of Joining Pottery Fragments Excavated from the North Slope Shell Layer and Pottery Fragments Excavated from the South Slope Shell Layer


Some early pottery excavated from the shell layer on the northern slope of the Ariyoshi Kita Shell Mound joins pottery fragments excavated from the shell layer on the south slope. I'm very worried. It may be the result of a specific individual performing consecutive prayers in two places.


有吉北貝塚北斜面貝層から出土する土器片の分布について学習していますが、前期土器には台地面を越えた南斜面貝層出土土器片と接合するものがあります。気になる事象ですから感想をメモしました。特定個人が2ヶ所で連続祈願行為を行った結果かもしれません。

1 北斜面貝層出土土器片と南斜面貝層出土土器片が接合するもの


北斜面貝層出土土器片と南斜面貝層出土土器片が接合するもの


北斜面貝層と南斜面貝層の位置

前期遺構は土坑1つと埋設土器1つが検出されています。発掘調査報告書では前期遺構について、「土器の出土量からみて、中期以降の遺跡形成で消滅した遺構が多数あったと考えられた。」と記述されています。

2 メモ

2-1 前期土器の北斜面貝層における分布


早期土器と前期土器の破片出土場所

2022.10.11記事「有吉北貝塚北斜面貝層における早期土器と前期土器の分布」で早期土器と前期土器はその出土場所付近で早期と前期に人々の活動があり、その結果土器破片がその場所付近に持ち込まれたと考えました。その後、阿玉台式以降中期の貝層形成活動によって撹乱を受け、貝層の中に混入したと考えました。

2-2 北斜面貝層出土土器片と南斜面貝層出土土器片が接合する意義

前期には台地面で人々の活動(生活)があり、諸磯式などの前期土器が使われていました。前期の人々が南斜面貝層(当時は顕著な貝層は無かった)と北斜面貝層(当時は顕著な貝層は無かった)に廃用土器破片を投棄したことはその場所から土器片が出土しているので確実です。

廃用土器破片を送り場に持ち込む際、意識して土器破片を2つに分け、一方は北斜面貝層で送り(投棄し)、一方は南斜面貝層で送った(投棄した)という活動が特殊ではなく、普通に行われたことが推定できます。

なぜ2個所の送り場で同じ土器を送ったのか?次の想像が生まれます。

送り場で土器破片を送るとは、土器破片に敬意を表現し、土器に感謝するという意味だけでなく、その行為に付随して、別の祈願行為があったのではないかと考えます。土器破片は現代風に言えば一種のお賽銭みたいな意義をもつようになっていて、土器破片(お賽銭)を投じることで別の何かの祈願をしたと想像します。そして現代でも祈願は多数ヶ所で行われます。四国八十八ヶ所巡りとか七福神巡りなどです。つまり、前期縄文人は廃用土器の破片を台地上でつくり、その一部を北斜面貝層(にその後発展する空間)に持ち込み投棄して、何らかの祈願行為をし、別の一部の破片を南斜面貝層(にその後発展する空間)に持ち込み投棄して、何らかの祈願行為をしたと想像します。