Questions tagged «image-processing»

通常,图像处理是其输入为图像的任何形式的信号处理,例如照片或视频帧。

1
消除图像眩光
免责声明:我绝不从事信号处理。只是很好奇... ny问题非常简单:是否可以对图像进行软件处理以消除或减少前灯眩光? 这将是这样的图片: 如果可以,是否有可用的软件库?我不在乎哪种语言,我只想要功能。Slash有谁知道目前是否对此进行研究?

8
DSP或信号/图像/数据处理笑话
其他一些StackExchange / StackOverflow网站则具有一定的幽默感或趣味性。 您最喜欢的“数据分析”卡通是什么?特别值得一提的是(IMHO)关于因果关系和相关性的xkcd动画片(DSP人士知道我的意思): 那么答案中允许幽默吗?我希望如此,例如: StackOverflow:您最好的程序员笑话是什么? MathOverflow:是否存在良好的数学笑话 SE.Stats(交叉验证):统计笑话 SE.Stats(交叉验证):您最喜欢的“数据分析”卡通是什么? SE.Maths 关于数学笑话的问题 确实存在信号处理或图像处理中的幽默感,尽管深度较浅且传播范围较窄。在土耳其伊斯坦布尔的ICASSP 2000 DSP幽默展览上,我第一次遇到了幽默(之前我零幽默)。下图来自EURASIP的Humor in DSP: 所以我认为,我们应该得到一些humor和joke标签和实际亮度。前进!

2
如何识别桌游中的六角形拼贴?
我想识别照片中六角形拼贴的边界,如下图所示: 在我看来,在正方形网格上的一种标准方法是首先检测角(例如Canny),然后通过霍夫变换或类似方法提取最长的线。 这看起来不是十六进制平铺的最佳解决方案,因为外线的长度较短,并且很难将其与其他线分开。 有解决这个问题的算法吗?在opencv中有解决方案会特别好,但是我也对一般想法感兴趣。 更新: 使用python和opencv我可以收到以下结果: 这是我的代码: import cv2 import numpy as np imgOrig = "test1"; img = cv2.imread(imgOrig+".jpg"); lap = cv2.Laplacian(img, cv2.IPL_DEPTH_32F, ksize = 3) imgray = cv2.cvtColor(lap,cv2.COLOR_BGR2GRAY) ret,thresh = cv2.threshold(imgray,127,255,0) contours, hierarchy = cv2.findContours(thresh,cv2.RETR_TREE,cv2.CHAIN_APPROX_NONE) size = img.shape m = np.zeros(size, dtype=np.uint8) for i, cnt in enumerate(contours): if cv2.contourArea(cnt) …


4
上面的人检测
我试图找到一种方法,仅使用距离地面3米的一台摄像机来检测人员。这是相机返回的帧: 更新:视频测试-> http://dl.dropbox.com/u/5576334/top_head_shadow.avi 为了做到这一点,首先我了解我必须执行背景-前景分割。那是容易的部分。 使用前景蒙版,我可以进行简单的操作(例如霍夫变换)来查找圆,但是这种方式只能检测出60%的头部,包括许多误报。 我可以使用其他一些简单的技术,例如颜色分割,但是我发现人头与上面的人非常不同,因为他们的发型,颜色,头发数量,... 尽管我还有其他选择,可以使用HOG描述符或类似Haar的功能,但是我需要一个从上面看到的人的广泛数据库来训练模型。我还没有找到类似的东西。 我以为这将是一个经常发生的问题,但是我在文学或互联网上找不到很多。解决此任务的任何帮助将不胜感激:-) 更新:有关更多信息,目标是实施一些通用方法来进行行人流量跟踪。第一个原型将在购物中心进行测试。

4
压缩感测的适用性
据我所知,压缩感测只能用于稀疏信号。它是否正确? 如果是这样,如何将稀疏信号与任何带宽受限信号区分开?与那种情况下变成稀疏信号相比,每个信号都可以扩展为包括稀疏或零系数信号部分? 此外,压缩感测是否一直都能完美地检索信息或发出信号? 补充:顺便说一下,我刚刚开始学习这些东西,所以这个问题的目的是品尝一下这些东西是什么。

2
Hough变换的替代方法,用于检测网格状结构
我有一个图像,该图像由形成网格形状的多个“角度”组成: 经过一番搜索后,霍夫似乎很合适,因为它不受换行的困扰。但是,我的问题是我的线条是'fat',并且我运行的任何边缘检测(在这种情况下为Canny)都选择了线条的边缘,而不是中间的边缘: 这意味着霍夫变换最终会选择网格线“边”中的一个(或两个),而不是中间。 鉴于我知道我要寻找的东西(这种网格形状,始终处于大致相同的方向),是否有更好的方法来执行“边缘检测”部分以给我中心线,还是应该寻找用完全不同的方法?


2
是否有任何好的开源(免费的)手写OCR程序?
标题问了一切。我面前有一个我不太热心的数据输入任务:50-100页的手写注销/登录日志。 日志的格式可能会有所帮助。页面被划分为清晰划定的行和列(13r x 6c,带有额外的标题行)。进一步帮助我解决的是三列与日期/时间相关(日期,超时,进入时间)。而且,或多或少地枚举了两个列(资源和名称)中的数据,因此,例如,名称“ Smith”可能一次又一次地出现在名称列中,每次都具有相同的笔迹。最后一栏“ Notes”是自由格式,但是如果我可以自动完成前6列,则我不介意手动输入Notes。 有什么建议么?(除了“开始输入”。) PS:如果有一个更好的SE网站可以询问这个问题,请告诉我,我会在那里询问。

