せっかくDJI Sparkで360度の全景写真が撮れるようになったのでぐるぐる回せるようにしたいと思います。何をすれば良いかはネットを調べていると分かってきますが、日本語でまとまった情報は見当たりませんでした。英語では以下のページがよくまとまっていますが、これも若干の補足が必要です。
I would like to explain how to make 360VR picture for Facebook from DJI Spark spherical pano pictures. I found a following page, but I still think that it is good idea to explain in detail.
How to Make a 360 Photo with Your DJI Mavic Pro Drone
なるべく分かりやすいようにまとめてみたいと思います。
[ Facebookが360度VR写真として認識するための条件 / Conditions to recognize JPEG file as 360VR by Faceboook ]
- 縦横比2:1のJPEG画像 / JPEG picture with 2:1 aspect ratio
円筒図法で描かれた世界地図のイメージです。最初、なんとなく2:1かと思いましたが、横方向は360度、縦方向は天頂から足の下までの180度を平面に展開したものになりますので縦横比2:1は自明です。/ It looks like cylindrical projection world map. You may understand why aspect ratio needs to be 2:1, because 360 degrees for horizontal line and 180 degrees for vertical line. - JPGのExifで属性の”Make”が”Ricoh”,”Camera Model Name”が”Ricoh Theta S”であること / JPEG file has exif attribute “Make” = “Ricoh” and “Camera Model Name” = “Ricoh Theta S”
Thetaに偽装することによりFacebookあるいは他のアプリケーションに360VRとして扱ってもらいます。/ This is just pretending Ricoh Theta picture.
この条件に適合するJPEG画像を作り出すことが本稿の目的です。
Objective of this article is making JPEG file to meet above conditions.
[ 手順 / Procedure ]
- DJI SparkのSDカードからPCに写真をコピーします。360度パノラマの場合DICM/Panorama/ フォルダー下のサブフォルダーに46枚の写真があります。Copy 46 pictures from subfolder under DICM/Panorama of DJI Spark SD card to your PC.
- Microsoft Image Composite Editorで結合します。/ Stitching 46 pictures by using Microsoft Image Composite Editor.
– New panorama from images – 46枚の写真を選択 / Select 46 pictures
– IMPORT – Simple panorama, Auto-detectを選択してNEXT / Select “Simple panorama” and “Auto-detect” then hit NEXT
– STITCH – Spherical、Auto orientationを選択してNEXT / Select “Spherical” and “Auto orientation” and hit NEXT
– CROP – (Auto completeを実行)、No cropを選択してNEXT / (Execute “Auto complete”), select “No crop” and hit NEXT
– EXPORT – Image/Widthを10000に変更してExport to disk / Change “Image/Width” to 10000 and perform “Export to disk”
オリジナルのWidthは19546 pixels, Heightは7191 pixelsになっています。ちょっと大きすぎますので、あとの処理も考えて分かりやすいようにWidthを10000に変更して書き出します。
Original width is 19546 pixels and height is 7191 pixels. It is too large for web applications. Let reduce the width to 10000 here.
- 縦横比の調整 / Adjust aspect ratio
前のステップで出来上がった写真は横幅10000 pixels、縦が3696 pixelsほどになっています。この縦方向を5000pixelにする必要があります。元々の写真で縦のpixelが足りないのには理由があります。それはSparkのカメラは上の方向に向けることは出来ないため天頂周りの画像が抜けているからです。
好みのツールで調整を行ってください。わたしは古いAdobe PhotoShop Elementsを使用してキャンバス・サイズの変更で調整しました。この時、オリジナルの画像が下に配置し追加したキャンバスが上に来るようにします。/ Now we have JPEG picture which has 10000 x 3696 pixels. We need to adjust this to 10000 x 5000 pixels. What is lack of 1304 pixels for vertical size? The reason of this answer is Spark can not move a camera to above. So, we need to add 1304 pixels in top of the picture. I use canvas size modification function of Adobe Photoshop Elements.出来上がった画像で地平線が中央にあることを確認します。
フリーソフトのGIMPでも簡単に同じことができます。
Horizon should be at center of the picture.
- exifの変更 / Modify exif
わたしはexiftoolというコマンドライン・ツールを使用して必要な属性を追加しました。コマンドは以下のようになります。WindowsであればExplorerからJPEGファイルのブロパティ/詳細で”カメラの製造元”と”カメラのモデル”で変更することも出来ます。I use exitftool command to modify exif. Command example is following. You also can use Windows/Explorer property window to modify exif attribute.exiftool -Make="Ricoh" -Model="Ricoh Theta S" DJI_0245.jpg
[ 活用方法 / Usage ]
- Facebookにアップロードすると360度写真として認識されます。PCならばマウスで、携帯電話だとVRとして携帯電話の向きを変えることで好きに方向の景色を見ることが出来ます。
Just upload the picture to the facebook. Then you can manipulate the picture as 360VR mode.
-> 投稿のサンプル / Sample facebook entry
- PCのRICHO THETAアプリケーションに読み込むと大画面で詳細な画像を操作したり回転させたり出来ます。
You can use RICHO THETA application on the PC to enjoy the 360VR picture by using big screen. - 携帯電話のTHETA Sを使用すれば画面の操作をするだけではなくGoogle Cardboardや同様のVRメガネを使用してVR体験出来ます。これは試してみるとかなり凄いです。
You can use VR glass like Google Cardboard by using THETA S mobile application. - 携帯電話のTHETA+で様々な編集をしたりアニメーションを作成したり出来ます。
You also use THETA+ mobile application to edit or make animation from the picture.
-> 投稿のサンプル/ Sample - Google Photosもアップロードしておくとしばらくしてから回転できるパノラマ写真として認識されます。 / Google Photos also recognizes the picture as 360VR some time later.
2 comments untill now