2025年5月6日火曜日

技術資料 Blenderでの貝層3Dモデル作成方法

 Technical information: How to create a 3D shell layer model in Blender


I have considered how to create a 3D shell layer model from a two-section shell layer distribution map in Blender. The most accurate method is to match the number of vertices to the main corresponding points and create it using "edge loop bridge".


Blenderで2断面の貝層分布図から貝層3Dモデルを作成する方法を検討しました。主要対応点までの頂点数を一致させて「辺ループのブリッジ」で作成する方法が正確です。

1 Blenderでの「辺ループのブリッジ」と「Bsurfaces機能」による貝層3Dモデル作成比較

Blenderでの「辺ループのブリッジ」と「Bsurfaces機能」による貝層3Dモデル作成比較

青モデル…「辺ループのブリッジ」利用で作成した3Dモデル

赤モデル…「Bsurfaces機能」利用で作成した3Dモデル

赤モデルは貝層断面が鋭角に変化するところで、対応すべき点がずれているので、不正確な3Dモデルとなっている。

3DF Zephyr v8.005でアップロード


3Dモデルの動画


3Dモデルの画像


3Dモデルの画像(ワイヤーフレーム)

2 メモ

Blenderで2断面の貝層分布図から貝層3Dモデルを作成する方法として、これまで「Bsurfaces機能」を利用してきました。しかし、鋭角に変化するような断面の場合では対応すべき点がずれるので、不正確な3Dモデルが生成されることが判明しました。主要対応点の始点からの頂点数を一致させて「辺ループのブリッジ」で作成すると、正確な貝層3Dモデル生成が可能であることに気が付きました。


2断面から貝層3Dモデルを作成する場合の事前準備

「Bsurfaces機能」では始点から等間隔に頂点を設定するので、鋭角に変化する貝層では不正確になります。鋭角に変化しない場合は「Bsurfaces機能」でも「辺ループのブリッジ」でも3Dモデル仕上がりはほとんど同じになります。

参考情報 アドオン「Bsurfaces」はBlenderバージョン4.4ではバグで動きません。


2025年5月3日土曜日

ツタンカーメン王の黄金のマスク切手 エジプト中国共同発行切手

 King Tutankhamun's Golden Mask Stamps, Egypt-China Joint Issue Stamps


I have a complete set of King Tutankhamun's Golden Mask stamps, jointly issued by Egypt and China. I am passionate about collecting archaeological stamps. My family criticizes me, saying that I am at an age where I have to get rid of all my possessions, and that I am still collecting stamps. However, you cannot collect stamps in the afterlife.


エジプトと中国が共同発行したツタンカーメン王の黄金のマスク切手が揃いました。考古学切手収集に熱を上げています。家族から全所有物処分年齢になって切手を集めてどうするのと責められています。しかし、あの世で切手収集はできません。

1 ツタンカーメン王の黄金のマスク切手 エジプト中国共同発行 エジプト側発行切手


ツタンカーメン王の黄金のマスク切手 エジプト中国共同発行 エジプト側発行切手

発行日:2001年10月12日

額面:30ピアストル

デザイナー:サイード・エル=バドラーウィ(Saeid El-Badrawy)

印刷所:カイロ郵便印刷所

2 ツタンカーメン王の黄金のマスク切手 エジプト中国共同発行 中国側発行切手


ツタンカーメン王の黄金のマスク切手 エジプト中国共同発行 中国側発行切手

発行日:2001年10月12日

発行番号:2001-20(スコットカタログ番号:3141–3142)

額面:80分

デザイナー:王虎鳴(Wang Huming)

サイズ:50×30mm

印刷方式:グラビア印刷

3 メモ

ツタンカーメン王の黄金のマスクは以前エジプト旅行で実見しています。しかし博物館規定により撮影できなかったので残念です。

ツタンカーメン王の黄金のマスク切手発行と同時に、エジプト中国共同で、三星堆の黄金仮面切手が発行されています。別記事で紹介します。

諸国が発行したツタンカーメン王の黄金のマスク切手がかなりの数で手元に集まっています。順次記事で紹介することにします。

考古学切手をやみくもに収集しているのですが、エジプト切手に考古意匠がダントツに多いので、エジプト切手収集にのめり込んでいます。

