图像缩略图

粒子图像测速(PIV)工具与GUI

版本2.40(9.82 MB)由 威廉·蒂里克
易于使用、基于GUI的工具,用于分析、验证、后处理、可视化和模拟(微型)PIV数据。http://pivlab.blogspot.com/
4.9
122个评级

574个下载

更新2021年2月8日

来自GitHub

查看版本历史记录

在GitHub上查看许可证

编者按:流行的文件2018年

该文件被选为MATLAB Central本周的挑选

PIVlab是一个时间分辨(微)粒子图像测速(PIV)软件,定期更新软件修复和新功能。它不仅可以计算颗粒图像对内的速度分布,还可以导出、显示和导出流型的多个参数。用户友好的图形用户界面(GUI)使PIV分析和数据后处理快速和高效。

该工具的视频说明:
https://www.youtube.com/watch?v=Sp3Ounq07Qc

示例分析和视频可在PIVlab网站上找到:
http://PIVlab.blogspot.com

请向您的PIVlab论坛的问题:
http://pivlab.blogspot.de/p/forum.html

如何安装:
下载文件“PIVlab.mltbx”,并在您的计算机上运行它。它将自动在Matlab安装中添加PIVlab工具箱和应用程序。或者(我的首选方法,但也是唯一一种方法,如果您的Matlab版本早于R2015b[8.6]),从GitHub下载zip文件,方法如下:https://github.com/Shrediquette/PIVlab/releases,单击最新版本的“源代码(zip)”,并将内容解压缩到Matlab工作目录中的新文件夹中。然后运行PIVlab_GUI.m。

主要特点:
*完全基于GUI的PIV工具
*多通道,多网格窗口变形技术
*集成相关,例如微型piv
*导入bmp/tiff/jpeg图像对/系列
*图像测序样式A-B,C-d,...或A-B,B-C,...
*单个图像掩蔽和感兴趣区域(ROI)选择
*图像预处理(对比度增强,高通,强度覆盖)
*两种不同的亚像素估计器
*多个向量验证方法
*震级/涡度/散度/切变/。。。
*数据平滑,向量场高通
*多彩色图
*流线
*广泛的数据提取工具/通过多边形线/圆/面积进行集成
*统计(直方图、散点图、平均值和标准差)
*精确颗粒图像对生成与用户定义的参数和几个流动模拟(合成PIV图像生成器)
*数据导出(Matlab、ASCII、电影文件、图像、Paraview、Tecplot…)
*主要功能可通过命令行脚本

我们要感谢Uri Shavit, Roi Gurka和Alex Liberzon分享了他们的3点高斯亚像素估计代码。感谢Nima Bigdely Shamlo允许我包含LIC功能。感谢Raffel等人写的书“粒子图像测速,实用指南”,这是一个非常好的帮助。

引用作为

威廉蒂利克(2021)。粒子图像测速(PIV)工具与GUI(https://github.com/Shrediquette/PIVlab/releases/tag/2.40),GitHub。恢复.

蒂里克、威廉和艾兹·J·斯塔姆胡伊斯。“PIVlab–在MATLAB中实现用户友好、价格合理和精确的数字粒子图像测速”,《开放研究软件杂志》,第2卷,Ubiquity出版社,有限公司,2014年10月,doi:10.5334/jors.bl。

查看更多的风格

Thielicke,威廉。鸟类拍动飞行:分析与应用。博士论文,格罗宁根国立大学,2014,doi:10.13140/RG.2.2.18656.94728。

评论和评级(257)

威廉·蒂里克

Hi Shubham saini,在贡献中包含了许多PIV实验图像。

舒巴姆赛尼

如果有人可以分享一些PIV试验图像(仅10)将工作,我想学这个软件。

大卫道尔顿

真的很有用,谢谢你的工作!!

英华

非常好的软件!

Arashdeep辛格

Guanjie

太好了!

弗雷德里克·莫西

太好了,谢谢!

李昕

优秀作品

胡晓义

大器 程

您好,William博士,您能在输出结果时分别显示矢量和云图像吗,
1.在原始图像上绘制矢量图(现在可以完成);
2.绘制在白色背景矢量地图;
3.仅显示彩色图像云,而不是矢量。

deniel WECK

非常好的信息。谢谢与我们分享。https://openswffiles.com/

詹姆斯·卡利

谢谢你的分享。一款非常值得推荐的软件。https://filesextension.com

威廉·蒂里克

喜山塔努,居然没有更新被做,这个网站上的所有变化都只是迁移到github上。你看到这消息时,每年只有在这个特定的日子......这是前一段时间实施:)

山塔努1985

我下载了最新的更新,现在当我发布PIVlab时,上面写着“这是10月15日,从今天起我就爱上了Lena!”。这是最近唯一的更新吗?:)

gianluca padula

彭博

你好威廉,非常强大的软件!非常感谢。
我有个请求。每一幅画面的位移数据可以被添加到这个软件?如果是这样,这将是伟大的!

幸禹皇

嗨!威廉,这是一个非常好的软件!
我有一个疑问,你能帮我澄清一下吗?
我计划将“result_conv”中的平面转换为归一化相关系数平面,并计算每个峰值的归一化相关系数。您能告诉我如何从参数“result_conv”或脚本“piv_FFTmulti”中的其他参数计算互相关系数吗?
非常感谢你!

本章

非常感谢。

阿内克·萨尔曼

您好!William,这是图像处理的一个很好的代表。我想知道我能用这个程序通过图像处理计算两种不同液体的混合指数吗?
如果可能的话,那么你可以告诉我,我该怎么办呢?

TIA.

伊萨翁德

Bosong林

SDAS Gaur.

好东西,谢谢分享。
https://openjsonfiles.com/

健太郎Hoeger

优秀的程序和良好的文档和教程。

萨奇塔提瓦里酒店

你好,威廉。我目前正在尝试使用PIVlab进行脑组织置换。如果变形后的粒子不仅发生位移,而且形状也发生变形,则此程序是否有效。还有,简单应变率背后的物理意义是什么。如果你让我知道它用什么公式来计算,那就太棒了。我们也可以从这个应用程序中获取地图。
谢谢你。

奥利弗·皮尔斯

