問題タブ [stereo-3d]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
opencv - Stereo rig Calibration using two webcameras with autofocus technology
DISCLAIMER: Apologies for this very large question, as it could take a lot of your time.
I have a stereo setup consisting of two webcams these cameras possess auto-focus technology. The stereo setup is in canonical configuration where the cameras are separated by 10 cm distance.
I am using the stereo_calib.cpp program for stereo calibration, provided by the OpenCV sample programs.
Initially, I have captured the chessboard images by my stereo rig as the way it is shown in the sample cpp stereo images, and then tried to calibrate the setup, but the stereo rectification was either completely blank or the undistorted left and right images are tilted about 40 degrees.
As this was the case, then I have captured a set of 17 stereo pair chessboard images by keeping the Z distance constant, without any rotation, at this point the stereo images were correctly rectified in the process of stereo calibration. This Working Set contains the images of chessboard taken by the stereo setup along with the program and the image of how well the rectification has been achieved.
Later, when I was trying to calibrate the stereo setup again (as the cameras in the stereo setup was disturbed), with another new set of images of the chessboard taken by my stereo rig, the program is unable to rectify the stereo images. I am providing the Non Working Set where you can check the images taken by the stereo setup along with the images of the rectification.
As a picture is worth a thousand words.
You gotta see the output images of the provided program, which let you know much more than what I could say in my own words.
I am trying to find some new ways of stereo face recognition techniques.
Any help in this regard is highly appreciated.
And adding to this, I also need some existing techniques by which I could kick start my experimentation on new ways of face recognition using the stereo information.
opencv - openCV を使用して並進行列と回転行列を決定する方法
ステレオ カメラから撮影した 2 つの画像があります。OpenCv を使用して Translation と Rotation Matrix を見つけるにはどうすればよいですか?
android - HTC Evo 3D からの MPO 画像
私のチームは、ステレオ カメラを使用する HTC 電話用のアプリを開発しています。処理を行うには、3D カメラで撮影した静止画像が MPO 形式である必要があります。デフォルトでは、JPS イメージが返されます。
カメラが MPO 画像を返すようにするにはどうすればよいですか? これが文書化されている場所はありますか?
HTC のサイトでしばらく過ごしましたが、役立つ API またはカメラ アプリのソース コードを見つけることができませんでした (彼らのカメラ アプリは MPO ファイルを実行できるため)。
opencv - 3 つの画像補正
opencvで3つの画像を修正できるかどうかを試した人や知っている人はいますか? 「L」セットアップで 3 台のカメラを使用しています。「真ん中」にカメラが 1 台、その下に 1 台、その隣に 1 台という意味です。垂直方向と水平方向の修正を行うだけで、ペアで簡単に修正できますが、opencv を使用してそれらすべてを同じイメージ プレーンに修正できるかどうかはわかりません。
助けてください
computer-vision - エピポールを画像の外側に移動する方法
こんにちは、2 つの画像から基礎行列を計算したところ、エピポールが画像内にあることがわかりました。画像にエピポールが含まれている場合、matlab を使用して修正を行うことはできません。
エピポールが画像にない基本行列を計算する方法を教えてください。
matlab - 画像内のエピポール(ステレオ画像)と外れ値の永続性への対処方法
Matlab を使用して立体画像を作成しています。ここに示す例に従いました:
http://www.mathworks.com/help/vision/examples/stereo-image-rectification.html
「if」ループで問題が発生します。
ステータス部分をコメントアウトしたので、画像内にエピポールがあることがわかりました。これがどのような問題を引き起こすのかわかりません。それは大きな問題ですか、それともこの部分をコメントアウトする必要がありますか? また、ほとんどの場合は問題ないように見えますが、RANSAC の実装後も外れ値が残っています。これを修正するための助けをいただければ幸いです。
c++ - 非決定的な結果を与える OpenCV 2.4.3 の StereoBM
OpenCV 2.4.3 を使用して StereoBM を使用してステレオ視差マップを計算していますが、実行するたびに異なる視差マップを取得しているようです。視覚的には目立ちませんが、いくつかのピクセルがランダムに異なります。
視差マップを YML ファイルに保存しようとしましたが、WinMerge を使用してそれらを比較すると、いくつかのピクセルの値が -16 であることがわかりました。他の実行では視差値が生成されました。これも簡単に再現できます。
このスニペットは、私が何をしているかを示しています:
//initialize bm
StereoBM bm(StereoBM::BASIC_PRESET, 128, 7);
bm.state->preFilterType = CV_STEREO_BM_XSOBEL;
bm.state->preFilterCap = 63;
bm.state->SADWindowSize = 7;
bm.state->minDisparity = 0;
bm.state->numberOfDisparities = 96;
bm.state->textureThreshold = 3;
bm.state->uniquenessRatio = 3;
bm.state->speckleWindowSize = 20;
bm.state->speckleRange = 32;
bm.state->disp12MaxDiff = 1;
// Get rectified images
videoOut[MASTER] = Mat(frameHeight, frameWidth, CV_8UC3, static_cast(frameBuf[MASTER]));
videoOut[SLAVE] = Mat(frameHeight, frameWidth, CV_8UC3, static_cast(frameBuf[SLAVE]));
// grayscale conversion
cvtColor(videoOut[MASTER], frame[MASTER], CV_RGB2GRAY);
cvtColor(videoOut[SLAVE], frame[SLAVE], CV_RGB2GRAY);
// Subsample
resize(frame[MASTER], frame[MASTER], cv::Size(), 0.5, 0.5, cv::INTER_LINEAR);
resize(frame[SLAVE], frame[SLAVE], cv::Size(), 0.5, 0.5, cv::INTER_LINEAR);
// stereo computation
Mat disp = cv::Mat(frame[MASTER].rows, frame[MASTER].cols, CV_16S);
bm(frame[MASTER], frame[SLAVE], disp);
// write to file
FileStorage f1;
f1.open("data.yml", FileStorage::WRITE);
f1 << "disp" << disp;
これは OpenCV のバグですか、それとも何か間違っていますか? 入力画像も書き出してみましたが、毎回同じです。変化しているのは視差マップだけです。