家族からは、全所有物を処分しようという年齢になって、切手を集めてどうするのと責められています。しかし、あの世では切手収集はできないと判断しています。従って、棺桶に入るまで、切手収集を満喫することにします。

2025年5月1日木曜日

2025年4月ブログ活動のふりかえり

 A look back at blogging activities in April 2025


I looked back on my activities in April 2025 for the blog "Walking the Hanami River Basin."

Continuing from March, I focused on examining the shell layer on the northern slope of the Ariyoshi Kita Shell Mound. The number of monthly blog posts was the lowest ever, but the deepening of 3D distribution analysis was remarkable.

ブログ「花見川流域を歩く」の2025年4月活動をふりかえりました。

3月に引き続き、有吉北貝塚北斜面貝層検討に集中しました。月間ブログ記事数は過去最低となりましたが、3D分布分析の深化は著しいものとなりました。

1 ブログ「花見川流域を歩く」

・2025年4月の記事数は10です。

・北斜面貝層検討を深める記事と関連するBlender技術に関する記事がほとんどとなりました。

・4月は3Dモデリング技術と考古学的検討の統合が進んだ月でした。

2 ブログ「花見川流域を歩く 自然・風景編」

・早朝散歩記事4編を書きました。

3 2025年4月活動の特徴

有吉北貝塚北斜面貝層の継続研究:斜面貝層の細区分と遺物(土器・骨・歯など)の3D分布分析に重点を置いた。

3Dモデル技術の活用深化:貝層と遺物の対応関係や密集度分布を3Dモデルで視覚的に検討。

祭場空間の仮説提起:イノシシ顎骨と狩猟道具の接近出土から、宗教・儀礼的空間の存在を推察。

Blender活用技術の進展:点群処理、geometry nodes、アドオン自作など技術面での試行と成果が顕著。

デジタル考古学の実践的応用:多数遺物の分布モデル作成を通じ、考古資料の可視化・分析手法を深化。

なお、web検索やChatGPTによる情報収集で考古遺物の3D空間分布とその分析事例の調査を繰り返し、参考になりそうな海外事例をいくつか収集しました。日本の事例は見つかりませんでした。存在していても、web空間には無いのだと思います。ChatGPTが日本の事例として紹介してきたものが、この花見川流域を歩くブログの過去記事だったので、笑っちゃいました。

4 2025年5月活動の展望

引き続き北斜面貝層検討を深める活動を進めることにします。3D分布分析技術をなんとか「モノにする」ことを目指します。

参考

ブログ「花見川流域を歩く」2025年4月記事

ブログ「花見川流域を歩く 自然・風景編」2025年4月記事


2025年4月 Sketchfabに投稿した3Dモデル


2025年4月 YouTubeに投稿した動画


2025年4月 ブログ「花見川流域を歩く」投稿記事に掲載した画像


2025年4月29日火曜日

有吉北貝塚北斜面貝層の斜面性貝層分層出土遺物の3D分布モデル

 3D distribution model of excavated artifacts from the sloping shell layer of the shell layer on the north slope of the Ariyoshi Kita Shell Mound


The sloping shell layer of the shell layer on the north slope of the Ariyoshi Kita Shell Mound was divided into six layers, and a 3D distribution model of the artifacts excavated from them was created. The distribution of artifacts traces the distribution of the shell layers, and it can be observed that the older shell layers are located above the slope and the newer shell layers are located below the slope.


有吉北貝塚北斜面貝層の斜面性貝層を6つに分層して、それらから出土した遺物の3D分布モデルを作成しました。遺物分布は貝層分布をトレースしていて、古い貝層から新しい貝層の順に斜面を下っている様子が観察できます。

1 有吉北貝塚北斜面貝層の斜面性貝層分層出土遺物の3D分布モデル

有吉北貝塚北斜面貝層の斜面性貝層分層出土遺物の3D分布モデル

場所:有吉北貝塚北斜面貝層検討空間(10断面と11断面に挟まれた空間)

遺物:CUBE(5㎝×5㎝×5㎝)で示す 白は白色貝層出土、褐色は褐色貝層出土

10断面(手前)と11断面(奥)の間隔は2m


参考 斜面性貝層細区分