伟大的项目!一直在我的研究中广泛使用它。当建立我的模型时,我确实遇到了一个关于粒子图像密度的问题。如何确定屏幕上的粒子数量与激光薄片厚度的关系?我计算了每个询问窗口的PID为15像素所需的粒子数量,但PIV图像中的粒子数量(逻辑上)取决于激光薄片的厚度。是否有一种方法可以确定给定激光薄片厚度和粒子数的被照亮粒子的数量?

Divna文件

非常棒的信息,我感谢你的工作。
http://openfiles.bravesites.com/

阿文什·夏尔马

阿文什·夏尔马

太好了,我正在寻找这些信息。谢谢与我们分享。
https://opencrdownloadfile.co

泽宇

嗨,威廉
是否可以将变量添加到显示:位移(修改数据→ 显示参数)
非常感谢。

Luisa di Monaco.

山塔努1985

您好,感谢您开发了这么好的工具!如果有人能回答我的问题,那将非常好:
在后处理中,我使用了“插值缺失数据”选项,该选项在缺失数据的空间中填充了一些橙色向量。是否有可能找出这些插值向量在每帧中的百分比?

泽宇

很抱歉!没问题,这是我的错!
在matlab2014b中使用版本2.3.1时出现错误,颜色贴图(在修改打印外观中)无法显示,因此建议使用更高版本的Matlab。
当2.3.1版本在 matlab2014b中工作时出现了一个错误,颜色指示条(在 修改打印外观中)不能显示,建议使用更高版本的 Matlab

泽宇

在matlab2014b中使用版本2.3.1时出现错误,颜色贴图(在修改打印外观中)无法显示,因此建议使用更高版本的Matlab。
当2.3.1版本在 matlab2014b中工作时出现了一个错误,颜色指示条(在 修改打印外观中)不能显示,建议使用更高版本的 Matlab

黄建清

因特萨夫·阿什拉夫

嗨,威廉

谢谢你的软件。它对我的研究很有用。但是我无法保存每一帧的matfile。它只保存了一个名为PIVlab的帧

希瓦尼·贾里瓦拉

何琼兰

有用!

摩根斯坦地区

你好,威廉。感谢您的快速回复!我还有一个问题。是否有可能从PIVlab中提取向量的数据,以便绘制它们的极点(即极点到一个平面)?我看到有一个“矢量方向(度数)”的热图——有没有可能以数字格式提取出这些数据?

南多克斯林

令人惊叹的

乔塔姆·辛格

最好的工具是PIV Matlab。
谢谢威廉。
当做https://openapkfile.co/

VIVEK DIWAKAR

有立体PIV的供应吗

威廉·蒂里克

嗨,我不完全明白这个问题,但是皮夫拉布会给你关于审讯区的建议。请使用论坛提问。

希瓦尼·贾里瓦拉

你好,威廉,

是否有一种方法,我可以创建审问点大小的网格,看看粒子的位移在框架集小于1/4的点大小?

阿卜杜勒MOUMEN

迈克尔·基林

威廉·蒂里克

谢谢天使,我会检查了这一点。

天使帕拉西奥斯

你好。

我一直在使用PIVlab有一段时间了,但我想指出的是,在Windows无法调用共享的网络目录,例如\\ MySharedDirectory \子\目录本地化图像。有没有修复这个问题吗?
我知道Linux中没有这样的问题,因为共享位置被安装到本地目录,但即使我映射共享文件夹,我也无法在Windows中看到解决方案。

威廉·蒂里克

嗨,瑞金,我一定要试试!如果您使用Pivlab论坛提问,我也可以尝试帮助您进行分析。

摩根斯坦地区

您好。您能告诉我PIVlab是否可以处理正马赛克,或者只处理单个图像吗?我们通常会像典型的SfM摄影测量模型一样,以固定的间隔捕获横向无人机图像,然后从中导出正马赛克。我们在同一场地有多个正马赛克时代——这就是我们所要做的ld想为开发运动矢量。PIVlab工具可以处理如此大的数据集吗?如果可以,我是否应该知道任何特定的摄像机参数(例如-70度万向节角度与最低点;某些高度限制;在不同时期保持一致的地面采样距离;等等)。如果它只能处理单个图像,我假设每次都需要从相同的位置拍摄图像,以便像素匹配工作(即相同的角度、距离等)?感谢您的帮助,我很高兴尝试此工具!

威廉·蒂里克

如果您没有校准,则U和V直接表示像素中的x和y位移。

你好

我使用PIVLab作为一个背景导向的纹影应用程序。您能否提供一些建议,将u和v矢量分量转换成x和y中的质点位移?

威廉·蒂里克

您好,请使用论坛提问,并请提供您的问题的更多细节(您想做什么?)

哈立德·埃尔塞菲

你好
我使用pivlab 2.1来分析不同的情况问题是x数组每次从不同的位置x{1,1}(1,1)开始,我比较沿着x轴的特定位置,所以我应该使用x{1,1}(1,1)作为我的参考点,并从该参考点减去另一个点吗?

贝斯帕洛夫

威廉·蒂里克

@丹尼尔韦克:我不明白这个问题,对不起。。。

deniel WECK

我有同样的错误与1.43也。
我想这个错误是由于我需要弄清楚的其他原因造成的。
关闭文件时出错..。。文件可能已损坏。
在这里:https://opendllfiles.com/open-dat-file/

高科技人

萧王

Shweta纳拉扬

在本程序中如何计算应变率和剪切率?

Shweta纳拉扬

Tongxu

腾达钱

威廉·蒂里克

嗨,这是不可能的,因为这个功能是实验性的,我想防止人们意外地使用高通。。。但您可以自己修改数据:只需使用imfilter等低通图像,然后将其从原始数据中减去即可。

吴老虎

你好,真是令人印象深刻的工具!我想知道选择高通向量场后如何保存向量数据?

尼科洛·卡沃夫斯基

您好,我想知道是否可以测量粒子的位移。我还想知道结果的准确性是否可以改变,例如,结果可以读取到0.001的系数。

威廉·蒂里克

是的,在文件选择对话框中,您可以选择排序样式。

马克·安托万·布罗索

