2021年9月30日木曜日

GigaMesh Software Frameworkの使い方 その2 展開図の作り方

 この記事は、2021.09.27記事「GigaMesh Software Frameworkの使い方 その1 6面図の作り方」のつづきです。縄文土器を例に展開図の作り方の概要をメモします。詳しくはGigaMesh Software Frameworkサイトのマニュアルやビデオを参照してご研究ください。


この記事に出てくる主なボタン

1 展開図作成

1-1 土器の正置

土器を上から見て、その回転軸がPolar Gridの中心になるように正置します。


土器回転軸とPolar Grid中心を合わせた様子

(土器はSet Inspection Viewボタンで半透明にしてある)

1-2 軸設定

Set the rotational axis using the central pixelボタンをクリックします。

次のウィンドウが開きます。


軸設定ウィンドウ

Yesをクリックします。土器を動かすと次のように緑色の軸が設定されています。


土器に軸が設定された様子

1-3 展開範囲設定

Select Cone(Axis and two outer Points)ボタンをクリックします。

Ctrlキーを押しながら土器の上端部と下端部をクリックします。

次のウィンドウが開きます。


展開範囲設定ウィンドウ

Yesをクリックします。土器にピンク色で展開範囲がコーンで設定されます。


コーンが設定された様子

1-4 セットデータ

Edit→Cone/Cylinder-Extra→Cone-Set dataをクリックします。次のようなウィンドウが開きます。


Dialogウィンドウ

OKをクリックします。

1-5 (切断の)始点設定

Select single vertex(SelPrim)ボタンをクリックします。

土器表面で切断始点1点をCtrlキー押しながらクリックで設定します。この時画面には何も表示されません。

1-6 展開

Edit→Cone-Unroll Meshをクリックします。

次のSet cutting planeウィンドウが開きます。


Set cutting planeウィンドウ

Noを選択します。そうすると次のStraighten rollout-Cylinderstyleウィンドウが開きます。


Straighten rollout-Cylinderstyleウィンドウ

ここでは例としてNoをクリックします。

Flip rolloutウィンドウが開きます。


Flip rolloutウィンドウ

Noをクリックします。

展開図(作成のための3Dモデル)が画面に表示されました。


展開図1が表示された様子

……………………………………………………………………

Straighten rollout-CylinderstyleウィンドウでYesを、次のFlip rolloutウィンドウでYesをクリックすると次の展開図が画面に表示されます。


展開図2が表示された様子

……………………………………………………………………

2  展開図の6面図書き出し

File → Export Image Stack → Camera on Longitudinal Orbit (Vertical Axis).にチェックを入れます。

File → Export Screenshots → Screenshot Views(PNG)で書き出し用ウィンドウが開きますので、適当な接頭文字を加えてSaveをクリックすると展開図の6面図が書き出されます。展開図には土器表面の展開図のみならず、土器内面の展開図も含まれます。このなかから必要な図を利用します。


展開図の6面図

3 展開図作成のための3Dモデルの書き出し

File→Save asで展開図作成のための3Dモデルをplyファイルで書き出すことができます。

7で6面図として書き出した展開図とはこの3Dモデルをオルソ投影した図です。


展開図作成のための3Dモデル(3DF Zephyr Lite画面)

技術資料 GigaMeshによる縄文土器展開図作成に伴う3Dモデル 例

これほどの高機能3Dモデル分析ソフトを無償で公開しているGigaMesh Software Framework主宰者Hubert Mara博士に感謝申し上げます。

2021年9月27日月曜日

GigaMesh Software Frameworkの使い方 その1 6面図の作り方

 リクエストがありましたのでGigaMesh Software Frameworkの使い方について概要をメモします。この記事はその1 6面図の作り方です。

GigaMesh Software Frameworkはハイデルベルグ大学Hubert Mara博士によって開発された考古学研究者向け3Dモデル分析ソフト(フリーソフト)で3Dモデルから展開図を作成したり、6面図を作成したり多彩な機能を有しています。

