Je voulais rectifier une paire d'images stéréo provenant de deux modalités différentes (visuelle et thermique). Je les deux caméras à l'aide calibréRectifier des images de différentes tailles
[cameraParams,imagesUsed,estimationErrors] = estimateCameraParameters(imagePoints,worldPoints);
me donner un objet stereoParameter, puisque imagePoints points correspondant contient pour les deux modalités damiers.
Pour corriger, j'utilisé l'appel suivant:
[J1,J2] = rectifyStereoImages(I1,I2, cameraParamsStereo);
où I1
est une image visuelle et I2
un thermique. Malheureusement, cela me donne l'erreur:
Error using rectifyStereoImages>parseInputs (line 106) Inputs must be of the same size and data types.
Error in rectifyStereoImages (line 96) [I1, I2, interp, outputView, fillValues] = parseInputs(...
Les résolutions des deux images sont tout à fait différents (2048x1088 pour le visuel, 384x288 pour thermique). De mon engagement cependant, la rectification en principe devrait encore fonctionner, car il est fait de même dans this papier. Honnêtement cependant, je ne sais pas comment ...
Question: Y at-il une façon de corriger les images Matlab de tailles différentes? Si non, y a-t-il un algorithme pour le faire qui peut être facilement mis en œuvre?
avez-vous essayé de faire de votre image thermique la même taille que l'optique? ajoutez une rangée et des colonnes vides à droite et en bas. – gregswiss
@gregswiss: Avec vide je suppose que vous voulez dire des valeurs nulles. J'ai essayé cela maintenant, mais cela me donne une autre erreur "Index dépasse les dimensions de la matrice" dans "Erreur dans vision.internal.calibration.CameraParametersImpl/getValidBounds (ligne 860)" – user1809923