首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >简单的图像分析

简单的图像分析
EN

Stack Overflow用户
提问于 2011-08-28 14:46:39
回答 5查看 3.6K关注 0票数 1

我正在寻找一个简单的图像分析的方法,软件或库。

输入的图像将是一个白色的背景,上面有一些随机的小黑点。

我需要生成一个.txt文件来表示这些点的坐标。也就是说,如果图像中有三个点,则输出将是一个文本文件,其中包含三个坐标(x1,y1)、(x2,y2)和(x3,y3)的表示。

我在网上搜索了几个小时,没有找到合适的东西,我找到的只是一些复杂的图像处理程序。

有人告诉我,用MATLAB编写代码很容易,但我对MATLAB并不熟悉。

使用C++、Java或C#可以轻松做到这一点吗?

有什么好的库吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-08-28 14:53:27

这在任何语言中都很简单。根据输入的形式,您可能需要遍历所有的输入(假设它是一个简单的矩阵-简单地有两个嵌套循环,一个用于x坐标,一个用于y坐标),每当您遇到一个黑点时,只需输出当前的索引,即该点的x和y坐标。

至于库,除了将输入解码成这样的矩阵形式(例如JPEG解码器)之外,任何其他东西都是多余的。

票数 1
EN

Stack Overflow用户

发布于 2011-08-28 14:53:32

我不认为你需要图像处理库来解决这类问题(如果我错了,有人纠正我),因为这些库可能专注于图像处理,而不是识别。您需要了解所支持的图像格式(如何存储,如何解释,等等)和基本的C文件系统函数。

例如,如果您期望的是JPG文件格式,则只需计算每条扫描线的填充,然后逐条到达每条扫描线,并逐条到达扫描线中的每个像素。您必须使用两个计数器,一个用于行,另一个用于列。如果像素不是白色的,那么您就有了自己的坐标。

票数 0
EN

Stack Overflow用户

发布于 2011-08-28 14:54:07

这对您来说应该很容易做到,而不需要任何外部软件;例如

代码语言:javascript
复制
for(y in [0..height]) {
   for(x in [0..width]) {
       if(pixels[y][x].color == BLACK)
           print("(%d, %d)", x, y);
   }
}

会起作用的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7219452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档