一般ユーザーを対象としていないので使い勝手は通常ソフトと異なる点がありますが、とてもシンプルでかつ高機能です。

当方は見よう見まねで実務的にGigaMesh Software Frameworkを使っています。GigaMesh Software Frameworkの仕様や原理原則を十分理解しているわけではありません。ですから以下の説明に勘違いや間違いがあるかもしれませんのでその点はお許しください。

1 GigaMesh Software Frameworkのダウンロード・解凍・起動

ア ダウンロード

Windows10 portable Betaをダウンロードします。


GigaMesh Software Frameworkダウンロード画面

2021.09.26現在gigamesh-200529-windows.zipがダウンロードされます。

イ 解凍

半角英数のパスフォルダーに解凍します。

※GigaMesh Software Frameworkでは日本語パスフォルダー、日本語ファイル名は不可です。

解凍すると次のフォルダーが生まれます。

gigamesh-200529-windows

このフォルダーをクリックすると次の2つのフォルダーが含まれています。

bin

share

binフォルダーをクリックすると多数のファイルとフォルダーが含まれています。

この中にソフト本体であるgigamesh.exeが含まれています。

ウ GigaMesh Software Frameworkの立ち上げ

gigamesh.exeをクリックするとGigaMesh Software Frameworkが立ち上がります。

注意)最初にGigaMesh Software Frameworkを立ち上げるとWindowsが危険だから止めた方がよいと注意喚起してきます。しかし、詳細情報をクリックして立ち上げます。次回からはWindowsの注意喚起はなくなります。

GigaMesh Software Frameworkを立ち上げると次の3つのウィンドウが開きます。


GigaMesh Software Framework立ち上げで開く3つのウィンドウ

3つのウィンドウのうちファイル入力催促画面から3Dモデルファイルを開くとメインウィンドウに3Dモデルが表示され操作可能となります。

コマンドライン画面は、操作が次々に記録される確認用画面でその画面に入力する必要はありません。ただしコマンドライン画面を×で終了するとGigaMesh Software Frameworkが終了してしまいますから残しておきます。

2 Wabefront(.obj)ファイルの事前変換

GigaMesh Software FrameworkでWabefront(.obj)ファイルを使って分析する場合、事前にMeshLab(フリーソフト)を使った変換が必要です。

MeshLabを立ち上げ、対象ファイルを取り込みます(file→import mesh→ファイル選択)。

そのまま、file→export mesh→okで書き出します。Wabefront(.obj)ファイルに新たなmltファイルが加わります。このWabefront(.obj)ファイルをGigaMesh Software Frameworkで使います。


MeshLabにWabefront(.obj)をインポートした様子

Wabefront(.obj)ファイルをMeshLabによる変換をしないでGigaMesh Software Frameworkに取り込むとテクスチャが正しく反映されません。

なお、GigaMesh Software Frameworkに取り込んだ3Dモデルが小さすぎて不都合が生まれた場合には、Wabefront(.obj)ファイルをMeshLabで拡大してから書き出して再度GigaMesh Software Frameworkに取り込みます。

※MeshLabも日本語パス、日本語ファイル名に対応していません。


参考 MeshLab公式サイト・ダウンロード

3 画面操作用キーボード説明図

GigaMesh Software FrameworkホームページのTutorialsの1.3.Navigatingに画面操作用キーボード説明図が掲載されています。


画面操作用キーボード説明図

このキーボード説明図を画面なり、紙なりで常時確認できるようにしておくと画面操作が円滑になり便利です。GigaMesh Software Frameworkでは3Dモデルの回転等の調整は主にキーボードで行います。

4 操作中に不都合が生じた場合の対処方法

このソフトは戻るボタンがありません。操作に失敗した時(不都合が修正できない時)はReLoadボタン(上左端)で当初3Dモデルを取り込んで作業をし直します。

