信号处理

为信号,图像和视频处理领域的艺术和科学从业者提供的问答

3
我如何开始使用Wavelets
我们当前的项目要求我们使用小波变换进行一些分析。谁能推荐我一本实用的书,最好是MATLAB或C示例。我目前正在阅读一些教程,但是并没有给我一种像傅里叶变换那样的感觉。我需要一本书,其中包含许多带有源代码的实际示例。 非常感谢您的建议。

2
如何确定离散信号是否为周期性信号?
我想知道如何确定一系列数据是否为周期性数据。 我想使用傅立叶变换/级数。我的数据看起来不定期 [111100001111000110010101010000101] 或定期 [11001100110011001100] 我需要确定它是自动的 我可以执行哪些类型的分析或计算来确定信号是否为周期性的?

2
使用DFT进行亚像素图像移位如何真正起作用?
我正在尝试为涉及生成亚像素移位图像的应用程序评估几种图像插值方法的质量。我以为我可以将使用所有这些插值变量的子像素移位的结果与一些完美偏移的图像进行比较,但可能无法获得它(那么需要什么插值?)。 我当时正在考虑在频域中使用DFT +平移,但不确定与显式内插图像(使用双线性,双三次等)相比,它的实际工作方式。我敢肯定它不可能生成完美偏移的图像,但是我无法将手指放在上面。使用DFT进行子像素移位等效于应用插值吗?如果是,采用哪一个?使用此方法获得的图像中像素值的偏差是多少?谢谢! 编辑: 经过深思熟虑后,我认为由于FFT是原始函数在谐波(正弦函数)方面的近似值(甚至更是DFT),因此相当于某种三角插值。我回想起离散数据的“傅立叶级数插值”公式,该公式是三角插值法,但不确定是否已连接。

1
重建被叶子遮挡的树枝
在树枝的部分被树叶覆盖的树的照片中,人们将如何大致重构树枝? 我可以通过脱阈,然后以几个不同角度的线段打开来提取分支的可见部分。但是我该如何(大约)填充树叶所覆盖的空间? 假设我们从下面的树图开始: 将图像加载为灰度 uu = mmreadgray('tree2.jpg') 限制较深的颜色;转换为二进制;删除200px区域以下的连接区域 vv = mmareaopen(mmbinary(mmthreshad(mmneg(uu),200)),20) 用90、180、135和45度的10px线段打开vv;将这些图像加在一起形成标记图像zz zz = mmaddm(mmaddm(mmaddm(mmopen(vv,mmseline(10,90))),mmopen(vv,mmseline(10,180))),mmopen(vv,mmseline(10,135))),mmopen(vv,mmseline(10,135))),mmopen(vv,mmseline(10,135))),mmopen(vv,mmseline(10,135))),mmopen(vv, mmseline(10,45))) 从标记图像zz重建vv中可见的肢体部分 aa = mminfrec(zz,vv) 在原始图片uu上方显示结果aa;合理地提取四肢 mmshow(uu,aa) 对于现在如何大致重建整个肢体的任何想法,我将不胜感激。(或改进上述步骤)。谢谢!

1
DCT与PCA之间的关系
我对图像和视频压缩中使用的2D 8x8 DCT具有基本的实现知识。在阅读有关主成分分析的同时,我可以看到很多相似之处,尽管PCA显然更通用。当我以前阅读过DCT时,总是将它与DFT结合使用。所以我的问题是,如何从PCA角度得出DCT?(即使挥手解释也足够了) 非常感谢

3
FFT时域平均值与频点平均值
我对生理数据进行了多次试验。我正在进行基于频率的分析,以分析某些特定频率下的功率(振幅)。是对多个相等长度的试验进行平均,然后对平均信号进行一次FFT,而不是针对每个试验计算FFT,然后对频点进行平均,是否相同?实际上,我发现情况并非如此。 具体来说,信号自然具有很强的1 / f分量,如果我计算每个单独试验的FFT,然后平均每个频点的幅度(实数部分),就会增强这一点。这两个相等吗?有正确的做事方法吗?还是应该在什么原则条件下在时域平均与频点平均之间进行选择?
12 fft 