非常好的工具!
只有一个问题:是否可以选择一个参数,使帧为[Image001-Image002]、[Image002-Image003]等,而不是[Image001-Image002]、[Image003-Image004]等?
干杯

威廉·蒂里克

你好,特里斯坦,感谢你的捐赠和评论!
1:已经有人要求了,我去看看。当我使用PIV时,Tif堆栈没有被使用PIV的人使用。这些堆栈从何而来?它是一个特定的软件/摄像机吗?
2:很难决定哪些是主要功能…我会检查添加另一个工具栏是否有意义。我也可以将其设置为可选,以便用户决定是否要查看它。
这在2.02版本中是可能的
4:如果您将设置保存为pivlab_settings_default,那么pivlab将从您的设置开始(至少我认为应该…)
干杯
威廉

特里斯坦Ursell

PS--我相信您一直都会收到建议,我知道进行更改总是需要付出很多努力,但我有一些建议,而且我在软件构建方面相当有经验:

1) 使其能够在TIF堆栈中读取(与充满单个图像的繁琐文件夹相反)
2)将主要操作(加载图片、设置遮罩、预处理和PIV设置、分析)作为前台按钮,不埋没在菜单结构中
3) 绘制遮罩后,可以选择将该遮罩保存到mat文件,然后可以在后续会话中重新加载该文件
4) 拥有可以保存的首选项文件,以便可以根据需要设置程序,半永久保存该状态,然后*不*必须更改设置或加载每个会话的设置文件

谢谢!

特里斯坦Ursell

最好的工具PIV + matlab(和引导,它是免费的!)谢谢威廉。

威廉甜

dlut-gclx

安德鲁·波洛克

威廉·蒂里克

omid线虫雄性

你好,威廉
谢谢你的最新更新。请问这次更新的功能是什么?
最好的

威廉·蒂里克

嗨,格雷厄姆,
这是这个网站的错。。。在我上传新版本后,构建工具箱通常需要1-2天。只要等一天,再试一次。

格雷厄姆·贝鲁兹

由于新的更新程序将不会添加到我的文档中。我使用学校电脑,每天都要下载应用程序。

格雷厄姆·贝鲁兹

omid线虫雄性

你好。太棒了。这很有帮助。
但我有两个建议:
1.如果可以在Tecplot中导出所有的PIV实验结果帧作为时间解析的解决方案。目前,我将把一个接一个的ASCI文本放到Tecplot。
2.如果可以将湍流强度和其他湍流特性添加到Tecplot导出。

我将感谢你未来的更新。

威廉·蒂里克

Birkan你能在PIVlab论坛上提供更多的信息吗?可能包括重现错误的说明?
我刚刚完成了另一个主要的更新,也许我可以在发布之前添加一个补丁。

H. Birkan.

在1.43中也遇到了同样的错误,我想这个错误是由于我需要弄清楚的其他原因造成的

使用save时出错
..文件可能已损坏
//www.tianjin-qmedu.com/matlabcentral/answers/18098-error-using-save-error-closing-file

H. Birkan.

在1.43版本之后,我开始在保存会话时遇到以下错误:
使用save时出错
..文件可能已损坏
//www.tianjin-qmedu.com/matlabcentral/answers/18098-error-using-save-error-closing-file

所以我已经开始使用旧版,v1.43没有这个问题

棕褐色的

斯特凡Grandl

林启文

菲利普•海

嘿威廉,
是否有可能使用软件分析“最大”移动点(最高速度的时间)?

我有大约1000张剪切实验的镜面图像,需要计算出我们正在处理的金属箔撕裂的时刻。

非常感谢。
您的软件看起来令人惊讶。
如果它能帮助我的话,我肯定会捐赠一些东西。。。

愿一切都好!
菲利普

neetu女子

我使用旧版本的Matlab的2009年的。
如何在系统中安装“PIVlab.mlappinstall”?

四国龙

刘慧芳

您好,我想问您一个问题,我如何通过PIVlab接收速度数据,谢谢

J.V

远岩上官

谢谢你写这个工具,我用它来分析我的斑点图像,但是效果很差,我想,也许我需要修复它。

威廉·蒂里克

请大家在PIVlab论坛上提问!

Ming-Ze花王

嗨,大家好,
我可以问一个关于如何加载图像的问题吗?
当我想在PIVlab上加载图像(tif格式)时,我遇到了以下错误消息。
希望有人能帮助我!!!
非常感谢。
错误使用图像
图像CData必须是m-by-n-by-3或m-by-n矩阵。

PIVlab_GUI>sliderdisp中的错误(第387行)
图像(currentimage, 'parent',gca, 'cdatamapping', 'scaled');

PIVlab_GUI>loadimgsbutton_回调中出错(第891行)
sliderdisp%在滑块移动时显示原始图像

gui_mainfcn中的错误(第95行)
feval(varargin{:});

PIVlab_GUI中的错误(第52行)
gui_mainfcn(gui_state,varargin {:});

错误
matlab.graphics.internal.figfile.figfile/read>@(hObject,eventdata)PIVlab_GUI('loadimgsbutton_Callback',hObject,eventdata,guidata(hObject))
计算UIControl回调时出错

Olja Barbir.

你好可爱的人!
我有个小问题,非常感谢你的帮助。
我已经分析了一系列的帧(压舱物粒子在特定频率下的运动),并且很想得到我的粒子(或帧)的平均速度。所以-第一个想法-使用均值向量!这就是我的问题开始的地方。
所有分析帧中的速度显着(几乎x10²)高于我平均矢量帧中所示的速度。有没有人有想法可能出错了什么?

韩东勋

我能有问题吗?
如何使我的视频适用于PIV?示例图像是二进制的,看起来需要一些步骤进行分析。
我正在分析干衣机中衣服的运动轨迹,而原始视频帧不适用于PIVlab_GUI.m
求你了,我请求你的帮助。。。

李建林

威廉·蒂里克

哦,Pivlab的Matlab网站现在直接显示视频......这很好,谢谢Mathworks!

星炮所

卡拉巴宝莉

我似乎不能在2017b版本的Matlab上正确安装这个。的帮助!

Takemasa长谷川

阿什马丹

这与2017a版本兼容吗?

我们周

Chun-Sheng王

