Tag: image processing

如何将模糊应用到UIView?

现在我正在构build一个需要模糊整个UIView的iPhone应用程序。 我怎样才能做到这一点? 我已经看到了这个框架 ,但我不认为这适用于UIView。 有一种替代方法来模糊UIView? 更新 :检查下面我的更新的答案,增加与iOS 7和iOS 8的出现更多的相关性。

我怎样才能提高我的爪子检测?

在我之前关于在每个爪子里find脚趾的问题之后,我开始加载其他的测量,看看它会如何保持。 不幸的是,我很快就遇到了一个前面提到的问题:认出爪子。 你看,我的概念certificate基本上花了每个传感器的最大压力随着时间的推移,并开始寻找每一行的总和,直到它find了!= 0.0。 然后它对列进行相同的操作,一旦发现多于2行的数据再次为零。 它将最小和最大的行和列值存储到某个索引。 从图中可以看出,在大多数情况下,这种方法效果很好。 然而,这种方法有很多缺点(除非是非常原始的): 人类可以有“空心的脚”,这意味着足迹本身有几个空行。 因为我担心这可能会发生在(大)狗,所以在切断爪子之前,我至less要等2,3或3个空行。 如果另一个联系人在达到多个空行之前在另一个联系人中创build联系人,则会产生问题,从而扩大该区域。 我想我可以比较列,看看他们是否超过一定的价值,他们必须是单独的爪子。 当狗非常小或步伐较快时,问题会变得更糟。 会发生什么事情呢,前爪的脚趾还在接触,而后爪的脚趾刚刚开始与前爪在同一区域内接触! 用我的简单的脚本,它将不能够分裂这两个,因为它将不得不确定该区域哪些帧属于哪个爪子,而目前我只需要看所有帧的最大值。 哪里开始出错的例子: 所以现在我正在寻找一个更好的方式来识别和分离爪子 (之后我会去决定它是哪个爪子的问题!)。 更新: 我一直在修补,以实现乔的(真棒!)答案,但我很难从我的文件中提取实际的爪子数据。 当应用于最大压力图像时,coded_pa​​ws显示了所有不同的爪子(参见上文)。 但是,解决scheme遍历每一帧(以分离重叠的爪子),并设置四个矩形属性,如坐标或高度/宽度。 我无法弄清楚如何把这些属性存储在一些可以应用于测量数据的variables中。 因为我需要知道每一个爪子,它的位置是在哪个框架中,并且将它连接到哪个爪子(前/后,左/右)。 那么如何使用Rectangles属性为每个爪子提取这些值呢? 我有我在我的公共Dropbox文件夹中的问题设置中使用的测量( 示例1 , 示例2 , 示例3 )。 对于任何感兴趣的人,我还设置了一个博客 ,让你保持最新:-)

图像到ASCII艺术转换

序幕 这个问题不时在这里popup来,但通常是因为写得不好而被删除。 我看到很多这样的问题,然后在请求附加信息时,从OP (通常的低代表)沉默。 有时候,如果input对我来说足够好,我决定回答一个答案,通常在活动时每天得到一些赞成票,但几个星期后问题就会被删除/删除,一切从头开始。 所以我决定写这个问答,所以我可以直接参考这些问题,而不必一遍又一遍地重写答案。 另一个原因是这个META线程针对我,所以如果你有额外的input随时发表评论。 题 如何使用C ++将位图图像转换为ASCII艺术 ? 一些限制: 灰度图像 使用单间隔字体 保持简单(不要为初学者级程序员使用太高级的东西) 这是一个相关的Wiki页面ASCII艺术 (感谢@RogerRowland)

为什么fontmagick的字体列表是空的?

我正在尝试使用ImageMagick将一些文本添加到图像。 但是我发现它总是说我指定的字体不存在。 仔细阅读手册后,我注意到我可以使用convert -list font输出所有可用的字体,但尝试后我发现可用字体列表是空的。 这是我得到的: shell$ convert -list font shell$ 感谢您的任何提示。

从编码的图像和video中提取DCT系数

有没有一种方法可以很容易地从编码图像和video中提取DCT系数(和量化参数)? 任何解码器软件必须使用它们来解码块DCT编码的图像和video。 所以我很确定解码器知道他们是什么。 有没有办法让他们知道谁在使用解码器? 我正在实施直接在DCT域中工作的一些video质量评估algorithm。 目前,我的大部分代码都使用OpenCV,如果有人知道使用该框架的解决scheme,那将是非常棒的。 我不介意使用其他库(可能是libjpeg,但似乎只用于静止图像),但我主要关心的是做尽可能less的格式特定的工作(我不想重新发明轮子和写我自己的解码器)。 我希望能够打开OpenCV可以打开的任何video/图像(H.264,MPEG,JPEG等),如果是块DCT编码,则可以获得DCT系数。 在最坏的情况下,我知道我可以编写我自己的块DCT代码,通过它运行解压缩的帧/图像,然后我会回到DCT域。 这不是一个优雅的解决scheme,我希望我能做得更好。 目前,我使用相当常见的OpenCV样板打开图像: IplImage *image = cvLoadImage(filename); // Run quality assessment metric 我用于video的代码同样微不足道: CvCapture *capture = cvCaptureFromAVI(filename); while (cvGrabFrame(capture)) { IplImage *frame = cvRetrieveFrame(capture); // Run quality assessment metric on frame } cvReleaseCapture(&capture); 在这两种情况下,我得到一个BGR格式的3通道IplImage 。 有什么办法可以得到DCT系数吗?

在Android的onPreviewFrame期间转换YUV-> RGB(image processing) – > YUV?