4
关于工业机器视觉系统中软件与机械/光学之间的权衡取舍,有什么参考吗?
我用一个简化的例子来解释我的问题。 我可以设计一个工业视觉系统来自动检查具有以下主要要求的物品: 一件好作品的图像必须为黑色背景,并且该作品必须为灰色。 缺陷必须在灰色区域内显示为白色区域。 这些要求大大简化了系统的软件部分:为了将某项归类为缺陷,算法仅对白色像素进行计数。 但是,为了获得这种简单的算法,我必须非常擅长设计系统的照明/光学/机械部分,并且该部分的成本可能会高于软件。 也许以前我读过这样的句子:“在机制上尽可能多,而在软件上尽可能少”。在我看来,这是在1990年代(或1980年代)的一本关于实用机器视觉的书中,但我找不到适当的引用/参考。

2
根据检测到的线计算单应性
我知道您可以使用“完美模型”和图像点之间的对应点来计算图像到相机平面的单应性。 我正在为足球场/场地做这件事,并且使用边缘检测来找到球场中的白线。 但是相机不会(总是)覆盖所有的俯仰,所以我看不到所有的角...而且我只有角是模型中100%的已知点(没有其他可分辨的点)。 因此,问题在于,除非这条线与另一条线相交并形成一个角,否则我只会知道该线的图像点,而不是模型中相应的“完美/真实世界”坐标。 我有什么方法可以使用检测到的线来计算单应性,甚至只是一组候选单应性,即使检测到的线彼此不相交并创建拐角? 示例图像,显示了俯仰,我们的视野以及可以知道相应的真实世界/模型坐标(绿色圆圈)的俯仰点,以及2条直线的示例,由于在我们的视野中,它们可能完全没有用,我不知道他们在音高对应的真实世界/模型中确切在哪一点开始或停止: 红线是我要使用的线的示例,但我不知道它们的真实坐标,并且很难估计它们,因为根据相机的姿势,对应点可能在“任何地方”。

1
使用SIFT功能和SVM进行图像分类
我希望有人可以解释如何使用词袋模型通过SIFT / SURF / ORB功能和支持向量机进行图像分类? 目前,我可以计算图像的SIFT特征向量,并且已经实现了SVM,但是发现很难理解有关如何使用词袋模型来“向量量化” SIFT特征并建立直方图的文献。固定大小的向量,可用于训练和测试SVM。 欢迎访问有关该主题的教程或文献的任何链接,谢谢

4
比例和旋转不变模板匹配
我正在寻找缩放和旋转不变模板匹配的方法。我已经尝试过一些,但是对于我的示例来说,它们并没有那么好用,或者永远无法执行。SIFT和SURF特征检测完全失败。我还尝试实现Log-Polar模板匹配功能,但我从未完成(不知道确切的操作方法)。 在这些文章中(第一个是德语) http://cvpr.uni-muenster.de/teaching/ss08/seminarSS08/downloads/Wentker-Vortrag.pdf http://www.jprr.org/index.php/jprr/article/viewFile/355/148 我了解了该方法。绘制极坐标是可行的,但我不知道它是否正确。图片看起来像这样。 source_log_polar.png http://www.shareimages.com/images/pics/0/0/3/62394-pZSfl5WenZysnpyVnKg-source_log_polar.png 在用OpenCV的模板匹配功能匹配这两个图像后,我得到了结果 现在我不继续了。 我的模板始终是构建蓝图和蓝图本身的简单符号。这些符号的大小和方向可以不同。 例如我的简单蓝图: 还有我的模板 在此示例中,只有一个模板,但是在蓝图中,它应该找到所有出现的位置,甚至包括具有大小和/或方向的出现位置。 有谁有办法解决这个问题? 编辑: 对Andrey的方法的补充。径向轮廓的距离捕获算法。(使用EmguCV) private float[] getRadialProfile( Image<Gray, byte> image, Point center, int resolution ) { var roi = image.ROI; if ( !roi.Contains( center ) ) { return null; } var steps = resolution; var degreeSteps = 360 …

