こんにちは、opencv について基本的な質問があります。cv::Mat クラスでメモリを割り当てようとすると、次のことができます。
cv::Mat sumimg(rows,cols,CV_32F,0);
float* sumimgrowptr = sumimg.ptr<float>(0);
しかし、その後、不良ポインター (Null) が返されます。インターネットでは、これを使用する人がいます:
cv::Mat* ptrsumimg = new cv::Mat(rows,cols,CV_32F,0);
float* sumimgrowptr = ptrsumimg->ptr<float>(0);
また、ここで Null ポインターが返されます。しかし、私が最終的にこれを行うと:
cv::Mat sumimg;
sumimg.create(rows,cols,CV_32F);
sumimg.setTo(0);
float* sumimgrowptr = sumimg.ptr<float>(0);
その後、すべてが大丈夫です!だから、私がやっていることの何が悪いのか知りたいですか?