亲爱的各位,
我在FileExchange中提供了一个并行版本的PIVlab。
//www.tianjin-qmedu.com/matlabcentral/fileexchange/63358-parapivlab--pivlab-in-parallel

达涅利·维戈洛

Pooja苏雷什

稠密的

它太好了,我想问一下如何使用PIV工具箱,有没有教程?

斯雷坎特·马达万

陈灿培

anchodii

你能跳过1多个图片吗?
例如,我想关联图像A-D、B-E、C-F等。。。

阮平

VO QUOC

紫薇徐

曼达巴德夫

加载图片的数量有限制吗?如果是,我能增加吗?
我一直试图加载15000张图像,但图像加载程序仅加载10000张图像。

哈罗德·法辛格

它与MatlabR2016B兼容吗?

Aswin来自

费哈特卡拉卡斯

胡安·卡米洛珊瑚

Aswin来自

问候语,
我写这封信的目的是想知道是否有可能使用matlab中的readimx包读取im7(LaVision Davis)图像,并将其与此代码一起使用?如果有可能的话,这将非常有帮助

马克D。

漂亮的工具!
谢谢你让我的硕士论文(再次)很棒

李纳斯舒马赫

PIVlab_GUI的第155行中有一个多余的空格,它似乎阻止在linux(但不是mac)上正确读取默认设置。

LEO黄

我怎样才能下载这个?

沙哈尔·格罗斯伯德

爱青2016

奥利弗·艾瑟曼

德尔菲娜杜兰

切内

贾瓦德

首先,感谢您编写和开发此工具!我遮住了一些让我感觉不舒服的地方。当我对向量场进行平滑或插值时,这些NaN会被替换为一些我无法将它们与我感兴趣的区域区分开来的数字。另一方面,如果我不使用插值,在原始区域中还有一些其他的NAN。我想知道是否有任何方法可以使用插值或平滑来排除遮罩区域,或者我做错了什么?!

Bi Dianfang

尼古拉斯·卡斯特罗

请,提供产生一个用户定义的询问窗口的互相关的地图的功能。

马丁·泰克

索菲罗马

威廉·蒂里克

最新版本在处理时速度快10到30倍。有关详细信息,请参阅博客!

梅洛迪·海瑟薇

丽贝卡·麦卡尔平

瑞安·贝克

杰米·穆林

威廉·蒂里克

最新版本(PIVlab 1.4beta)与R2014b(及以上和以下版本)兼容。本网站将很快更新为v1.4。在此之前,请下载一份副本@http://pivlab.blogspot.de.

威廉·蒂里克

如果您正在使用Matlab R2014b并考虑使用PIVlab,请查看以下帖子:
http://pivlab.blogspot.de/2015/01/matlab-r2014b-compatibility.html

威廉·蒂里克

亲爱的Aahdi,正如我在电子邮件中提到的,请使用论坛提问,并提供更多详细信息,例如图纸或示例。
论坛在这里:http://pivlab.blogspot.de/p/forum.html

阿迪·纳雷什

我在piv实验室有一个疑问,请让我澄清一下,如果我们想提及河流或任何渠道,校准中的参考距离是多少。

如何描述频率

阿迪·纳雷什

hi@willaim

我是通过脸书发给你的。“毫秒”的实际含义是什么,它是图像的捕捉时间或相机规格。我的相机拍8帧。我的邮箱号是ayyaure@gmail.com

谢谢

阿迪·纳雷什

hi@willaim

我是通过facebook发给你的。我的邮件id是ayyaure@gmail.com

谢谢

威廉·蒂里克

@Aadhi:那像你校准的声音可能是错的。你有没有注意到,你必须进入“毫米”和校准过程中“毫秒”的时间步长的距离?如果不解决您的问题,你可以给我一些示例图像。

阿迪·纳雷什

你好,威廉

在我的分析之后,这里的u速度是0.00025 m/s,但是当我在通道中手动操作时,我得到了大约0.205 m/s,在我的分析中,我使用了Canon EOS 7D相机。这里我得到的错误为1/1000,请给出任何一个确切的解释。

威廉·蒂里克

@Sidaard:我不知道你的“.dat”文件应该是什么格式的,但是你可以通过使用file->save->ASCII file->export all frames导出到单独的文本文件

西达尔

你好
我想知道如何为我所有的图像对获取单个矢量文件。

我尝试使用DPIV软件,但无法为每个图像对获取单独的.dat文件。我需要单独的矢量数据文件来计算雷诺应力。

任何有用的信息都将不胜感激。

谢谢

阿迪·纳雷什

你好

如何在图表和速度图被保存,我会打开ASCII表得到一个问题时,我是保存在任何位置

威廉·蒂里克

@阿迪·纳雷什:对不起,但我想如果你能先给出问题的细节,我会更有成效。

阿迪·纳雷什

纳雷什

你好

我有一个问题与交叉相关过程,请详细说明

威廉·蒂里克

@Dimitris:不,这是不可能的。PIVlab需要以特定方式组织数据的特定会话文件。我建议在PIVlab中重新做分析。

季米特里斯

你好
只要我已经有了速度场,是否可以只在后期处理中使用该工具?

威廉·蒂里克

@克里斯汀:在PIVlab GUI中不可能做到这一点(因为你想要减去的速度随时间而变化)。但您可以将结果导出到工作区,测量(取一个区域的平均值)速度并从结果中减去它。我想这是可以自动化的。

——>第100号评论,耶!让我们用这个来喝一瓶冰凉的咖啡吧!

克里斯汀

你好
我们的摄像机记录的一个期间振荡了一下。我们知道,图像的某些部分,同时记录是固定的。有没有设置这些“固定部分”为“零运动”的可能性?因此,分析最后给出了运动的粒子,而不必将相机的晃动真正的运动?
非常感谢你!
克里斯汀

亚当

@William:啊哈哈,感谢。这应该帮助我解决我的问题。

干杯!

威廉·蒂里克

@亚当:是的,y=向下的正方向,x=向右的正方向。0,0位于输入图像的左上角。ROI面板中给出了ROI的坐标(xstart、ystart、width、height)。

亚当

@那么y在向下方向是正的(就图像而言)?根据我自己的测试,我想是的,但我只是想检查一下。