3
提高图像分辨率
我知道有些示波器(DSA8300)会以几百个kS / s的速率重复采样以重建几GHz信号。我想知道这是否可以扩展到2D信号(照片)。我是否可以使用商用16MP相机拍摄一系列(例如4张)静态图片以最终重建32MP图像?这样做会删除每个图像中的别名吗? 如果从单个图像尝试这种操作,则由于没有引入新的信息,因此显然不起作用。如果所拍摄的所有图片都完全相同,那么我是否仍会拥有一张图像呢?那么变化是必不可少的吗?CCD / CMOS噪声足够使这种事情起作用吗? 这种技术或算法有名称吗?我应该找什么?

2
向信号中添加奇/偶谐波?
如何将奇数或偶数谐波添加到浮点信号? 我是否必须使用tanh或sin? 我正在尝试实现一些非常简单的失真效果,但是我很难找到确切的参考。我想要的是类似于文化秃鹰所做的事情,在其五极管和三极管设置中添加了奇数和偶数谐波。浮点值是样本流中的单个样本。

4
您可以在不增加窗口大小的情况下提高FFT的频率分辨率吗?
我想使用STFT进行多音高分析。我意识到检测信号中存在的部分仅仅是开始。我还是有问题。 假设我已经以“ CD”频率采样了信号44100Hz。在1024样本窗口中,我得到的频点分辨率为22500Hz/512=43Hz。这仅足以识别诸如C5 = 523.251Hz和的高钢琴音符 C#5 = 554.365。 我曾经认为这1024是一个很大的窗口。但是也许不是,通常使用较大的窗口来检测局部图像吗? 除了增加窗口大小之外,是否可以使用其他方法来提高频率分辨率,这会使时间分辨率恶化?我想到了两种方法: 方法1: 使用带通滤波器将信号划分为多个频带(例如0-11.25Hz和11.25-22.5Hz)。 对较高的频段进行下采样,以使原来的高频现在变为低频(第二个频段也是如此11.25-22.5Hz -> 0Hz-22.5Hz)-不确定是否可行。 Concat生成的带有已调整标签的垃圾箱集。 方法2: 使用限制不断增加的一系列低通滤波器。 在增加的频率范围上执行FFT。 对于每个频率,请使用最佳分辨率(来自包含该频率的第一个FFT的仓)。 这将使低频具有更好的分辨率,但是我认为这是可以的,因为对于更高的音符,频率差异会更大。 对于这个问题,我将不胜感激。 我也在这里阅读: 窗口大小,采样率如何影响FFT基音估计? 关于改善峰提取结果的方法。我认为会尝试使用它。
12 filters  fft  pitch  stft 

3
各种上采样方案的相对优点是什么?
我最近遇到了一个DSP系统,该系统通过零填充进行了一些内部上采样。期待零阶保持,我很惊讶地发现直流信号没有产生直流输出。输出中还存在许多内部(较低)采样频率的谐波。 这引出我的问题:通常使用哪种上采样技术,它们的相对优点是什么? 为什么要选择零填充,零阶保持或一阶保持,还有哪些其他可用技术? 一些说明: 该系统是实时的,因此上采样方案必须是因果的。 上采样器后跟一个也可以指定的抗混叠滤波器。
12 resampling 

4
在图像中找到斑马纹图案(从照片中检测结构光条纹中心线)
我在一个项目上工作,该项目将条纹投射在主体上,并拍摄了照片。任务是找到条纹的中心线,这些中心线在数学上代表条纹平面与对象表面之间的3D交点曲线。 该照片是PNG(RGB),以前的尝试是使用灰度,然后使用差异阈值来获得黑白的“斑马纹”摄影,从中可以轻松找到每个条纹的每个像素列的中点。问题在于,通过阈值化并通过获取离散像素列的平均高度,我们会遇到一些精度损失和量化问题,这是根本不希望的。 通过查看图像,我的印象是,如果通过某种统计扫描方法直接从非阈值图像(RGB或灰度)中检测到中心线,则中心线可能会更连续(更多点)和更平滑(未量化) (无论是泛洪/迭代卷积)。 下面是一个实际的示例图像: 任何建议将不胜感激!

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.