3DF Zephyr v8.005でアップロード


3Dモデルの動画


3Dモデルの画像

2 斜面性貝層6分層別遺物分布


斜面性貝層6分層別遺物分布

6分層別に遺物分布を切り出して比較しました。

遺物分布は貝層分布をトレースしていて、古い貝層から新しい貝層に向かって斜面の上から下に移動している様子がわかります。斜面利用が上から始まり、下に移動しました。また遺物分布(貝層分布)の斜面全長に占める割合が小→大→小と変化していることも特徴です。貝殻投棄(貝層形成)と遺物投棄に関わる活動内容が時期によって変化している様子がこうした出土状況に投影されているのかもしれません。

3 メモ

分層別統計は次の記事に掲載しています。

2025.04.05記事「斜面貝層細区分と遺物3D分布モデル



2025年4月28日月曜日

Blenderのgeometry nodes機能習熟に取組む

 Learning Blender's geometry nodes


As a Blender beginner, I am engrossed in mastering the geometry nodes function. It is convenient because it allows you to freely and easily change the color, size, and shape of the original object and create convex hulls for 3D distribution models of many relics. It can also be registered as an asset and reused.


Blender初心者としてgeometry nodes機能習熟に熱中しています。多数遺物の3D分布モデルについて、元オブジェクト非破壊的に色や大きさや形状を変化させ凸包作成なども自由、気軽にできるので便利です。assetとして登録もでき、使いまわせます。

1 geometry nodes使用例 斜面性貝層出土遺物表現


geometry nodes使用例 斜面性貝層出土遺物表現


geometry nodes説明

有吉北貝塚北斜面貝層の斜面性貝層を6層に分層して、各層から出土した遺物の3D分布モデルR1~S3をつくりました。この6つの3D分布モデルについて色塗りして1枚平面のモディファイアとして表現しました。

必要に応じて色や大きさや形状や凸包作成などBlenderで出来る作業のほとんどができます。geometry nodesの「箱」(node=機能)を組合わせるだけで、作業が実現します。「箱」の組合わせだけですから、直接オブジェクトをいじらないので、自由で気軽で、やり直しが苦にならないで快適です。

2 asset登録可能

この例は別のBlenderファイルで作成した平面モディファイアをassetとして登録しておいたものです。新たに立ち上げたBlenderのアセットブラウザーから登録されたassetを見つけ、drag&dropで取り込んだものです。平面モディファイアを取り込むとその中で使われている6つの遺物3D分布モデル(R1~S3)も一緒に取り込まれました。

2025年4月27日日曜日

3D座標付き遺物リストのプロット用Blenderアドオン自作

 I made a Blender addon for plotting a list of relics with 3D coordinates


I made a Blender addon that plots a list of relics with 3D coordinates in Blender3D space. Until now I've been doing this with BlenderPython, but it's much more convenient to make it an addon. I was able to create the addon quickly with ChatGPT support.


3D座標付き遺物リストをBlender3D空間にプロットするBlenderアドオンを自作しました。これまではBlenderPythonで行ってきましたが、アドオンにした方がはるかに便利です。アドオン作成はChatGPT支援で直ぐにできました。

1 3D座標付き遺物リストのプロット用Blenderアドオン CSV Tools


3D座標付き遺物リストのプロット用Blenderアドオンの機能

csvファイルは単純に次の形式としました。

ID,X,Y,Z,TYPE

1,0,0,0,a

2,2,3,1,b

3,5,-2,4,c

csvファイルを選択できるようにしたので、便利です。

ID名(遺物名)のオブジェクトを作成し、TYPE名のコレクションに格納するので、多数遺物の扱いがしやすくなっています。

オブジェクトは0.05m×0.05m×0.05mのCUBEとして設定してあります。

アドオンづくりの楽しみという観点から言えば、色塗りを付加したり、オブジェクトの大きさや形状を変えたりといろいろ工夫はできるのですが、それらの機能を付加すると、自分の作業ではかえって煩雑になるので、それらからは試したうえで、撤退しました。

プロットしたものをgeometry nodesで凝った装飾を加える方が手軽で、自由で、効率的です。最初にプロットしたものに対して非破壊的にできます。

