PIVlab 1.4beta

classic Classic list List threaded Threaded
13 messages Options
William William
Reply | Threaded
Open this post in threaded view
|

PIVlab 1.4beta

This post was updated on .
Hi, I just uploaded the 1.4beta release (compatible with R2014b and earlier). Feel free to test it, download available here:
http://william.thielicke.org/PIVlab1.4beta.zip
If we don't discover major bugs in the next week, I will also upload it to the MATLAB file exchange and Figshare.

Features:
•MATLAB R2014b compatibility (yaay!)
•Backwards compatible (the oldest version I could test is R2011a, but it should also work with much older releases)
•Improved speed of FFT and the spline window deformation (due to some changes in R2014b)
•Speed testing tool (run Testspeed.m to benchmark your hardware)
•New default colormap Parula
•Packaged app makes installation and execution simpler
•Several minor fixes / improvements

Please consider donating for the PIVlab project:
http://paypal.me/pools/c/81Y8wBVi4y

The developer needs to update to a recent Matlab release in order to keep the project running.

Tobi Tobi
Reply | Threaded
Open this post in threaded view
|

Re: PIVlab 1.4beta

Hey William,

I think I found in issue behind the "Load images" button on the very first page of the GUI. First it takes much longer than before adding 10000+ images and when I hit "Import" I get following error without any images being imported to the GUI:

Attempted to access zeichen(1,0); index must be a positive integer or logical.

Error in PIVlab_GUI>loadimgsbutton_Callback (line 850)
                filename{i,1}=['A: ' currentpath(zeichen(1,size(zeichen,2))+1:end)];

Error in gui_mainfcn (line 95)
        feval(varargin{:});

Error in PIVlab_GUI (line 52)
    gui_mainfcn(gui_State, varargin{:});

Error in @(hObject,eventdata)PIVlab_GUI('loadimgsbutton_Callback',hObject,eventdata,guidata(hObject))

 
Error while evaluating UIControl Callback


My MATLAB version is 2015a. I don't have the issue with version 2013b.
The commandline file works fine with both MATLAB versions thus far.
William William
Reply | Threaded
Open this post in threaded view
|

Re: PIVlab 1.4beta

Tobi wrote
First it takes much longer than before adding 10000+ images
Hi Tobi,
PIVlab uses uipickfiles.m to import image data. That is a contribution from another author where I have little influence. I might consider to upgrade the function included in PIVlab to the latest version of uipickfiles...

Can you help me with the second error message? Are you using a PC or mac? The problem occurs, because I am searching for the "\" symbol (respectively "/" for non-pc systems) in the filepath of the image you want to load.

Could you please try the attached alternative version of PIVlab_GUI.m and (if it still doesn't work) report to me what is printed in the command window? In this version, I replaced the funtion 'findstr' by 'strfind'.

Thanks!
PIVlab_GUI.m

Please consider donating for the PIVlab project:
http://paypal.me/pools/c/81Y8wBVi4y

The developer needs to update to a recent Matlab release in order to keep the project running.

Tobi Tobi
Reply | Threaded
Open this post in threaded view
|

Re: PIVlab 1.4beta

I'm using windows 7. The extended loading duration can definetly be attributed to uipickfiles. I tested a newer version (still from 2012) and it took much longer with the 2015a compared to 2013b. I guess all the problems arise from there :( Here the new message:

ans =

Accuracy.m

pc

zeichen =

     []

Attempted to access zeichen(1,0); index must be a positive integer or logical.

Error in PIVlab_GUI>loadimgsbutton_Callback (line 853)
                filename{i,1}=['A: ' currentpath(zeichen(1,size(zeichen,2))+1:end)];

Error in gui_mainfcn (line 95)
        feval(varargin{:});

Error in PIVlab_GUI (line 52)
    gui_mainfcn(gui_State, varargin{:});

Error in @(hObject,eventdata)PIVlab_GUI('loadimgsbutton_Callback',hObject,eventdata,guidata(hObject))

 
Error while evaluating UIControl Callback
William William
Reply | Threaded
Open this post in threaded view
|

Re: PIVlab 1.4beta

Hi Tobi,
this is super strange.... It appears that PIVlab is trying to load the file "accuracy.m" instead of an image file...
To me it seems to be likely that uipickfiles doesn't react to your selection at all, but it just tries to import all the files in the selected directory ('accuracy.m' is the first file in the PIVlab directory.) To solve this issue, I probably have to get a trial version of 2015a. Damn Mathworks, why do they keep changing things without documenting it....?

Please consider donating for the PIVlab project:
http://paypal.me/pools/c/81Y8wBVi4y

The developer needs to update to a recent Matlab release in order to keep the project running.

William William
Reply | Threaded
Open this post in threaded view
|

Re: PIVlab 1.4beta

The maker of uipickfiles just provided a solution for this problem:
http://www.mathworks.com/matlabcentral/fileexchange/10867-uipickfiles--uigetfile-on-steroids


I'll also include this fix in the version that I'll upload now.

Please consider donating for the PIVlab project:
http://paypal.me/pools/c/81Y8wBVi4y

The developer needs to update to a recent Matlab release in order to keep the project running.

Tobi Tobi
Reply | Threaded
Open this post in threaded view
|

Re: PIVlab 1.4beta

cool ! The import is super slow still, but at least it works now. Started an analysis now to test the rest.

Thanks William !
Tobi
Tobi Tobi
Reply | Threaded
Open this post in threaded view
|

Re: PIVlab 1.4beta

So far no more errors. I can't really say that it is faster in r2015a. I'd rather say the opposite.

I dont wanna complain, however ;) I like your toolbox !
Thanks,
Tobi
William William
Reply | Threaded
Open this post in threaded view
|