3
Gabor过滤器可以用于检测汽车凹痕吗?
我正在研究用于检测汽车凹痕的Gabor过滤器。我知道Gabor过滤器已广泛用于模式识别,指纹识别等。 我有一张图片。 使用MathWorks File Exchange网站上的一些代码,我得到了以下输出。 在某种程度上,这不是人们期望的输出。这不是一个好结果。 我的脚本如下: I = imread('dent.jpg'); I = rgb2gray(I); [G, gabout] = gaborfilter1(I, 2, 4, 16, pi/2); figure imshow(uint8(gabout)); 编辑:对下面的图像应用不同的代码: 经过gabor滤镜的不同方向输出图像: 我如何隔离被正确检测到的这个DENT?

2
这两个Gabor滤波器功能之间有什么区别
我需要在项目中增强手背静脉图像上静脉的可见性。我使用两个不同的偶数对​​称Gabor滤波器组来改善静脉可见度。 第一库由以下gabor函数组成: Gemk(x,y)=γ2πσ2exp{−12(xθ+γ2y2θσ2)}×(cos(2πf0xθ)−exp(−υ22))Gmke(x,y)=γ2πσ2exp⁡{−12(xθ+γ2yθ2σ2)}×(cos⁡(2πf0xθ)−exp⁡(−υ22))G^\mathit{e}_\mathit{mk}(x,y)=\dfrac{\gamma}{2\pi\sigma^2}\exp\Bigg\{-\frac{1}{2}\left(\dfrac{x_\mathit{\theta}+\gamma^2y_\mathit{\theta}^2}{\sigma^2}\right)\Bigg\}\times \left(\cos(2\pi f_\mathit{0}x_\mathit{\theta})-\exp(-\dfrac{\upsilon^2}{2})\right) 第二银行包括以下这些: Gemk(x,y)=exp{−12(xθ+γ2y2θσ2)}×cos(2πf0xθ)Gmke(x,y)=exp⁡{−12(xθ+γ2yθ2σ2)}×cos⁡(2πf0xθ)G^\mathit{e}_\mathit{mk}(x,y)=\exp\Bigg\{-\frac{1}{2}\left(\dfrac{x_\mathit{\theta}+\gamma^2y_\mathit{\theta}^2}{\sigma^2}\right)\Bigg\}\times \cos(2\pi f_\mathit{0}x_\mathit{\theta}) 其中是比例索引,ķ是取向指数,˚F θ为滤波器中心频率,σ是标准偏差(通常称为刻度),γ是所述椭圆高斯包络的高宽比,υ是因子确定DC响应,X θ = (X COS θ + ý 罪θ )和Ý θ = (- X 罪θ + ý COS θ )是旋转的版本Xmmmkkkfθfθf_\thetaσσ\sigmaγγ\gammaυυ\upsilonxθ=(xcosθ+ysinθ)xθ=(xcos⁡θ+ysin⁡θ)x_\theta=(x\cos\theta+y\sin\theta)yθ=(−xsinθ+ycosθ)yθ=(−xsin⁡θ+ycos⁡θ)y_\theta=(-x\sin\theta+y\cos\theta)xxx和坐标。yyy 我已经在MATLAB中对这些过滤器进行了编码,编码方面我没有任何问题。但是我无法理解这两个gabor函数之间的根本区别。

3
运动矢量如何在MPEG的预测编码中起作用?
在MPEG中,存在将图像分解成宏块并且针对那些宏块中的每个宏块计算运动矢量的处理。然后,您将这些矢量以及预测误差一起传输,以重建视频序列中的下一个图像。 我正在设法牢牢掌握其工作原理。每个宏块都有一个与之关联的运动矢量(如果矢量为[1,0]),则表示all the pixels in this block move 1 in the x direction and 0 in the y direction for the next frame. 如果所有运动矢量未正确对齐,这是否会使图像的区域不被考虑(例如首先是那个宏块)? 例如,我发现以下问题。 在时间t考虑以下图像: 7 7 7 7 7 7 5 5 7 5 5 8 8 8 8 8 9 9 9 9 9 9 9 9 …


2
维纳滤波器,用于图像降噪(图像降噪)
为了降低图像噪点,我正在努力使维纳滤波器工作。就我而言,我将首先使用另一个降噪滤波器,然后将其结果用作Wiener滤波器的噪声特性的近似值。 关于Wiener滤波器的信息,我发现以下Matlab代码和说明很有用: http://www.mathworks.co.uk/help/toolbox/images/f11-12251.html#f11-14272 以及其他一些良好的链接,例如 http://blogs.mathworks.com/steve/2007/11/02/image-deblurring-wiener-filter/ 因此,从Matlab的角度来看,我可以看到如何使用内置的Matlab函数,但我想获得更基本的了解,而不仅仅是使用函数调用,但与此同时,我更希望找到比可消化的东西更易消化的东西。维纳过滤的维基百科条目。 有人愿意提供有关维纳滤波的简要说明吗?

2
用整数因子对图像进行下采样
当以整数因子对图像进行下采样时,显而易见的方法是将输出图像的像素设置为输入图像中相应n × n块的平均值。nnnn×nn×ñn \times n 我记得在某处模糊地阅读过该方法不是最佳方法(对不起,我不记得任何细节) 是否存在更好的方法(如果这样,虽然“显然”正确),上述方法在哪里失败?我对信号处理了解不多,这个问题让我很感兴趣。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.