何回も操作し直して好みの結果に到達するのがこのソフトの特徴です。

5 操作例 6面図作成

ア 3Dモデルファイルを開く

file→open→ファイル名指定で3Dモデルファイル(MeshLabで事前変換したWabefront(.obj)ファイル)を開きます。


3Dモデルファイルを開いた様子

画面右のColormapとRenderingの各項目で対象物の表現を様々に変化させることができます。

イ 対象物を正置する

対象物を画面の中で正置します。

主な操作

・背景を主にPolar Gridにして、時にRectangular Raster Gridを使いそれとの対比で正置作業をします。

・対象物を半透明にして(Set Inspection Viewボタン 上真中付近)対象物をグリッドと合わせます。

・マウス右クリック移動で対象物を移動します。

・キーボードで角度を回転調整します。

・キーボード90度回転でどの角度からみても正置になるように確認します。

(縄文土器の場合かならず各種ゆがみがあるので完全な正置は実際上あり得ません。)


対象物を半透明にして底から見ている様子


対象物を正置した様子

ウ 6面図書き出しの設定

・File → Export Image Stack → Camera on Longitudinal Orbit (Vertical Axis).

エ 6面図書き出し

File → Export Screenshots → Screenshot Views(PNG)

次のウィンドウが開きます。


保存用画面

そのままあるいは接頭文字を加えてSave→Tiled renderingウィンドウ→Yesで6つの画像がフォルダー(読み込んだ3Dモデルのあるフォルダー)に書き込まれます。


書き出された6面図用画像

つづく

次の記事では「その2 操作例 展開図作成」を予定します。


2021年9月18日土曜日

OLYMPUSカメラTG-6 顕微鏡モードの効果

 小さいモノの3Dモデル作成において、通常カメラ撮影写真では画面の一部にボケが生まれることがほとんどです。このボケ防止の観点から深度合成写真作成が可能なコンパクトカメラOLYMPUS TG-6を入手しました。このカメラの深度合成効果は満足すべきものがあります。

2021.08.30記事「深度合成の効果

関連して、このカメラの顕微鏡モードにおける解像度について体感的にテストしてみました。

1 立体物の例

イボキサゴ貝殻を例にスキャナー(解像度1200dpiでスキャン)、一眼カメラOLYMPUS E-M5 markⅡ(30㎜マクロレンズ)、コンパクトカメラOLYMPUS TG-6で撮影して写真解像の様子を確かめてみました。

1-1 イボキサゴ全体の写真

渦が発生する貝殻先端にピント合わせるようにしました。


スキャナー


E-M5 markⅡ

ピンポイントな微妙なピント合わせを思い通りに行うことは困難です。ある程度の範囲内でしかピントが合いません。何枚か撮った写真の中から最も良いものを選択しました。


TG-6

顕微鏡モードで深度合成撮影すると対象物全てにピントが合います。

1-2 イボキサゴ先端部の拡大写真


スキャナー


E-M5 markⅡ


TG-6

スキャナー→E-M5 markⅡ→TG-6の順に解像度がアップします。小さいものを拡大して精細写真をつくる場合のツールとしてTG-6の顕微鏡モード+深度合成機能がとても有用であることを体感できました。


参考 イボキサゴと渦先端部の大きさ

例として使ったイボキサゴの径は17.5㎝、渦先端の蓋(軸)のような部分の径は約0.18㎜です。

2 印刷物の例

考古学切手(中国、東周青銅器 30㎜×50㎜)を例に図案の中の文字を拡大して比較してみました。

2-1 切手全体の写真


スキャナー


E-M5 markⅡ


TG-6

2-2 文字の拡大写真


スキャナー


E-M5 markⅡ


TG-6

