• 締切済み

歪曲収差が影響する範囲について教えて下さい

デジカメで撮影した画像内で歪曲収差が影響している範囲の求め方について教えてください 現在大学で研究している学生の者ですが研究の過程で画像解析を行っています そのためデジカメで撮影した画像を取り扱っているのですが,歪曲収差があるため教授に画像内において歪曲収差が影響していない範囲はどこか(画像データとして使える範囲はどこか)を調べるように言われました そこで方眼紙を撮影して歪曲収差が影響していない範囲を調べようと考えました そして撮影した方眼紙の画像において縦・横のマス目の間隔がどのようになっていくか計測し教授に報告しました しかし,「縦・横のマス目の間隔がどのようになっていくか計測しただけでは歪曲収差が影響している範囲はわからないよ」と言われ,確かにそうだなと感じました その後ここからどうすれば歪曲収差が影響していない範囲を求められるのか考えているのですがなかなか案が思い浮かばず困っています そもそもマス目の間隔を計測すること自体違うのか,他に方法があるのかと思い調べてはいるものの「歪曲収差とは何か?」,「収差の補正」などについての説明ばかり検索されてヒントになるようなものは見つけられませんでした 方眼紙を撮影した後どのようにして画像内において歪曲収差が影響していない範囲を求めればいいのか分かる方が居ましたら教えてください よろしくお願いします 撮影される画像は縦×横が2848(pixel)×4288(pixel)の大きさです また,収差は糸巻型の歪曲収差です

みんなの回答

  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.3

 「使える部分」とは「収差を補正することによって十分な精度が出た部分」であり、「十分な精度が出た」かどうかは、残った歪み(局所ごとの位置ズレを測る。マス目の間隔じゃ誤差が多過ぎて駄目)がどれだけあるか、ということと、使う目的とを照らし合わせて判断する。  うんと線の細い方眼紙を撮影した画像があれば、収差の補正に必要な式が構成できます。画像の中心からの距離rに関する多項式でモデル化して係数を最小二乗法で決めてやるのが簡単でしょう。問題は、カメラのピントや絞り、ズームをいじくると、たちまち歪みが変化するということ。これらの条件を固定してカメラを使うのならいいですけど。  補正は、実際に歪みを取り除いた画像を(双一次補間などで、元の画像より少なくとも4倍の画素数を持つ画像として)作るというのでもいいけれども、どうしても細部が少しボケてしまう。むしろ、使い方によっては「歪んだ画像上の画素を指定すると、その補正された位置を計算する」だとか、「ある位置を指定すると、歪んだ画像上の画素の位置を計算する」というだけで済むことも多い。

noname#208507
noname#208507
回答No.2

「歪みのある像の」マス目の間隔を計測することは、間違っている気がします。 同じ点の、歪む前と後の距離を調べるべきでしょう。 OpenCVのカメラキャリブレーションで、外部パラメータ(R|t)やアフィン変換(A)と一緒に、レンズの歪曲収差も求めることができます。チェスボードを撮影した画像から、歪み係数が算出できます。係数の意味は、歪みのモデルが計算式としてOpenCVのリファレンスに載っています。 ・まず上の方法で、レンズの歪み係数を求める。 ・カメラの全座標と、それを歪みモデルで変換した座標(つまり歪みのない座標と歪んだ後の座標)の対応表を求める。 ・歪みのない座標と歪んだ後の座標の距離[pixel単位]をそれぞれ求める。 ・その距離が、許容できる誤差[pixel単位]を下回る座標を全て書き出す。 これで画像中の、歪みの影響が小さい範囲を割り出せると思います。 糸巻き型でも樽型でもたぶん大丈夫でしょう。

参考URL:
http://opencv.jp/opencv-2.1/cpp/camera_calibration_and_3d_reconstruction.html
  • SortaNerd
  • ベストアンサー率43% (1185/2748)
回答No.1

影響している範囲という意味が分かりません。 影響のないところは無いと思いますが。 影響の大きいところと、影響の小さいところならあるでしょうけれど。 その中でどの程度の影響なら許せるのかを決めるのはあなたです。