|
12 | 12 | % INPUTS: |
13 | 13 | % A: 2d matrix |
14 | 14 | % dims: vector with dimensions of the FOV |
15 | | -% classifier: path to pretrained classifier model |
| 15 | +% classifier: path to pretrained classifier model (downloaded if it |
| 16 | +% doesn't exist) |
16 | 17 | % thr: threshold for accepting component (default: 0.2) |
17 | 18 | % |
18 | 19 | % note: The function requires Matlab version 2017b (9.3) or later, Neural |
|
24 | 25 |
|
25 | 26 | if verLessThan('matlab','9.3') || verLessThan('nnet','11.0') || isempty(which('importKerasNetwork')) |
26 | 27 | error(strcat('The function requires Matlab version 2017b (9.3) or later, Neural\n', ... |
27 | | - 'Networks toolbox version 2017b (11.0) or lvalater, the Neural Networks ', ... |
| 28 | + 'Networks toolbox version 2017b (11.0) or later, the Neural Networks ', ... |
28 | 29 | 'Toolbox(TM) Importer for TensorFlow-Keras Models.')) |
29 | 30 | end |
30 | 31 |
|
|
34 | 35 | A = A/spdiags(sqrt(sum(A.^2,1))'+eps,0,K,K); % normalize to sum 1 for each compoennt |
35 | 36 | A_com = extract_patch(A,dims,[50,50]); % extract 50 x 50 patches |
36 | 37 |
|
| 38 | +if ~exist(classifier,'file') |
| 39 | + url = 'https://www.dropbox.com/s/1csymylbne7yyt0/cnn_model.h5?dl=1'; |
| 40 | + classifier = 'cnn_model.h5'; |
| 41 | + outfilename = websave(classifier,url); |
| 42 | +end |
| 43 | + |
37 | 44 | net_classifier = importKerasNetwork(classifier); |
38 | 45 | out = predict(net_classifier,double(A_com)); |
39 | 46 | value = out(:,2); |
|
0 commit comments