File Exchange

image thumbnail


version 2.3.2 (671 KB) by Chun-Sheng Wang
ParaPIV is a parallel post-processing tool for Particle Image Velocimetry (PIV) based on PIVlab.


Updated 18 Nov 2018

View License

ParaPIV is a parallel processing tool for Particle Image Velocimetry (PIV). It aims to process PIV images efficiently on large scale parallel machines or multi-core computers.

Since PIV takes advantage of image correlations to obtain velocity field, the post-processing is always time-consuming, especially for turbulent flows. Thanks to the distributed computation toolbox of MATLAB and modern advanced computers, ParaPIV is able to calculate ten thousand image frames in minutes or seconds. With a 6 core intel i7 CPU PC, ParaPIV are 38 and 6.7 times faster than PIVlab 1.32 and PIVlab 1.41, respectively.

To activate the parallel computing function, open ParaPIV in MATLAB, click the Options -> Turbo mode -> Parallel Computing, and select the number of CPU cores to use. Start the parallel pool by click the start button and wait for a few minutes. After the parallel pool is started, click the analyze all frames button as usual and images will be transferred and analyzed on multiple cores. The usage of CPU can be monitored through Task Manager. During the analysis the toolbar will remain grey (not enabled) and the process can not be interrupted since the tasks are processing in different cores.

Cite As

Chun-Sheng Wang (2020). ParaPIV (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (30)


Dear Dr Wang,
I want to know Is this a parallel version based on Pivlab?

I want to express my gratitude for your work and what a helpful tool you have provided to us!

Dear Dr Wang,
During my experiment I have faced one more issue about exporting the results as jpg files, in order to fix this issue I recommend to replace the function "autocrop" with the next one :

function autocrop (file,fmt)
for i=1:ceil(size(B,1)/2)
startcropy=max([find(val==255) 1]);
for i=size(B,1):-1:ceil(size(B,1)/2)

clear val val2
for i=1:ceil(size(B,2)/2)
startcropx=max([find(val==255) 1]);
for i=size(B,2):-1:ceil(size(B,2)/2)

if isempty(startcropx)
startcropx = 1;
if isempty(startcropy)
startcropy = 1;
if isempty(endcropx)
endcropx = size(B,2);
if isempty(endcropy)
endcropy = size(B,1);



if fmt==1 %jpg
imwrite(A,file,'quality', 100);

Thanks for your great work and effort for improving the PIVLAB program.
Looking forward to hearing about your new researches.

oscar juina

Dear Dr Wang,
Thanks for your great work and effort for improving the PIVLAB program. You had done an outstanding job.
About the problem which Andy Zhuang wrote, "ParaPIV_GUI>filtervectors2 (line 3046)" you can solve it adding " thresh = loc_med_thresh;" in line 3026 after " if loc_median==1"
Looking forward to hearing about your new researches.


Hi, Dr. Wang,
Thanks for your great work on the progress of PIV. ParaPIV is a great code and it helps a lot. But I got a little problem. When I conduct vector validation, it always shows 'something wrong in ParaPIV_GUI>filtervectors2 (line 3046), undefined function 'thresh''. I tried PIVLab v2.0, it works well. Could you help me figure out the problem? Thanks in advance.

Hello Dear Chun
Hope you are doing well,

Is there any news about the new update?


Dear ParaPIV users,
I have currently encountered some compatibility issues with the new version (some functions are working on MATLAB R2016b but not on 2013a). Therefore I have to postpone the update to this weekend. Sorry for any inconvenience caused.

Hi Chun
Good to hear that
I am waiting for it


Hi Omid,
I've just finished my vacation. The new version will be updated this weekend. Some new features about this version include POD module for transient flow analysis, faster analyzing procedure (improved algorithm), more friendly plot options, and improved GUI (based on PIVlab 2.0).

Hello Dear Chun
Hope you are doing well,
Is there any new update in near future?


Hi dear Chun
Good to hear that, I am waiting for it! Maybe next week!
Could you give me what is the new features?

Best, Omid

Hi Omid,
The next major update will be uploaded by the end of Chinese New Year.

hello dear chung,
hope you are doing well,

Do you have any new update in near future?

Hi Omid,
Thanks for your suggestion. I am considering adding this function in the next major update. If you have any other ideas, please feel free to let me known.


Hi Dear Chun
Good to hear that. You are doing well.

I want to ask one question. In Linear integral convolution plots. It is just black and white colors. Is it possible to color them with velocity or vorticity?

Sincerely yours

Hi omid nematollahi male,
I'm currently implementing the POD module and it will appear in the next major update. Stay tuned!

Hi Dear Chun

Many thanks for the great job and new updates. If you are working on a new update I will appreciate your efforts if It is possible to add some POD analysis.

I am very very thankful for your efforts.
Sincerely yours

Hi omid nematollahi male,
The functions you required have been implemented in our new version. I'm currently testing the compatibility of the software. Once the test is done, the new version will be uploaded. The latest version will be available by the end of this week.

Hello. Such a great job. The new version is very helpful. It is very helpful.
But I have two suggestion:
1. if it is possible to export all the frame of PIV experiment results in Tecplot as a time-resolved solution. currently, I will put one by one of the ASCI text to Tecplot.
2. If it is possible to add turbulence intensity to Tecplot export.

I will appreciate your nice update. If you have any paper related to this to cite in the reference paper let us know.

Those who do not have MATLAB installed on their computer can also find a standalone windows installer in the project link. The whole installation process takes about 30 mins.

Thanks for all your support and encouragement. Finally , the new version is released. This version comes with lots new features and improvements. All of the most time-consuming parts in PIV analysis are now fully paralleziable. The GUI is more clean and user-friendly. Just enjoy!

Hi Chun-Sheng, amazing job ! I am very interested in the new version :)

Hi there, I'm preparing the next release of ParaPIVlab. Please feel free to let me known If you want any functions in the update.

lei wang

Thank you very much

IMing Hsieh

Kunyan Lin



speedup option apart from parallel computing (2-3 times)
Tecplot file export for any frame
improved menu experience
improved system stability


bug fix for vector validation gui
bug fix for main window gui when running the app twice
tecplot file output for turbulence utilities
Gui menu optimization
analysis optimization option (works for both serial and parallel)
Gui for PIV accuracy test


Those who do not have a matlab account can directly download the latest version of ParaPIV on the project website.


GUI bug fix


bug fix and new features
- parallelization of postprocessing (vector validation)
- new utilities for turbulence analysis
- GUI improvement (hide sidebar, frame play, ...)
- display discarded vectors in console
- rename app to ParaPIV
- GUI bug fix ..

Updated user guide
A few bugs fixed

Progress bar for both ParaPIVlab GUI and TUI

Compatible with MATLAB 2013a and after
Serial mode for text user interface (TUI)
Advanced wrapper function for the Matlabpool and recent parpool
A few bugs fixed for GUI

ParaPIVlab in text user interface
Time cost prediction for GUI interface

MATLAB Release Compatibility
Created with R2016b
Compatible with R2013a to any release
Platform Compatibility
Windows macOS Linux