另外,x=0 y=0是设置在图像的左上角还是感兴趣的区域?

Danke Schön!

威廉·蒂里克

@亚当:谢谢:-D。关于你的问题:它是左上角(这似乎是基于图像的数据的标准)。你只能通过从PIVlab导出数据,然后编写自定义脚本来改变这一点(不过应该没有那么困难)。

亚当

PIVlab是迄今为止我使用过的最好的PIV软件,甚至比那些想要大量资金购买“完整”版本的专有软件还要好!

我有一个问题:我正在尝试将笛卡尔坐标转换为极坐标。PIVlab将x=0 y=0放在哪里?在左下角?是否可以更改默认位置0,0?(因为这会使转换更容易。)

普拉蒂克

威廉·蒂里克

@petra:是的,可能有效。但是,您必须选择“A-B,B-C,...”排序样式,否则您可能会跳过每隔第二个图像。

佩特拉S

我在PIVlab_GUI中进行了更改。在第1631行将“filepath{i}”转换为“filepath{1}”。

我想这个就行了。

佩特拉S

谢谢你的快速回答。

我想对同一参考图像的许多图像进行互相关。

威廉·蒂里克

是的,选择你的参考图像作为“图像A”作为图像对。

佩特拉S

你好
是否可以对固定的参考图像进行互相关?

非常感谢,,
佩特拉

威廉·蒂里克

@Joe:你看到的是次间的矢量验证。这并没有真正影响你的最终结果。最终通过的所有向量是“真正的载体”,他们不是插值。

你需要在你想要追踪的媒介中添加纹理。作为一个经验法则:如果你的眼睛可以在图像中看到一个运动,那么PIVlab也可以做一个相互关联。

@爱德华:我在我的博士项目中做了类似的事情,但是你需要在Matlab中进行计算。我可以推荐Paraview来显示3D数据。

迪平K

爱德华Bahous

你好

我有几个轴对称零件不同横截面角度的PIV图像,希望在每个图像之间进行插值,以创建三维流场。PIV实验室有这种能力吗?

非常感谢。
爱德华。

伊丽莎白

你好
我需要做一个水槽实验来测量土壤侵蚀。这似乎是一个跟踪土壤运动的好工具。但是我必须使用示踪器来获得水上的流线吗?

约瑟夫·德克尔

你好
这是一个非常好的软件,特别是免费的。我在大学的高年级项目中使用了这个软件。我发现它在运行时会丢弃向量。我想运行一段时间以获得向量的良好平均值,但它会不断删除向量,这似乎很好。你能告诉我在哪里可以禁用此功能以使其正常运行吗t转储所有原始数据而不丢弃任何向量?

谢谢,

威廉·蒂里克

嗨,罗,
要导出二维矢量数据,请转到文件->保存->ASCII文件或MAT文件或Paraview二进制VTK(取决于您希望的格式)。
这些文件将在今年夏天发表在我的论文中,(希望)也会发表在一本杂志上。。。

罗伯瑞尔

威廉,

首先,请接受我对开发如此优秀软件的感谢。我发现,对于我的博士研究来说,这比商业上的PIV项目更可取(当然,在适当的情况下,你会被引用)。

我的问题 - 我想导出的全2D速度矢量分量(U,V)。我已经看到了,我可以导出U或V沿着“拔牙”菜单下的一条线,但那里的GUI功能,能够在整个ROI为全2D矢量场做到这一点?

最后,在您的论文发表之前,关于算法准确性等的文档可能会在2014年初提供。你是否有进一步的消息?

非常感谢,,
鱼子

威廉·蒂里克

嗨约瑟芬,
它使用互相关来确定粒子的位移。您可以选择“直接互相关”(在空间域)或“离散傅里叶变换”(在频域)。

约瑟芬

您好,我想知道使用PIVlab的测定方法是什么(
相位相关、基于块的方法、微分方法(Lucas-Kanade方法、Horn-Schunck方法、Buxton Buxton方法、Black-Jepson方法)
一般变分方法,离散优化方法)。我写硕士论文,不能使用此代码,如果我不知道它做什么确切。

先谢谢你,

何塞·菲恩

威廉·蒂里克

亲爱的Ram,这是PIVlab评论页面,而不是PTVlab页面。虽然PTVlab的GUI来自我们的项目,但我无法帮助您解决PTVlab中的bug。

内存

你好
很好的代码,但我在运行过程中遇到了问题。当我打开每帧图像并启用减法并单击“预览当前帧”时,什么都没有发生。相反,程序变得无法/不活动。我必须关闭PTVLab。有人能帮我吗?
提前致谢!!!
内存

威廉·蒂里克

亲爱的佩特拉,
PIVlab使用uipickfiles.m加载图像数据的路径和文件名。您可以将此函数替换为从Matlab工作区加载矩阵的自定义函数。请参阅uipickfiles.m的文档以了解其数据结构。

佩特拉S

嗨,威廉,

谢谢你的伟大计划。

我想知道:
是否有可能从当前的matlab会话直接导入图像(矩阵)而不保存它们到文件?

致以最亲切的问候
佩特拉

大卫·杰塞

威廉·蒂里克

@乌利:谢谢,我会尽量不要忘记在下一个版本中包含它。

@Tobias:“面积平均流向”适用于完整的单元格:如果某个单元格的面积超过50%在您选择的区域内,则该单元格包含在平均值中。
“面积平均值”在您的多边形使用完全相同的区域。因此,这是更精确。

托拜厄斯

嘿威廉,
我喜欢你的程序。它真的很复杂而且很容易使用。
然而,有一件事出现了。如果我从区域中提取速度幅度,我有两种可能性,右?- 通过“区域平均值” - >“速度幅度”和“区域平均流动方向”。虽然,结果是不同的。我不是matlab-pro,所以我很难遵循源代码到确切差异的位置。也许你可以给我一个有可能“信任”更多的建议;)
谢谢你所做的一切,
托比

乌利克林格

亲爱的威廉:,
谢谢你的代码。
我刚试过,效果很好。但是,我想我发现了一个缺陷,当图像包含空白区域时可能会出现:
然后我在piv_FFTmulti(第122行)中得到一个错误。
您可以在该行中添加“~isempty(x)&&&~isempty(y)”来解决该问题。