Re: PIVlab 1.4beta

Hi, could you run the 'testspeed.m' script that is in the Pivlab1.4 folder with both your Matlab versions and report the results here?

Please consider donating for the PIVlab project:
http://paypal.me/pools/c/81Y8wBVi4y

The developer needs to update to a recent Matlab release in order to keep the project running.

Tobi Tobi
Reply | Threaded
Open this post in threaded view
|

Re: PIVlab 1.4beta


r2013b:
Your results (time per operation):
DCC calculation speed:      12.7779 ms
DFT calculation speed:      0.2534 ms
Linear interpolation speed: 0.49663 ms
Spline interpolation speed: 1.016 ms


r2015a:
Your results (time per operation):
DCC calculation speed:      6.023 ms
DFT calculation speed:      0.25225 ms
Linear interpolation speed: 0.31133 ms
Spline interpolation speed: 1.2346 ms


Maybe I should give DCC another try ;)
William William
Reply | Threaded
Open this post in threaded view
|

Re: PIVlab 1.4beta

So that doesn't look very slow... Is actually the analysis slow or the gui itself?
Here are my results for 2014b:

Surface Pro 3
Intel Core i5-4300U @ 1.9GHz 2.5GHz
8 GB RAM
64 bit Win 8.1 Pro
MATLAB R2014b 64 bit

DCC calculation speed:      13.8081 ms
DFT calculation speed:      0.30431 ms
Linear interpolation speed: 0.56215 ms
Spline interpolation speed: 1.9602 ms



PC
Intel Core i7-2600K @ 3.4GHz
16 GB RAM
64 bit Win 7 Pro
MATLAB R2014b 64 bit

DCC calculation speed:      6.0144 ms
DFT calculation speed:      0.28481 ms
Linear interpolation speed: 0.53755 ms
Spline interpolation speed: 1.1093 ms

Please consider donating for the PIVlab project:
http://paypal.me/pools/c/81Y8wBVi4y

The developer needs to update to a recent Matlab release in order to keep the project running.

Tobi Tobi
Reply | Threaded
Open this post in threaded view
|

Re: PIVlab 1.4beta

I work with a Intel Core i7-3770 @ 3.4 GHz, 8GB RAM, Win7 Pro 64bit

So the GUI and everything runs smoothly. Just when I was analysing two identical stacks of 22.500 images, it took something like 4,5h with r2015a instead of 4h with r2013b (I was using DFT and linear interpolation). Likewise with the commandline procedure. Also the postprocessing in the GUI seemed a bit slower. But maybe it has nothing to do with MATLAB itself at all. Since I ran the test in parallel it could also be due to processor, hard disk access or windows, or a ton of other issues. Virtually, I don't care too much because all my analysis run over night and it's done when I come back.
Plus...I obviously kept the old MATLAB version ;)
Blue Blue
Reply | Threaded
Open this post in threaded view
|

Re: PIVlab 1.4beta

In reply to this post by William
William wrote
Hi, I just uploaded the 1.4beta release...
Features:
•MATLAB R2014b compatibility (yaay!)
Superb! Downloading it now. I've been switching backwards and forwards between Windows 7 and OS X recently to get my PIV stuff done, hopefully this means I can do everything in one OS!

Thanks so much.
Remember Wheaton's Law