2011-04-28 99 views
1

我正在开发android中的一个应用程序。在这个应用程序中,我想查找黑白对白中对象的形状。如果我在快照中有一个三角形对象,那么我想以编程方式找到对象边缘之间的角度。我不想在对象上手动绘制线条并找到角度。我的实际需要是扫描图像并使用对象像素强度查找对象的角度。在android/java中的图像识别

任何人都可以请建议我如何进行这项工作。

在此先感谢。

回答

1

不确定这是否是移动设备的良好解决方案,但听起来您应该使用Hough transform来查找线条,然后使用这些线条找到三角形。

1

这听起来像你需要使用一些Edge detection,这是霍夫变换的一部分。这个过程有许多不同的复杂方法,但这绝对是一个开始阅读的起点。

2

OpenCV library,其中can be built for Android可以执行这种形状检测。这是一个tutorial about triangle and other shapes detection。它显示了如何提取顶点,从中你应该能够轻松获得角度。它在C#中,但应该很容易移植到C.

我不认为你会发现一个现成的Android OpenCV Java绑定。但是使用Android NDK,您可以将调用封装到OpenCV C API中,并通过JNI在Java中公开一些函数。谷歌搜索关于"opencv android java"产生一些技巧。