【问题标题】:digital image processing数字图像处理
【发布时间】:2013-07-04 21:36:39
【问题描述】:

我对数字图像处理真的很陌生,并且解决了以下提到的问题:- 我需要编写一个 C 程序,它将加载一个 ppm 图像文件并使用卷积核进行线检测。任何形式的帮助将不胜感激。

【问题讨论】:

  • 我同意。您需要阅读一些有关图像处理的参考资料,也许会拿起一本基本的图像处理教科书。一旦您尝试解决此问题,如果您在实施中遇到任何问题,那么在这里发布问题会更合适。
  • 我认为这个问题更适合:dsp.stackexchange.com
  • @Daniel 不一定更好,我认为两者都适合。这不是该网站上的第一个图像处理编程问题。 stackoverflow.com/questions/tagged/image-processing

标签: c image-processing


【解决方案1】:
  1. 首先,您需要使用fopen(..) 打开文件
  2. 其次你需要设计一个数组或者数据结构来存储图片。
  3. 那你需要为每一种角度设计一个遮罩
  4. 根据蒙版大小添加边框,将蒙版与图片卷积
  5. 保存到文件

可能会发现此链接有帮助 http://dasl.mem.drexel.edu/alumni/bGreen/www.pages.drexel.edu/_weg22/edge.html

要在您引用的链接中实现掩码,请使用此代码并将 GX 和 GY 更改为 a) 和 b)

/* 3x3 GX Sobel mask. Ref: www.cee.hw.ac.uk/hipr/html/sobel.html */

GX[0][0] = -1; GX[0][1] = 2; GX[0][2] = -1;

GX[1][0] = -1; GX[1][1] = 2; GX[1][2] = -1;

GX[2][0] = -1; GX[2][1] = 2; GX[2][2] = -1;

/* 3x3 GY Sobel mask. Ref: www.cee.hw.ac.uk/hipr/html/sobel.html */

GY[0][0] = -1; GY[0][1] = -1; GY[0][2] = -1;

GY[1][0] = 2; GY[1][1] = 2; GY[1][2] = 2;

GY[2][0] = -1; GY[2][1] = -1; GY[2][2] = -1;

c) 和 d) 相同

除了从头开始创建之外,您还可以使用开源 openCV http://docs.opencv.org/doc/tutorials/imgproc/imgtrans/canny_detector/canny_detector.html 也有关于如何使用它的在线文档和教科书 http://www.amazon.com/dp/0596516134

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2020-04-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多