乔恩

嗨,威廉,
非常感谢您提供这个有用的工具。关于获取相关性峰值的最后一篇用户帖子的一个快速跟进问题。我们是单独运行PIV_FFTmulti.m,还是可以从GUI运行它(特别是相关性峰值)?
谢谢

威廉·蒂里克

相关结果如下:
piv_FFTmulti.m
result_conv = result_conv / max (max (result_conv)) * 255;%正常化,=总255年达到顶峰

Konstantinos Margaris

亲爱的威廉:,

如何绘制询问窗口的相关峰值?

新浪特比亚酒店

非常感谢你宝贵的帮助。我会寄给你一些快照。

威廉·蒂里克

亲爱的新浪,
图像没有二值化。然而PIVlab只使用来自图像的强度信息。
在最后一个过程中应该至少有6个粒子对。询问区域越大,单个向量越好。但你当然会失去决心。
当一个区域没有粒子时,PIV就不起作用了……挑战通常是优化实验设置,但我想这对你来说会很难……请发给我一些图片,我可以看一下。

新浪特比亚酒店

亲爱的威廉:,
感谢您创建了令人惊叹的PIV代码。我正在处理一系列在由许多颗粒组成的稠密流化床中获得的图像。在我开始使用您的PIV实验室时,出现了一些问题:
1.该程序二进制化的所有图像,一旦我做了图像预处理?
2.有些区域没有粒子,但我看到有很多速度矢量,应该避免。
3.我应该如何选择Pass1、pass2和pass3?是否有特定的标准?

我也很乐意给你发一些图片。

致以最亲切的问候
新浪

文森特

威廉·蒂里克

尊敬的伊恩,
PIVlab使用子图像的互相关来查找位移。请参阅Raffel等人的“粒子图像测速,实用指南”,了解PIV的信息。该书还概述了具有高位移和多程算法的流中询问区域的大小。

伊恩

感谢您创建的出色的PIV算法。我现在已经使用了一些,在我看来这是最人性化的。
谢谢你对我上一个问题的答复。我发现我之前分析的视频有明显的闪烁,这会引入人工制品。

比如说,如果粒子在流体中流动,PIVlab是基于粒子跟踪生成向量,还是更像一种纹理分析算法?

如果是粒子跟踪,我可能会在确定向量方面遇到更多问题,因为我目前正在处理较小的ROI。因此,如果我增加体积流速,很快我将不得不将询问窗口大小增加到一些不合理的值,我可能会丢失有价值的信息。

威廉·蒂里克

亲爱的伊恩,错误向量的数量取决于你的图像质量。图像噪声或压缩伪影确实会成为一个问题。您可以通过应用stdev过滤器、标准化中值测试或全局速度阈值,半自动过滤错误向量。你也可以给我发一些你的照片,让我看看。

伊恩

嗨,我想在一个封闭的流动通道中,在一个结构周围生成流体流动的流线。为了帮助跟踪流体流动及其速度,我在流体中添加了微粒。所以我使用这个GUI为我生成流线。

我所拥有的问题是,当我播放流体流量的视频时,我很容易看到流动的净方向。但是当我使用PIVLAB分析几个帧时,我得到了一个展示错误方向的错误矢量。除了每次对我分析的每次帧手动消除这一点之外,还有其他能力吗?
谢谢你考虑我的问题。

威廉·蒂里克

亲爱的康斯坦丁,
1:命令行脚本不用于生成PIVlab会话文件。但是您可以在GUI中分析2-3个图像,然后保存会话并查看生成的.mat文件。变量“resultslist”包含x、y、u、v和typevector信息。
2:我正在使用exportfig功能导出图形。您可以在PIVlab_GUI.m中搜索“exportfig”,并在保存图形之前修改它。

Konstantinos Margaris

当我在我的图像中应用强度封顶时,我得到了以下错误:

使用中值时的错误(第28行)
第一个输入必须是单输入或双输入。
PIVlab_预处理程序中的错误(第24行)
up_lim_im_1 =中位数(in_roi(:))+ n * std2(in_roi);%上限
图1
PIVlab_GUI>预览预处理_回调中出错(第1502行)
out=PIVlab_预处理(img、roirect、clahe、,
clahesize、highp、highpsize、clip、clipthresh、INTESCAP);
gui_mainfcn错误(第96行)
feval(varargin{:});
误差在PIVlab_GUI(第32行)
gui_mainfcn(gui_state,varargin {:});
错误
@(hObject,eventdata)PIVlab_GUI('preview_preprocess_Callback',hObject,eventdata,guidata(hObject))
错误而评估uicontrol回调

如果将中值函数的实参转换为double,问题就解决了。我不确定这是一个普通的错误或只是我的图像(8位Tiff)。

另外,如果你能帮我做几件事,我将不胜感激:

1.将保存的结果垫子文件,使用命令行脚本,以便将其加载到GUI用于预处理命令?

2.我正在使用边缘检测算法来检测和屏蔽图像中的边界。我想在GUI中绘制边缘,并在导出图像或视频时将其保存在图像上。你能给我指一下保存的图像变量吗?这样我就可以添加检测到的边缘了?

苏珊

威廉·蒂里克

亲爱的Konstantinos,你可以保存你的会话,然后使用Eileen不久前发给我的这段代码从保存的会话中提取面具:
函数ReadSaveMasksFromSession(文件名,输出文件)
%filename是PIVlab会话文件的名称
%outfile是要保存的MATLAB文件的名称
%此函数用于保存来自PIVlab的遮罩的x和y坐标
%以前保存到会话文件。它只做第一个图像切片,
%,但可以从PIVLAB中复制到其他图像。
如果用户希望在其他具有相同功能的映像上运行PIVlab
%方向,此程序的输出文件可以加载到PIVlab中。
艾琳%M.麦克马洪,博士,2012年5月
masks=load(文件名,'-mat',maskiererx',maskierery');
xmask=masks.maskiererx{1,1};
ymask = masks.maskierery {1,1};
保存(外汇,'xmask','Ymask');
回来

Konstantinos Margaris

出色的工作!

有没有一种方法来保存PIVlab画口罩,以重新使用他们在不同的会议?