このアドオン作成はChatGPTの支援を受けました。

2 参考 自作アドオンのPythonスクリプト

以下のスクリプトをテキストファイルにして、拡張子をtxtからpyに変更するとPythonスクリプトになります。そのPythonスクリプトをBlenderアドオンとして読み込むと、アドオンCSV Toolsが使えるようになります。

  1. bl_info = {
  2. "name": "CSVからCUBE配置ツール",
  3. "author": "ChatGPTアシスト",
  4. "version": (1, 1),
  5. "blender": (3, 0, 0),
  6. "location": "3Dビュー > サイドバー > CSV Tools",
  7. "description": "CSVファイルの座標にCUBEを配置し、TYPEごとにコレクションに整理するツール (ファイル選択対応)",
  8. "category": "Object",
  9. }
  10.  
  11. import bpy
  12. import csv
  13. from bpy.props import StringProperty
  14. from bpy_extras.io_utils import ImportHelper
  15. from bpy.types import Operator, Panel
  16.  
  17. # --- CSVからCUBEを配置するメイン処理 ---
  18. def get_or_create_collection(name):
  19. if name in bpy.data.collections:
  20. return bpy.data.collections[name]
  21. else:
  22. new_collection = bpy.data.collections.new(name)
  23. bpy.context.scene.collection.children.link(new_collection)
  24. return new_collection
  25.  
  26. def create_cubes_from_csv(csv_file):
  27. with open(csv_file, newline='', encoding='utf-8') as f:
  28. reader = csv.DictReader(f)
  29. for row in reader:
  30. x = float(row['X'])
  31. y = float(row['Y'])
  32. z = float(row['Z'])
  33. type_name = row['TYPE']
  34. # Cube作成
  35. bpy.ops.mesh.primitive_cube_add(size=1, location=(x, y, z))
  36. obj = bpy.context.active_object
  37. obj.scale = (0.05, 0.05, 0.05)
  38. obj.name = f"Artifact_{row['ID']}"
  39.  
  40. # 適切なコレクションに移動
  41. collection = get_or_create_collection(type_name)
  42. collection.objects.link(obj)
  43. bpy.context.scene.collection.objects.unlink(obj)
  44.  
  45. # --- オペレータークラス ---
  46. class OBJECT_OT_import_csv_create_cubes(Operator, ImportHelper):
  47. bl_idname = "object.import_csv_create_cubes"
  48. bl_label = "CSVを読み込んでCUBEを配置"
  49. bl_options = {'REGISTER', 'UNDO'}
  50.  
  51. filename_ext = ".csv"
  52. filter_glob: StringProperty(
  53. default="*.csv",
  54. options={'HIDDEN'},
  55. )
  56.  
  57. def execute(self, context):
  58. create_cubes_from_csv(self.filepath)
  59. return {'FINISHED'}
  60.  
  61. # --- パネルクラス ---
  62. class VIEW3D_PT_csv_tools(Panel):
  63. bl_label = "CSV Tools"
  64. bl_idname = "VIEW3D_PT_csv_tools"
  65. bl_space_type = 'VIEW_3D'
  66. bl_region_type = 'UI'
  67. bl_category = 'CSV Tools'
  68.  
  69. def draw(self, context):
  70. layout = self.layout
  71. layout.operator(OBJECT_OT_import_csv_create_cubes.bl_idname, text="CSVファイルを選択して配置")
  72.  
  73. # --- 登録処理 ---
  74. classes = (
  75. OBJECT_OT_import_csv_create_cubes,
  76. VIEW3D_PT_csv_tools,
  77. )
  78.  
  79. def register():
  80. for cls in classes:
  81. bpy.utils.register_class(cls)
  82.  
  83. def unregister():
  84. for cls in reversed(classes):
  85. bpy.utils.unregister_class(cls)
  86.  
  87. if __name__ == "__main__":
  88. register()

2025年4月12日土曜日

土器片3Dモデルを使った土器3D分布モデル

 3D pottery distribution model using 3D pottery fragment model


I created a 3D pottery fragment model of a few centimeters and used it to create a 3D pottery distribution model. It creates a visual effect similar to underground exploration (exploration in a shell layer). Blender's geometry nodes were used.


