00001
00002 package require image
00003
00004 namespace eval stereo {
00005
00006 00007 00008 00009 00010 00011 00012
00013 proc eval_rectif_matrix_michel {
00014 {nom_manip "../vecteurs/dili_2003_michel"}
00015 {entete_fichier_vect "pp"}
00016 {num_image 2}
00017 {nblig 480}
00018 {nbcol 640}
00019 {taux_reduction 1}
00020 {type_dist 3}
00021 } {
00022 00023 00024 00025 00026 00027 00028 00029
00030
00031 puts "0"
00032 set calibrageMatrices [stereo::new_CalibrageMatrices]
00033
00034 00035 set oldPath [pwd]
00036 cd $nom_manip
00037
00038 puts "00"
00039 00040 00041 puts "1"
00042
00043 set num_image_str [format "%03d" $num_image]
00044 if { [file exists ${nom_manip}/${entete_fichier_vect}_d.lmv.ie${num_image_str}] } then {
00045 set separateur "_"
00046 } elseif { [file exists ${nom_manip}/${entete_fichier_vect}_d.lmv.ie${num_image_str}.gz] } then {
00047 set separateur "_"
00048 } elseif { [file exists ${nom_manip}/${entete_fichier_vect}.d.lmv.ie${num_image_str}] } then {
00049 set separateur "."
00050 } elseif { [file exists ${nom_manip}/${entete_fichier_vect}.d.lmv.ie${num_image_str}.gz] } then {
00051 set separateur "."
00052 } elseif { [file exists ${nom_manip}/${entete_fichier_vect}d.lmv.ie${num_image_str}] } then {
00053 set separateur ""
00054 } elseif { [file exists ${nom_manip}/${entete_fichier_vect}d.lmv.ie${num_image_str}.gz] } then {
00055 set separateur ""
00056 } else {
00057 puts "Matrice pour camera droite non existante"
00058 return
00059 }
00060
00061 puts "2"
00062
00063 if { [file exists ${nom_manip}/${entete_fichier_vect}_g.lmv.ie${num_image_str} ]} then {
00064 set separateur "_"
00065 } elseif { [file exists ${nom_manip}/${entete_fichier_vect}_g.lmv.ie${num_image_str}.gz] } then {
00066 set separateur "_"
00067 } elseif { [file exists ${nom_manip}/${entete_fichier_vect}.g.lmv.ie${num_image_str}] } then {
00068 set separateur "."
00069 } elseif { [file exists ${nom_manip}/${entete_fichier_vect}.g.lmv.ie${num_image_str}.gz] } then {
00070 set separateur "."
00071 } elseif { [file exists ${nom_manip}/${entete_fichier_vect}g.lmv.ie${num_image_str}] } then {
00072 set separateur ""
00073 } elseif { [file exists ${nom_manip}/${entete_fichier_vect}g.lmv.ie${num_image_str}.gz] } then {
00074 set separateur ""
00075 } else {
00076 puts "Matrice pour camera gauche non existante"
00077 return
00078 }
00079
00080 puts "3"
00081
00082 00083 set projection_droite_file ${entete_fichier_vect}${separateur}d.lmv.ie$num_image_str
00084 set projection_gauche_file ${entete_fichier_vect}${separateur}g.lmv.ie$num_image_str
00085
00086 00087 set intr_droite_file ${entete_fichier_vect}${separateur}d.lmv.i
00088 set intr_gauche_file ${entete_fichier_vect}${separateur}g.lmv.i
00089
00090 00091 set dist_droite_file ${entete_fichier_vect}${separateur}d.lmv.k
00092 set dist_gauche_file ${entete_fichier_vect}${separateur}g.lmv.k
00093
00094 puts "4"
00095
00096 00097 ::stereo::CalibrageMatrices_readFromCalibrationDir \
00098 $calibrageMatrices \
00099 $projection_droite_file \
00100 $projection_gauche_file \
00101 $intr_droite_file \
00102 $intr_gauche_file \
00103 $dist_droite_file \
00104 $dist_gauche_file
00105
00106 puts "5"
00107
00108 ::stereo::CalibrageMatrices_estimateRectificationParams \
00109 $calibrageMatrices \
00110 $nblig \
00111 $nbcol \
00112 $type_dist \
00113 $taux_reduction
00114
00115 puts "6"
00116
00117 ::stereo::CalibrageMatrices_saveToFile $calibrageMatrices \
00118 "$nom_manip/param.stereo.ay.$taux_reduction"
00119
00120 puts "7"
00121
00122 00123 00124 00125
00126 puts "8"
00127
00128 ::stereo::delete_CalibrageMatrices $calibrageMatrices
00129
00130 00131 cd $oldPath
00132
00133 }00134
00135
00136 }00137
00138 package provide stereo 0.1