艾米

约翰

这太棒了。对于我第一次使用PIV,这段代码非常有帮助。我想知道当我将结果保存到。mat时,矩阵'typevector'代表什么。它是否显示哪些向量是原始的,哪些向量在向量验证后被替换?

威廉·蒂里克

@Emil:我使用的是内置流线型功能的Matlabs。据我所知,它从这一点只会在一个方向上画出流线。我将寻找下一个版本的替代方案。

埃米尔Rozbicki

这是非常好的。只是想知道是否有一种方法来显示流线不仅“从点开始”而且“在点结束”,或者是否有一种方法来显示通过给定点的“完整”流线。

马丁·理查德

我觉得这个工具很棒!

威廉·蒂里克

这并不复杂,这里是一个快速而肮脏的抛物线流:

[v, u] = meshgrid (1:800 300:299);
v=零(600800);
u=(1-u.^2/最大值(最大值(u.^2))*5;

阿洛克

你好
感谢您的快速回复。我给它一个镜头,虽然它看起来很复杂。

威廉·蒂里克

你好,阿洛克,
在PIVlab_GUI的第3636行。M,你可以找到生成均匀位移流的代码。你可以把你的抛物线流动轮廓放在这里,你只需要一个u和v的位移矩阵在图像中的所有像素。

阿洛克

从我以前的问题中拿起,有没有办法,我可以在抛物线的等式中指定位移并在PIVLAB中将粒子图像产生粒子图像

阿洛克

这是一个了不起的工具。在找到皮夫拉布之前,我尝试了很多选择。干得好不过,我有一个疑问。我似乎无法为简单的抛物线流生成图像,比如通道中的Poiseuille流。我错过什么了吗?谢谢

干得好

扬·内格斯

威廉·蒂里克

@约克:是的,只需禁用“绘图->导出参数”中的“自动缩放贴图”功能

约克

问个小问题,有什么方法可以修复整个图像序列的颜色栏的范围吗?

约克

阿拉格尔

巴文·达拉尔

谢谢你!

威廉·蒂里克

@巴文:你可以打开pivlab_gui.m,搜索“vectorcolor='g'”。将其替换为红色的'r'或黑色的'k'。
当你想要修改在显示导数时绘制的矢量颜色(例如涡度或幅度等),搜索vectorcolor='k'并将其替换为你选择的颜色。我将在下一个版本中增加改变矢量颜色的可能性。

@全部:如果您错过了一些功能,请在此处添加您的评论/愿望:
http://pivlab.blogspot.com/2011/07/pivlab-12-windows-deformation.html
否则,我可能会忘记在下一个版本中添加所需的功能(我有很多项目,很难跟踪所有内容)。

巴文·达拉尔

非常好的项目。强大,快速和易于使用。有个问题,有没有办法把箭头的颜色从绿色改为黑色或红色?我使用彩色图像进行演示。

威廉·蒂里克

吴@XP:
谢谢你的反馈。
我认为1605-1607行是正确的。它们设置复选框的值(value==1表示复选框已选中,value==0表示复选框未选中)。变量pass2, pass3, pass4分别为0。这是很好。
您的第二个更改很有意义,我将在下一个版本中包含它。谢谢!

XP Wu

干得好!
一些错误应该被修复。
参见第1605至1607行:

设置(handles.checkbox26,“值”,pass2);
设置(handles.checkbox27,'值',pass3);
设置(handles.checkbox28,'值',pass4);
由于复选框没有名为“value”的属性,因此这些代码应如下所示:

%%{已由XP wu修改
设置(处理。checkbox26,“字符串”,“通过2:”);
设置(处理。checkbox27,“字符串”,“通过3:”);
设置(handles.checkbox28,'String','pass4:');
%% 2011-12-15}

XP Wu

PIVlab_GUI不需要从其文件夹开始。只需更改第105行:
Read_settings('pivlab_settings_default.mat',pwd);

可能是如下::
%%{已由XP Wu修改
%读取设置('PIVlab\u settings\u default.mat',pwd);
psdfile =(“PIVlab_settings_default.mat”);
dindex=strfind(psdfile,filesep);
读取设置('PIVlab_settings_default.mat',psdfile(1:(dindex(end)-1));
%% 2011-12-15}

Hayder

优秀的代码。非常友好和准确。
我在我所有的博士研究中都用到了它

凯莉

此代码有3D版本吗?

威廉·蒂里克

您好,四位,
如果某些区域是完全黑色的,我的工具将无法计算该区域的速度。因此,这些区域中的速度不是零,但它是“不可衡量的”。这就是为什么工具在这些领域将“纳尼”放在这些区域。在向量验证中,内插的所有缺失数据(= NANS)。我刚刚修改了文件piv_fftmulti.m,使“0”放置在黑区域而不是“NaN”中。如果你想让我发给你的文件,请写一封电子邮件
pi vi ab @ g m x。c o m

thefourtheye

你好,W Thielicke,你的工具很棒。谢谢发帖!我有一个关于向量验证的问题。我在运行你的伤口愈合分析程序。在分析之前,我对我的图像应用一个二值阈值以减少噪声。当我运行程序时,有细胞的向量,细胞分裂的异常向量,以及没有发生移动的裸露区域上的点。当我选择速度限制并将其应用到帧上时,异常向量被更小的橙色向量所取代,但现在应该没有帧间移动的裸露区域也有小的橙色向量。为什么当我限制速度范围时,没有移动的区域被分配为向量?我注意将散点图上的限制集中在(0,0)上(例如,我将选择(-1,1)和(1,-1)之间的区域)。

加雷思

是的,我在语句中添加了将数据发送到工作区,我现在可以访问数据。谢谢!

威廉·蒂里克

@Gareth:直方图和其他统计图在PIVlab_GUI.m的第3019行中完成。只要在这行下面输入“键盘”命令,您就可以访问数据。这就是您的意思吗?您也可以在这里添加assignin命令,以便数据始终发送到您的工作区。

加雷思

嗨,这是一个很棒的工具,谢谢。不过我有个问题。我不仅想看到PIV实验室生成的直方图和图表,而且想得到它用来生成它们的数据。所以,如果它使用x轴和y轴来生成直方图,我需要这些数据向量。这可能吗?

榆阳

威廉·蒂里克

大家好,我有一个好消息:最近几天我编写了一个多程窗口变形PIV算法。结果看起来很棒,噪音显著降低,峰值锁定降低,大梯度和非常小的询问区域不太成问题。看看http://pivlab.blogspot.com对于第一个结果。我会做一些最后的测试,并很快上传更新。

埃尔曼·塞利克

PIV实验室是我用过的最有效的方案。友好的用户界面和操作指示,快速的过程是非常有用的。感谢这个高效的代码。真挚地

威廉·蒂里克

我认为从外部程序加载分析是不可能的。在你的分析中没有办法减少位移吗?如果您的流或多或少是均匀的,您可以尝试在分析之前移动图像。你能寄给我一些录音样本吗?也许我会找到一些时间再玩多通道,然后我需要一些图像,多通道有优势。

K.Wager

@W Thielicke:
谢谢你快速的回答。
我需要使用multipass的原因是由于我的流动条件(µ-PIV,速度超过15米/秒)。

我想知道我是否可以与我的商业软件进行互相关并在Pivlab中加载数据。这是否可以通过Load Pivlab会话?需要哪种格式和数据?

威廉·蒂里克

@K.赌注:
不久前我做了一些初步的多次测试。我做了一个正常的分析作为第一次测试,得到了x和y的位移。在下一次测试中,我用第一次测试的整数位移移动了第二张图像的询问区域,并重新进行了分析。两次测试后,分析结果没有任何变化。我认为原因是我正在使用DCC方法进行分析,但我还不确定这一点。也许,如果我使用FFT方法,多通道分析的结果会更好。此外,如果我在第二遍减少询问区域,结果可能不会更好,因为分析将基于更少的像素I信息,这可能会增加噪音。

在最新版本(还没有上传)中,我添加了一个功能来在分析中绘制流线。也许这会让你们中的一些人感兴趣。

K.Wager

我刚开始使用PIVlab,但我已经认为它比商业软件好得多!

是否有可能在减小窗口大小的情况下进行多通道询问?

若昂·布拉斯

出色的工作!你的软件,工作方式比在许多方面等商业软件。很有用!

非常感谢。

若昂·布拉斯

奥斯曼·莫萨

F A N T A S T I C

s

谢谢!!这将有助于手动拒绝某些向量。

Liran奥伦

棒极了!!!
我得到的结果和价值1.5万美元的Davis软件(来自LaVision)得到的结果一样。荣誉!
您如何从结果中计算压力字段?看起来OpenPiv小组开始工作,但从未完成过......解决N-S和泊松方程会给你一个可以对某些应用程序足够好的球公园

威廉·蒂里克

在工具面板中,当你点击一个向量时,它在哪里会变成零?这个面板中的速度显示只是为了提供信息,而不是测量一些东西。但是你可以在PIVlab_GUI.m中搜索这一行:

集合(handles.u_cp,'String',[u:'num2str(round((u(info(1,1),info(1,2))*retr('caluv')-retr('subtr_'))*1000)/1000)];

并将“1000”替换为“10000”,以获得更精确的信息。

s

非常好的工具工作!!
我只面临一个问题。当速度低于或约为0.002 m/s时,它给出的速度分量值为零。
是否有任何圆形错误导致此问题?我该如何解决它?

阿米特什

干得好!我希望您也可以在统计和提取部分添加“应用于所有帧”选项。当试图使用多段线、面积、面积积分序列等提取数据时,能够同时自动对所有加载的帧进行提取将非常有用。非常感谢。

大卫

优秀的工具!!!

极具人性化。
快速的
所有有用的输出变量都可用。
所有有用的数据输出格式可用。

绝对是我见过的最好的文件交换工具之一。(为了发表这条评论,我觉得自己不得不注册。)

威廉·蒂里克

如果您在使用这个工具时遇到问题,请与我联系。我只有两台计算机(Win7)和一个MATLAB版本来测试它。到目前为止,软件变得相当复杂,所以我不可能预测所有可能的硬件/ OS / MATLAB发行组合上的潜在问题。
然而,我不能保证我总是有足够的空闲时间来立即解决你的问题。

帕特里克

棒极了!

哈尔顿

威廉·蒂里克

Hi Shashi,我目前正在开发下一个版本,我将添加一个改变矢量厚度的可能性。

沙希·图帕利

你好

这真的很好,对我来说非常好。有没有办法修改矢量等的厚度。

最好的
沙希

哈迪·穆罕默德

哈迪·穆罕默德

我得到另一个问题,这是编译时间,我只是想在代码样本中绘制速度配置文件,但它需要太多时间,我只是将它剪切,同时我正在使用新的品牌笔记本电脑和桌面, 任何的想法?

哈迪·穆罕默德

嗨,我打算使用这个GUI来跟踪粒子,我第一次尝试就成功地使用了它,然后当我想再次运行它时遇到了一个错误,MATLAB命令行中的错误显示:
*******************
? ?使用==> guhandles时出错
H必须是图形或图形的句柄。

149处==>PIVlab_GUI>switchui中出错
handles=guihandles(getappdata(0,'hgui'));

592处==>PIVlab_GUI>loadimgs_回调中出错
switchui('multip01')

==> GUI_MAINFCN在75中出错
feval(varargin{:});

==>PIVlab_图形用户界面在25时出错
gui_mainfcn(gui_state,varargin {:});

?评估uimenu回调时出错。

保存最后一个目录时出错
********************
如果有人能帮我解决这个问题,那就太好了。

Wouter米

非常好。我是这个领域的新手。我对“专业”软件感到失望。我尝试了其他一些Matlab PIV工具箱,但这是最好的imho。

再说一遍:干得好!我有两个建议,我认为会很有用。建议:1)使所有命令都可以在命令行或脚本中使用,并添加简短的文档。2) 增加了计算一系列图像的平均流场和湍流速度的可能性。

Wouter米

Matlab释放兼容性
创建与R2019b
与R2014b及更高版本兼容
平台兼容性
窗户 macOS Linux.

社区寻宝

找到Matlab Central中的宝藏,并发现社区如何帮助您!

开始打猎吧!