2016-03-21 15 views
0

私はCImgを画像処理割り当てに使用しています。移調呼び出した後()次のコードCImg転置関数が間違った幅を返す

cout << image_subsample.width() << ","<<image_subsample.height() << "transpose:" << image_subsample.transpose().width() <<"," <<image_subsample.transpose().height() << endl; 

で出力が

1200,1transpose:1200,1200 

転置の予想される出力は

1200,1transpose:1,1200 

私が何かをしないのですか?ですか

答えて

0

あなたは実際にあなたの例で行列を2回転置するので、得られる出力は論理的です。 get_transpose()を使用するか、サイズを表示する前に転置行列をどこかに保存してください。

CImg<> transp = img.get_transpose(); 
fprintf(stderr,"%d,%d",transp.width(),transp.height()); 
+0

ああ、あなたの意見があります。 transpose()への最初の呼び出しはオブジェクト自体を変更し、transpose()への2番目の呼び出しはtransposeの転置です。ありがとう!とった –

関連する問題