数㎝程の土器片3Dモデルを作成して、それを使って土器3D分布モデルを作成しました。地中探索(貝層中探索)のような視覚効果が生まれます。Blenderのgeometry nodes利用。

1 斜面貝層細区分と土器3D分布モデル(土器片3Dモデルバージョン)

斜面貝層細区分と土器3D分布モデル(土器片3Dモデルバージョン)

場所:有吉北貝塚北斜面貝層検討空間(10断面と11断面に挟まれた空間、幅2m)

貝層大区分境界及び斜面貝層細区分境界:青平面メッシュ

土器:土器片3Dモデル(5㎝×7㎝×1㎝)(X軸、Y軸、Z軸に対する傾きはランダム)


参考 斜面貝層細区分

3DF Zephyr v8.005でアップロード


3Dモデルの動画


3Dモデルの画像 1


3Dモデルの画像 2

2 メモ


土器片3Dモデル

土器片3DモデルはBlenderで形状を作成して、縄文写真を貼り付けて作成しました。

通常のCUBEによる土器3D分布モデル(Blenderファイル)に土器片3Dモデルを追加して、次のgeometry nodesで土器片3Dモデルを使った土器3Dモデルを作成しました。オブジェクトの差し替え、角度のランダム化がわずかな手間で出来ました。


geometry nodes

CUBE表現と比べて、土器片3Dモデルを使うと地中探索(貝層中探索)のような視覚効果が生まれます。

土器以外の遺物も実体をイメージしやすい3Dモデルを作成して表示すると、CUBE表現では湧いてこなかった新しいイマジネーションが生まれるかもしれません。

土器片の平均的な大きさを推定で5㎝×7㎝×1㎝としましたが、土器片大きさデータが得られるならば、それを使うことにしたいと思います。(データ範囲内での、大きさランダム表示など)

もし、発掘体験者がこのような土器3D分布モデルを見て、違和感を感じるならば、その違和感にとても貴重な情報が隠されていると考えます。


2025年4月9日水曜日

技術メモ 点群から1つのオブジェクトを生成する方法

 Technical Note: How to generate an object from a point cloud


I have confirmed five methods to convert the distribution shape of a point cloud (a group of objects) in Blender3D space into a single object.


Blender3D空間における点群(オブジェクト群)の分布形状を1つのオブジェクトに変換生成する方法を5つ確かめました。

1 元データ


元データ

CUBEが分布する例です。

2 凸包


凸包

CUBE分布の殻を生成します。内部構造は見えなくなります。

3 ポイントクラウドの拡大


ポイントクラウドの拡大

内部構造が見えますが、点群ボリュームが連結するまで拡大するので、分布実体より肥大化します。

4 CUBEの拡大


CUBEの拡大

元データを拡大したもので、内部構造が見えますが、分布実体より肥大化します。

5 バウンディングスフェア


バウンディングスフェア

分布形状を内包する最小球です。

6 バウンディングボックス


バウンディングボックス

分布形状を内包する最小直方体です。

7 メモ

バウンディングスフェア以外はBlenderのgeometry nodesで数個のnodeを連結することで生成しています。

geometry nodesで作業することにより、元データに対して非破壊的です。

バウンディングスフェアは専用nodeがないのでPythonで生成しています。

上記以外にもメタボールを使った方法などがあります。

3D空間で遺物密度の分級を行った際、高密度分布域を強調して表現したい場合などに、この技術を利用します。


2025年4月8日火曜日

イノシシ顎骨と狩猟道具3点の接近出土

 A boar jawbone and three hunting tools were unearthed in close proximity


I discovered a place where a boar jawbone and three hunting tools (a deer bone piercing tool, a marine animal bone fish hook, and a stone arrowhead) were unearthed in close proximity. A dense area of ​​bones and teeth surrounds the site. I hypothesized that this area was a ritual space consisting of an altar and a place to eat animal meat.


イノシシ顎骨と狩猟道具3点(鹿骨製刺突具、海獣骨製釣針、石鏃)が接近出土する場所を発見しました。その場所を囲んで骨・歯分布密集域が広がります。この付近が祭壇と獣肉を食べる場から構成される祭場空間だと仮説しました。

1 イノシシ顎骨と狩猟道具3点の接近出土

