2010-10-11 118 views
3

我期待在Java中执行一些图像处理,我将在Eclipse中使用Eclipse进行开发。 所以这里是我的目标:Java中的对象检测/跟踪

从灰度图像,我想能够检测到特定大小的对象,并绘制一个矩形的框架周围。然而,问题在于,该图像是从热像仪拍摄的,因此为了检测体温,像素将具有一定范围内的值。 在检测到图像中的所有对象之后,我需要对它们进行计数,但那是晚点。

所以这是我的挑战。我可以使用哪些工具/ apis/open类来做这样的事情。我环顾四周,发现了一些基本的操作,如旋转,裁剪,调整大小。但还没有真正找到我可以使用的东西。

我应该在哪里看/开始?

感谢很多提前

+0

真的吗?没有人知道我应该怎么做,或者使用哪些工具? – AtharvaI 2010-10-12 16:36:54

回答

3

的ImageJ是非常有用的: http://rsbweb.nih.gov/ij/

虽然ImageJ的被设置为一个图形用户界面,你可以使用它作为一个库太(我做到这一点)

你将不得不寻找一个适当的物体检测插件(但有一些浮动......)

祝你好运! Eelco

+0

哎Eelco,非常感谢。我环顾四周,发现了跨平台的OpenCV,并有更多的文档和支持社区。我以C/C++解决了OpenCV。 – AtharvaI 2010-12-31 00:00:54

0

This article fully explains你正在寻找的算法,并the accompanying source code is here。你可以see it in action in this video

(声明:我是作者,但我认为这是非常有用的,并已成功使用的算法有很多我自己)

算法轨道运动的物体,发现他们的边框(其应用程序绘制)计算每个对象中的像素数,并将它们作为相同对象(使用int ID)在整个帧中进行关联。由于该算法是为彩色输入而设计的,因此您可能需要将灰度图像转换为RGB(通过将灰度值复制到全部三个通道)。

说到商业计算机视觉应用,OpenCVPoint Cloud Library aka PCL是你最好的朋友。像这样的文章解释了如何使用OpenCV等工具来完成整个堆栈运动跟踪。 (纯Java实现展示了它如何工作到单个像素。)