[BUG 记录]

来源:互联网 发布:ps下载mac免费版下载 编辑:程序博客网 时间:2024/05/17 23:41
1.
      float ratio =1.45;int left_x=chepai_r.x-(int)(chepai_r.width*ratio);             int right_x=chepai_r.x+chepai_r.width+(int)(chepai_r.width*ratio);             int down_y=chepai_r.y+chepai_r.height+(int)(0.75*chepai_r.width);             int up_y=chepai_r.y-(int)(chepai_r.width*1.35);             Mat m_deal=img_roi_CheSheng.clone();             for(int m=0;m<m_deal.rows;m++)                 for(int n=chepai_r.x;n<chepai_r.x+chepai_r.width;n++)                 {                     m_deal.at<Vec3b>(m,n)[0]=0;                     m_deal.at<Vec3b>(m,n)[1]=0;                     m_deal.at<Vec3b>(m,n)[2]=0;                 }              //int tmp=(int)ratio*chepai_r.width;             if(chepai_r.x>=(int)(ratio*chepai_r.width))//(int)ratio*chepai_r.width)             {                 chepai_leftx2Chewei=(int)(chepai_r.width*ratio);//(int)chepai_r.width*ratio;             }             else             {                 chepai_leftx2Chewei=chepai_r.x;             }             chepai_rightx2Chewei=chepai_leftx2Chewei+chepai_r.width;
搞死人的一个bug,昨天晚上排查了一晚,感觉还是没问题啊~~~!!一大早头脑可能清醒一点,打断点调试,发现不是我想的那样子,一开始的int tmp=(int)ratio*chepai_r.width;  我发现int 只对ratio起作用,直接为1了~~~~~呜呜呜,原来强制类型转换只对临近的起作用,加括号哦啊啊

2.

vector<int>vec;......if(vec.size()>=2){vec.erase(vec.begin());vec.erase(vec.end())};//这里看到删第一个元素是begin ,然后理所当然的认为删除最后一个元素就是end,呃呃呃,调试又不报错直接崩了,这类错误最难找。//原来end指向了容器元素最后一个元素的下一个位置,要删最后一个元素需要这样,vec.erase(vec.end()-1)。//看到网上说也可以这样删最后一个元素,vec.pop_back()。

3.

       r_offset.y = r_chelian.y+r_chelian.height*1.2;        r_offset.x = r_chelian.x -r_chelian.width/16;       r_offset.width = (float)(1.0*(1+1/8))*(float)r_chelian.width;
各种加float没有用

然后发现-r_chelian.width/16;有效果 然后就这么整了 r_offset.width = r_chelian.width+r_chelian.width/16+r_chelian.width/16; 恩,有用,但是刚刚那么写应该也有用的啊

叫来gkj,他说你这个1/8等于0啊1 哦,原来。。

 r_offset.width = (1.0*(1+1.0/8))*r_chelian.width; 这么写就可以的


4. 默认参数的问题

XXX.h

bool fun(cv::Mat src, cv::Mat &dst,float ratio = 10.0);

aaa.cpp

bool lstm_img_standardization(cv::Mat src, cv::Mat &dst,float ratio)
//http://www.cnblogs.com/graphics/archive/2010/07/15/1778291.html