立体物と同じく、スキャナー→E-M5 markⅡ→TG-6の順に解像が良くなります。印刷物の場合、その精細性には技術的限界や実用的範囲があり、その内部での比較になります。つまり極端に小さい事象を比較することは少なくなります。しかしその範囲内でも今回のテストで、TG-6の効果が突出したものになりました。


参考 切手図案の文字の大きさ

3 感想

立体物の精細写真を撮影する場合、そもそも観察したい部位にピントが合っていなければなりません。そうした意味でTG-6の深度合成機能はきわめて有効であることを確認しました。

ピントがあった写真を用意できた次のステップしてTG-6の顕微鏡モード(対象物まで1㎝の距離で接写できる)が有効であることを確認しました。


2021年9月9日木曜日

illustrator→QGIS 点情報コンバート成功

 点情報についてillustrator→QGIS移植が成功しましたのでメモします。

自分にとっては数年越しの技術問題解決になります。

【illustrator作業】

1 illustratorで点情報を作図する

点は四角で表現する。点が四角の中央に位置するように四角を描く。


illustrator画面

2 illustratorで全ての点情報を選択した状態で、属性ウィンドウを開きイメージマップを長方形に指定し、URLに適当な文字を記入する。


属性ウィンドを開いたillustrator画面

3 その状態でファイル→書き出し→web用に保存(従来)クリック

4 開いたウィンドウのプレビューをクリック


web用に保存(従来)のウィンドウ

【エディター作業】

5 ブラウザに画像と座標情報を含んだコードが表示される


プレビュークリックで開いたブラウザ画面

6 座標情報を含んだコードをコピーしてエディターに貼り付ける


コピペしたエディター画面

7 エディターの置換機能等を利用して座標情報以外を削除してファイルとして保存する


座標情報以外を削除したエディター画面

【Excel作業、一部QGIS利用】

8 座標情報をコンマ区切りデータとしてExcelに読み込む

9 対角2点の情報を平均して四角形情報から点情報に変換する

10 y座標の値に-をつける(-1を乗じる)…y座標の値を反転させる

11 判りやすい2点ABを設定する。(例 y座標の最大値と最小値など)

12 A、Bの2点は背景地図等を利用してQGISにおける座標(例 平面直角座標系9の座標値)を求める

13 A、B間のy座標距離(あるいはx座標距離)について

QGISの値(例 平面直角座標系9の値)/illustratorの座標値(y座標反転)=a

を求める

14 A点のillustrator座標値を操作上x=0、y=0にするために、全座標値からA点の値を引く。

15 14の操作をしたillustrator座標値に係数aを乗じる

16 15の操作をした全座標値にA点のQGIS座標値を加える。この操作で座標値はQGISの座標値に変換されたことになる。

17 16の操作をした座標シートをcsvファイルとして書き出す

【QGIS作業】

18 csvファイルをQGISに読み込む(完了)


csvファイルを表示したQGIS画面


2021年9月8日水曜日

ライト付ルーペ

 有吉北貝塚北斜面貝層学習でライト付ルーペを重宝して使っています。

発掘調査報告書における有吉北貝塚北斜面貝層の土器出土状況図面には土器接合にかかわる膨大数土器片の立体空間的情報が内蔵されています。驚愕すべき情報量です。この図面をスキャナーでコピーしてその画像をillustratorで解析しています。図面は極度の縮小のためスキャナーの最高解像度をもってしても文字ツブレを完全に防ぐことはできません。そのために、報告書(紙)にルーペをあてて文字を確認しています。その際、次のライト付ルーペが大活躍しています。


ライト付ルーペ(Leuchtturm社製 LU150)10倍


スキャナーで図面をスキャンした画像

文字67が57であるか67であるか判別しにくい


ライト付ルーペで紙報告書をみた画像

67がクッキリみえて、1文字0.5㎜程度なのにこれほど鮮明に印刷した印刷技術に感心してしまいます。

