您的位置:首页 > 编程语言 > Java开发

opencv for java HoughLinesP的使用

2015-11-23 09:48 423 查看
Java代码网上有现成的,但还是存在一定的错误:

<span style="white-space:pre"> </span>Mat mCannyMat2=new Mat();
Mat rgbMat2 = new Mat();
Mat grayMat2 = new Mat();
Mat lines1=new Mat();

Utils.bitmapToMat(bmp, rgbMat2);

//gray
Imgproc.cvtColor(rgbMat2, grayMat2, Imgproc.COLOR_RGB2GRAY);
//canny
Imgproc.Canny(grayMat2, mCannyMat2, 80, 160);
//houghlinesp
Imgproc.HoughLinesP(mCannyMat2, lines1, 1, Math.PI /180, 30,100,30);

for (int y=0;y<lines1.rows();y++)
{
double[] vec = lines1.get(y, 0);

double x1 = vec[0],
y1 = vec[1],
x2 = vec[2],
y2 = vec[3];

Point start = new Point(x1, y1);
Point end = new Point(x2, y2);
Imgproc.line(mCannyMat2, start, end, new Scalar(255,0,0), 1);
<span style="white-space:pre"> </span>}

Bitmap grayBmp2 = Bitmap.createBitmap(bmp.getWidth(), bmp.getHeight(), Config.RGB_565);
Utils.matToBitmap(mCannyMat2, grayBmp2);

imageView.setImageBitmap(grayBmp2);

mCannyMat2.release();
rgbMat2.release();
grayMat2.release();
lines1.release();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android java opencv