イノシシ顎骨出土例


イノシシ顎骨に接近して出土する遺物

イノシシ顎骨、石鏃、骨角歯牙製品、貝製品(装飾品)、人骨を集成した3D 分布モデルを作成したところ、イノシシ顎骨、刺突具(鹿骨)、釣針(海獣骨)、石鏃が接近出土する場所を発見しました。

2 イノシシ顎骨等4点内包球の作成


イノシシ顎骨等4点内包球の作成

この4 遺物接近出土の場所が骨・歯3D分布との関連で気になるので、4遺物を内包する球を3D空間に設定しました。

3 イノシシ顎骨等4点内包球と骨・歯3D分布との空間関係


イノシシ顎骨等4点内包球と骨・歯3D分布との空間関係

イノシシ顎骨等4点内包球と骨・歯3D分布との関係を観察しました。結果、内包球が骨・歯3D分布における密集域空白部にすっぽりと入ることを確認しました。骨・歯密集域空白部は11 断面のS3層の褐色部に対応します。

4 作業仮説

以上の空間関係から、次の作業仮説を設定しました。

「イノシシ顎骨をトーテムとした狩猟関連祭祀の場(直径1mくらいの祭壇空間)が斜面貝層に継続して存在し、刺突具(鹿骨)、釣針(海獣骨)、石鏃などが埋納された。その場所には貝殻投棄が行われないので、その場所だけ貝層は褐色となった。祭祀の度毎にごちそうの獣肉を含む飲食がおこなわれたので、祭祀の場(祭壇空間)の周りには骨・歯の密集域が形成された。イノシシ顎骨等出土域とそれを囲む骨・歯密集域をセットで祭場空間として捉える。」


2025年4月7日月曜日

斜面貝層細区分と骨・歯3D分布モデル(密集度色表現バージョン)

 Slope shell layer division and bone/tooth 3D distribution model (density color expression version)


I observed and analyzed the state of the slope shell layer subdivision and bone/tooth distribution (density color expression version) in the study space (3D space) of the north slope shell layer of Ariyoshi Kita Shell Mound. The bone/tooth dense area is distributed on the middle slope of the white shell layer, and is clearly different from the pottery dense area distribution.


有吉北貝塚北斜面貝層の検討空間(3D空間)における斜面貝層細区分と骨・歯分布(密集度色表現バージョン)の様子を観察分析しました。骨・歯の密集域は白色貝層の斜面中腹に分布し、土器密集域分布と明らかに異なります。

1 斜面貝層細区分と骨・歯3D分布モデル(密集度色表現バージョン)

斜面貝層細区分と骨・歯3D分布モデル(密集度色表現バージョン)

場所:有吉北貝塚北斜面貝層検討空間(10断面と11断面に挟まれた空間)

貝層大区分境界及び斜面貝層細区分境界:青平面メッシュ

骨・歯:CUBE(5㎝×5㎝×5㎝)

骨・歯密集度:

赤 当該骨・歯から20㎝範囲内空間に10個以上の骨・歯が出土しているもの

ピンク 当該骨・歯から20㎝範囲内空間に6~9個の骨・歯が出土しているもの

薄ピンク 当該骨・歯から20㎝範囲内空間に3~5個の骨・歯が出土しているもの

白 当該骨・歯から20㎝範囲内空間に0~2個の骨・歯が出土しているもの

10断面(手前)と11断面(奥)の間隔は2m


参考 斜面貝層細区分

3DF Zephyr v8.003でアップロード


3Dモデルの動画


3Dモデルの画像

2 観察・検討


斜面貝層細区分別骨・歯件数

骨・歯の出土件数は全ての白色貝層が褐色貝層を上回ります。


骨・歯3D分布

骨・歯の3D 分布をみると、密集域が白色貝層でいずれも貝層形成時の斜面中腹の場所に該当します。密集域分布が土器と明らかに異なります。骨・歯は獣肉を食べた残滓が残されたものと捉え、斜面の中腹で野外飲食により投棄された跡であると想定します。


骨・歯3D分布 上からオルソ投影

骨・歯3D 分布モデルを上からオルソ投影すると、斜面中腹部の11 断面側に骨・歯密集域の空白部を観察できます。