このルーペは考古学切手を集めようと考えた時に切手の博物館内切手ショップで購入したものです。ライトがあることと、ルーペを手に持たないで利用できるので現在の作業にはうってつけの道具になっています。

2021年9月7日火曜日

3DF Zephyr Lite不都合のあっけない解決

 フォトグラメトリーによる3Dモデル作成ソフトとして3DF Zephyr Liteを使っていて、重宝してきています。7月頃、このソフトのバージョンアップがあり、バージョン6となりました。バージョン6になってから利用に際して不都合があり、2ヵ月ほどひどく苦しみました。しかし最近あっけなく解決しましたのでその顛末をメモします。

1 バージョン6になってから体験した不都合

多数写真から3Dモデルを結像させるフォトグラメトリー機能は高速化して使いやすくなりました。しかし、結像した3Dモデルを回転させると、1回目の操作は通常にできますが、2回目の操作で必ずソフトがクラッシュしてしまいます。


3Dモデルを回転させる操作画面


クラッシュした画面

バージョンアップによる初期不良に違いないと考え、そのうち改良されるに違いないとタカをくくりました。クラッシュ前にファイルを保存して、何回も回転操作-保存-クラッシュを繰り返すというバカげた利用をして、バグ改善を期待していました。

ところが6回ほどマイナーバージョンアップがありましたが、一向に回転に伴うクラッシュ問題が直りません。

とうとうシビレを切らし、イタリアにあるテクニカルサポートにメールで問題を報告してバグを直すなりしてもらうことを決断しました。英語でのやりとりになりますから自分にとってはハードルが高くなります。

2 3DF Zephyr テクニカルサポートとのやりとり

3DF Zephyr テクニカルサポートにクラッシュする状況のメモとその時のログファイルをメールで送付しました。

翌日テクニカルサポートから要旨次のメールが来ました。

・ログファイルではクラッシュの原因がわからない。

・何が生じているか判らないので、クラッシュを再現したスクリーンレコードとその時のZEPファイル、説明を送ってほしい。

このメールに対応するために自分も覚悟を決めて次の対応をすべく準備を始めました。

・クラッシュ再現の様子をGameDVR(Windows10常駐ソフト)で録画する。

・録画とZEPファイル等をGoogleドライブ経由でテクニカルサポート担当者に送る

なお、このころ3DF Zephyr Liteを利用されているFacebook関根さんに同じような不都合があるかお聞きし、ないとの返事をいただいています。

3 不都合のあっけない解決

クラッシュ再現の様子をGameDVR(Windows10常駐ソフト)で録画するために、まず毎回クラッシュしてしまうZEPファイル(3DF Zephyr ファイル)を立ち上げました。その画面を録画するためにWindowsキー+Gキーをクリックしました。録画がはじまりました。オブジェクト回転1回目をします。ついで回転2回目に入りました。いつもは必ずここでクラッシュします。ところがなんとクラッシュしません。何回回転させてもクラッシュしません。別のファイルでもクラッシュしません。さっきまでクラッシュしていたのが嘘のようです。

理由は不明ですが、Windowsキー+Gキークリックで自分が2ヵ月間苦悩してきた不都合が一瞬にして消えたようです。

実務的にはあっけなく問題が解決してしまいました。

3DF Zephyr テクニカルサポートとFacebook関根さんに早速報告して、すべて終了しました。

4 感想

・結果としてクラッシュという不都合はソフトのバグではなく、自分のパソコン内部での他ソフトとの衝突という個別問題であったと理解しました。

・Windowsキー+Gキークリックでの問題解決は偶然のラッキーであったと考えます。

・テクニカルサポートに連絡しなければ偶然の解決はなかったので、高いハードルを越えて連絡して良かったと思います。

・この問題のなかで、3Dモデル作成のこれまでの全ての詳細ログがパソコンに保存されていることを知りました。

・また、3DF Zephyr Lite操作で自分が知らなかった短縮操作をテクニカルサポートのメールで知り、役立ちました。