我使用SurfaceView捕获图像并获取Yuv Raw预览数据public void onPreviewFrame4(byte [] data,Camera camera) 我必须在onPreviewFrame中执行一些图像预处理,因此我需要将Yuv预览数据转换为RGB数据,而不是图像预处理,然后返回到Yuv数据。 我已经使用这两个函数来编码和解码Yuv数据到RGB如下: public void onPreviewFrame(byte[] data, Camera camera) { Point cameraResolution = configManager.getCameraResolution(); if (data != null) { Log.i("DEBUG", "data Not Null"); // Preprocessing Log.i("DEBUG", "Try For Image Processing"); Camera.Parameters mParameters = camera.getParameters(); Size mSize = mParameters.getPreviewSize(); int mWidth = mSize.width; int mHeight = mSize.height; int[] mIntArray = […]

计算resize的图像大小比例

我有一个定义的固定宽度和高度来调整图像的大小。 但是,我有这个问题,因为图像可以有任何一种尺寸比例(它可以是垂直或水平 )。 在这种情况下,固定的宽度和高度会导致问题。 我想以更聪明的方式计算宽度和高度 。 例如让我说我已经定义宽度1024px和高度768px 。 我想调整垂直图像(高度1100px,宽度200px) 。 所以在我的情况下,它将调整到固定大小(1024×768) ,所以宽度将从100px增加到768px ,这将是非常丑陋的。 同样,如果图片的高度小于768px ,则会将高度增加到768px 。 因此,我想根据原始图像大小比例计算新的图像大小。 比方说,如果上面的示例图像应该调整到最大高度768px ,但那么宽度呢? 它已经小于我的“最大宽度”,这是200px ,那么宽度应该保持不变? 还是应该进一步减less? 同样,如果图片的高度为200px,宽度为1100px 。 所以宽度应该减less到1024px ,但高度呢? 第三个问题是,假设高度和宽度都大于最大高度和最大宽度,比如宽度:1100px,高度:4000px 。 现在既然宽度和高度都大于最大宽度和最大高度,但是图像是垂直的,就会使其水平。 那么如何在这种情况下检查是否应根据最大高度或根据最大宽度来调整图像? 我感谢任何帮助。

代表和解决迷宫的形象

代表和解决一个迷宫的最佳方式是什么? 给出一个JPEG图像(如上所示),读入它的最佳方式是什么,将其parsing为一些数据结构并解决迷宫问题? 我的第一本能是逐像素地读取图像,并将其存储在布尔值的列表(数组)中:对于白色像素为True ,对于非白色像素为False (可以丢弃颜色)。 这个方法的问题是,图像可能不是“像素完美”。 我只是说,如果在墙上的某个地方有一个白色像素,它可能会产生一个无意的path。 另一种方法(经过一番思考后find的)是将图像转换为SVG文件 – 这是在canvas上绘制的path列表。 这样,path可以被读入相同types的列表(布尔值),其中True表示path或墙壁, False表示可行驶的空间。 如果转换不是100%准确的,并且没有完全连接所有的墙壁,则会产生这种方法的问题,造成空白。 另外一个转换为SVG的问题是线条不是“完美”的直线。 这导致path为三次贝塞尔曲线。 对于由整数索引的布尔值列表(数组),曲线不会轻易转移,曲线上的所有点将不得不计算,但与列表索引不完全匹配。 我认为,虽然其中一种方法可能有效(尽pipe可能不是),但鉴于这样一个大的形象,它们可能是效率低下的,而且存在一个更好的方法。 这是如何最好(最有效和/或最简单的)? 还有最好的方法吗? 然后是解决迷宫。 如果我使用前两种方法中的任何一种,我将基本上以matrix结束。 根据这个答案 ,代表一个迷宫的一个好方法是使用一棵树,而解决这个问题的一个好方法是使用A *algorithm 。 如何从图像中创build一棵树? 有任何想法吗? TL; DR 最好的parsing方法? 进入什么数据结构? 上述结构如何帮助/阻碍解决? UPDATE 我已经试过我的手在实现@Mikhail使用numpy编写的Python,就像@Thomas推荐的一样。 我觉得这个algorithm是正确的,但是这个algorithm并没有像预期的那样工作。 (代码如下)PNG库是PyPNG 。 import png, numpy, Queue, operator, itertools def is_white(coord, image): """ Returns whether (x, y) is approx. a white […]

使用PHP将jpg图像转换为gif,png和bmp格式

如何使用PHP将单个jpg图像转换为3种不同的图像格式gif,png和bmp? 请帮助

使用OpenCV和机器学习简单的对象检测

我必须使用OpenCV编码一个对象检测器(在这种情况下,一个球)。 问题是,谷歌上的每一个search都会返回一个带有FACE DETECTION的东西。 所以我需要帮助从哪里开始,使用什么等。 一些信息: 球没有固定的颜色,它可能是白色的,但可能会改变。 我必须使用机器学习,不必是一个复杂和可靠的,build议是KNN(这是更简单和更容易)。 在我所有的search之后,我发现计算样本的球状图像的直方图并将其教给ML可能是有用的,但是我的主要关注点是球尺寸可以并且将会改变(距离相机越来越近)和我不知道要传递给ML来为我分类,我的意思是..我不能(或者我可以吗?)只是testing每个可能的大小的图像的每个像素(从可以说,5×5到WxH ),并希望find一个积极的结果。 可能会有一个不统一的背景,比如人,球后面的布等等。 正如我所说,我必须使用MLalgorithm,这意味着没有哈尔或Violaalgorithm。 另外,我想使用轮廓在Canny的图像上寻找圆,只需要find一种方法将轮廓转换为一行数据来教KNN。 那么…build议? 提前致谢。 ;)