奈良のむし探検

奈良に引っ越しました。これまでの「廊下のむし探検」に倣って「奈良のむし探検」としましたが、動物・植物なんでも調べます。

写真から虫の大きさを推定

2021-06-20 09:36:08 | カメラ
今年の1月終わりに奈良県大和郡山市に引っ越してから、毎朝散歩するついでに、鳥や虫、花の写真を撮り始めました。以前のコンデジでは鳥がうまく撮れないので、Nikon P950とCanon SX70 HSという2台の高倍率ズームのコンデジを購入しました。虫については、以前から用いているNikon D7100のボディにAF-S Micro NIKKOR 85mm 1:3.5というマクロレンズを取り付けて撮っています。写真から虫の大きさが推定できないかと、以前から寸法測定用のテープを貼って撮ったりしていたのですが、虫の近くにテープを貼るのは面倒だし、時にはそのために虫が逃げてしまうこともあって、ときどきしか使っていませんでした。

撮った写真を整理するときにXnViewというフリーソフトを使っているのですが、写真のプロパティにあるEXIFという写真データを何の気なしに見ているときに、"focus distance"という項目が目につきました。ネットで調べると、どうやら被写体までの距離データのようです。これさえわかれば、これから倍率を出し、虫の大きさが推定できるかもしれません。それで、早速、"focus distance"が実際の被写体までの距離と一致するかどうかを調べてみました。



実験はこんな風に行いました。食卓用のテーブルの上に、カメラを両面接着テープで固定し、レンズ部分を木切れのスペーサで持ち上げて水平にします。ステンレスのスケールをブックエンドに両面接着テープで撮りつけます。テーブルの端には距離の目安に物差しを貼り付けておきますが、実際の距離はレーザー距離計で測りました。レーザー距離計の後端と物差しの後端をカメラの距離基準マークΦに合わせておきます。後は物差しをガイドにしてブックエンドを動かし、そのたびにレーザー距離計で示された距離を記録し、一方、カメラのファインダーを覗きながらピントをAFで合わせ、リモコンを使ってストロボをたきながら写します。最初はレーザー距離計を使わず、5 cmおきに物差しを見て距離を測っていたのですが、レーザー距離計を使うようになってからは1 cmおきに写真を写しました。



そうすると、例えば、こんな風な写真が得られます。この写真からImageJというフリーソフトを使って、スケールの10mmに相当する画素数をpixel単位で求めます。これと、カメラの仕様から、イメージセンサーの大きさが6000 × 4000 pixelで、23.5 mm × 15.6 mmであることを知って、それから撮影倍率を求めます。



こうして被写体までの距離に対して、撮影倍率を求めたグラフがこれです。全部で4回の測定をしたので、それぞれ色を変えて表示しています。これをEXCELの近似曲線で4次の多項式近似で線を描いたのが破線で示す曲線です。また、その時の式を表示しています。この式を用いると、被写体までの距離が分かれば撮影倍率が分かることになります。



次に撮った写真一枚一枚についてXnViewでプロパティを開き、その中のEXIFの中の"focus distance"を記録していきます。こうして得られた"focus distance"と、実際に測定した被写体までの距離を表したのがこのグラフです。ほぼ直線的に並んでいますが、よく見ると、実際の被写体までの距離が変化しても"focus distance"が変化していないことが見て取れます。この実験は被写体までの距離を1 cmずつ変えて測定したものですが、2-3cmの間は"focus distance"は一定の値で、それから急に変化するので、階段状の変化をしています。この結果を見て、最初はまずいなと思ったのですが、グラフを直線で近似してみると、ほぼ直線で表されているのと、その直線の傾きを± 5 %変化させた範囲(灰色の破線で挟まれた領域)内に全体がほぼ収まっているので、5%の誤差を含んで距離を推定できるということが分かりました。



このことを用いて、EXCELの表計算でこんなものを作りました。橙色で示した部分("focus distance"の値と画像から求めた虫のpixel数)を入力すると、虫の大きさと5%の誤差を与えるというものです。



実際に、6月9日にセイバンモロコシの小穂の写真を撮ったときに一緒にスケールを写していたのですが、そのスケールの10 mmの大きさを今の方法で推定してみることにしました。このときの"focus distance"は0.398107、10 mm分の画素数は966.671 pixel。これから計算すると10.03±0.50 mmとなり、かなりよく合っています。まあ使えそうな感じです。



被写体までの距離と撮影倍率が分かったので、ついでに、以前調べたようにレンズの焦点距離を求めてみました。式は f = LM/(M+1)2です。ここで、fは焦点距離、Lは被写体までの距離、Mは倍率です。こうして求めた焦点距離がこのグラフになります。AF-S Micro NIKKOR 85mm 1:3.5というレンズは内焦式といって、内部の組み合わせレンズの相対的な位置を変えて焦点位置を変化させるので、合焦時間は短いのですが、被写体までの距離を変化させると若干レンズの焦点距離が変わります。このグラフでもそんな傾向が見られます。一方、AF MICRO NIKKOR 60mm 1:2.8 Dというレンズは通常のレンズなので、被写体までの距離を変化させても焦点距離はほとんど変わりません。

久しぶりにカメラの実験をしました。思えば3-4年やっていなかったかなぁ。久しぶりにやってみると、なかなか面白かったです。
コメント
  • Twitterでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする