In [1]:
%matplotlib inline
%pylab inline


Populating the interactive namespace from numpy and matplotlib

In [2]:
repeat = 1

Load test data


In [3]:
import menpo.io as mio
from menpo.landmark import labeller, streetscene_car_view_1
from menpofast.utils import convert_from_menpo

group = 'streetscene_car_view_1'

test_images = []
for i in mio.import_images('/data/PhD/DataBases/cars/cmu_car_data1/view1/', verbose=True, 
                           max_images=None):
    
    # convert the image from menpo Image to menpofast Image (channels at front)
    i = convert_from_menpo(i)
    
    labeller(i, 'PTS', eval(group))
    i.crop_to_landmarks_proportion_inplace(1, group=group)
    i = i.rescale_landmarks_to_diagonal_range(200, group=group)
    
    if i.n_channels == 3:
        i = i.as_greyscale(mode='average')
    test_images.append(i)


- Loading 843 assets: [====================] 100%

In [4]:
test_images = test_images[1::2]

In [5]:
from menpo.visualize import visualize_images

visualize_images(test_images)


AAMs

Load


In [6]:
from alabortcvpr2015.utils import pickle_load

aam = pickle_load('/data/PhD/Models/aam_view1_fast_dsift')

AIC

Test


In [7]:
sampling_mask = np.require(np.zeros(aam.parts_shape), dtype=np.bool)
sampling_mask[::2, ::2] = True

imshow(sampling_mask)


Out[7]:
<matplotlib.image.AxesImage at 0x7f2446728310>

In [8]:
from alabortcvpr2015.aam import PartsAAMFitter, AIC
                  
fitter = PartsAAMFitter(aam, algorithm_cls=AIC, n_shape=[3, 12],
                        n_appearance=[25, 50], sampling_mask=sampling_mask)

In [10]:
fitter_results = []

for seed in xrange(repeat):
    
    np.random.seed(seed=seed)

    for j, i in enumerate(test_images):
    

        gt_s = i.landmarks[group].lms
        s = fitter.perturb_shape(gt_s, noise_std=0.05)

        fr = fitter.fit(i, s, gt_shape=gt_s, max_iters=20, prior=False)

        fitter_results.append(fr)
        fr.downscale = 0.5

        print 'Image: ', j
        print fr


Image:  0
Initial error: 0.2243
Final error: 0.0832
Image:  1
Initial error: 0.1145
Final error: 0.0617
Image:  2
Initial error: 0.0961
Final error: 0.0376
Image:  3
Initial error: 0.0782
Final error: 0.0179
Image:  4
Initial error: 0.0530
Final error: 0.0220
Image:  5
Initial error: 0.1533
Final error: 0.0642
Image:  6
Initial error: 0.0994
Final error: 0.0470
Image:  7
Initial error: 0.0817
Final error: 0.0606
Image:  8
Initial error: 0.1135
Final error: 0.0804
Image:  9
Initial error: 0.0767
Final error: 0.0621
Image:  10
Initial error: 0.1494
Final error: 0.0235
Image:  11
Initial error: 0.0814
Final error: 0.0549
Image:  12
Initial error: 0.1664
Final error: 0.0351
Image:  13
Initial error: 0.0927
Final error: 0.0441
Image:  14
Initial error: 0.0548
Final error: 0.0199
Image:  15
Initial error: 0.1583
Final error: 0.0425
Image:  16
Initial error: 0.0644
Final error: 0.0259
Image:  17
Initial error: 0.0661
Final error: 0.0418
Image:  18
Initial error: 0.0455
Final error: 0.0163
Image:  19
Initial error: 0.0641
Final error: 0.0289
Image:  20
Initial error: 0.1780
Final error: 0.0941
Image:  21
Initial error: 0.0843
Final error: 0.0535
Image:  22
Initial error: 0.0727
Final error: 0.0307
Image:  23
Initial error: 0.0499
Final error: 0.0354
Image:  24
Initial error: 0.0585
Final error: 0.0243
Image:  25
Initial error: 0.1300
Final error: 0.0914
Image:  26
Initial error: 0.1212
Final error: 0.0497
Image:  27
Initial error: 0.1534
Final error: 0.0257
Image:  28
Initial error: 0.0709
Final error: 0.0248
Image:  29
Initial error: 0.1113
Final error: 0.0454
Image:  30
Initial error: 0.1458
Final error: 0.0692
Image:  31
Initial error: 0.1072
Final error: 0.0351
Image:  32
Initial error: 0.0633
Final error: 0.0266
Image:  33
Initial error: 0.0607
Final error: 0.0455
Image:  34
Initial error: 0.0859
Final error: 0.0167
Image:  35
Initial error: 0.0635
Final error: 0.0159
Image:  36
Initial error: 0.1539
Final error: 0.0713
Image:  37
Initial error: 0.0932
Final error: 0.0201
Image:  38
Initial error: 0.1046
Final error: 0.0347
Image:  39
Initial error: 0.0648
Final error: 0.0275
Image:  40
Initial error: 0.0476
Final error: 0.0249
Image:  41
Initial error: 0.1738
Final error: 0.0378
Image:  42
Initial error: 0.1014
Final error: 0.0382
Image:  43
Initial error: 0.1115
Final error: 0.0360
Image:  44
Initial error: 0.0671
Final error: 0.0261
Image:  45
Initial error: 0.1683
Final error: 0.0526
Image:  46
Initial error: 0.0883
Final error: 0.0464
Image:  47
Initial error: 0.0934
Final error: 0.0192
Image:  48
Initial error: 0.1439
Final error: 0.0483
Image:  49
Initial error: 0.1628
Final error: 0.0215
Image:  50
Initial error: 0.0734
Final error: 0.0366
Image:  51
Initial error: 0.0904
Final error: 0.0247
Image:  52
Initial error: 0.0389
Final error: 0.0227
Image:  53
Initial error: 0.0769
Final error: 0.0458
Image:  54
Initial error: 0.0875
Final error: 0.0299
Image:  55
Initial error: 0.0702
Final error: 0.0377
Image:  56
Initial error: 0.0628
Final error: 0.0243
Image:  57
Initial error: 0.1196
Final error: 0.0253
Image:  58
Initial error: 0.0631
Final error: 0.0374
Image:  59
Initial error: 0.1177
Final error: 0.0270
Image:  60
Initial error: 0.0603
Final error: 0.0205
Image:  61
Initial error: 0.0649
Final error: 0.0156
Image:  62
Initial error: 0.1629
Final error: 0.0655
Image:  63
Initial error: 0.0608
Final error: 0.0176
Image:  64
Initial error: 0.0788
Final error: 0.0227
Image:  65
Initial error: 0.0771
Final error: 0.0305
Image:  66
Initial error: 0.0846
Final error: 0.0200
Image:  67
Initial error: 0.2149
Final error: 0.0322
Image:  68
Initial error: 0.1047
Final error: 0.0349
Image:  69
Initial error: 0.1714
Final error: 0.1064
Image:  70
Initial error: 0.1157
Final error: 0.0611
Image:  71
Initial error: 0.1058
Final error: 0.0428
Image:  72
Initial error: 0.1104
Final error: 0.0383
Image:  73
Initial error: 0.1724
Final error: 0.1109
Image:  74
Initial error: 0.0464
Final error: 0.0319
Image:  75
Initial error: 0.1102
Final error: 0.0494
Image:  76
Initial error: 0.0949
Final error: 0.0430
Image:  77
Initial error: 0.0995
Final error: 0.0322
Image:  78
Initial error: 0.0719
Final error: 0.0250
Image:  79
Initial error: 0.0628
Final error: 0.0630
Image:  80
Initial error: 0.1308
Final error: 0.0434
Image:  81
Initial error: 0.1367
Final error: 0.0990
Image:  82
Initial error: 0.1637
Final error: 0.0535
Image:  83
Initial error: 0.1269
Final error: 0.0445
Image:  84
Initial error: 0.1102
Final error: 0.0308
Image:  85
Initial error: 0.0818
Final error: 0.0433
Image:  86
Initial error: 0.1766
Final error: 0.0864
Image:  87
Initial error: 0.0934
Final error: 0.0167
Image:  88
Initial error: 0.0418
Final error: 0.0321
Image:  89
Initial error: 0.0886
Final error: 0.0460
Image:  90
Initial error: 0.1258
Final error: 0.0614
Image:  91
Initial error: 0.0489
Final error: 0.0223
Image:  92
Initial error: 0.0956
Final error: 0.0229
Image:  93
Initial error: 0.0658
Final error: 0.0386
Image:  94
Initial error: 0.0786
Final error: 0.0449
Image:  95
Initial error: 0.1918
Final error: 0.1112
Image:  96
Initial error: 0.1299
Final error: 0.0671
Image:  97
Initial error: 0.1210
Final error: 0.0187
Image:  98
Initial error: 0.0856
Final error: 0.0255
Image:  99
Initial error: 0.1375
Final error: 0.0392
Image:  100
Initial error: 0.0593
Final error: 0.0210
Image:  101
Initial error: 0.0869
Final error: 0.0337
Image:  102
Initial error: 0.0817
Final error: 0.0280
Image:  103
Initial error: 0.1382
Final error: 0.0528
Image:  104
Initial error: 0.1578
Final error: 0.1249
Image:  105
Initial error: 0.0874
Final error: 0.0382
Image:  106
Initial error: 0.2077
Final error: 0.1075
Image:  107
Initial error: 0.1324
Final error: 0.0274
Image:  108
Initial error: 0.1055
Final error: 0.0420
Image:  109
Initial error: 0.1302
Final error: 0.0354
Image:  110
Initial error: 0.1379
Final error: 0.0499
Image:  111
Initial error: 0.0599
Final error: 0.0183
Image:  112
Initial error: 0.1084
Final error: 0.0273
Image:  113
Initial error: 0.1501
Final error: 0.0349
Image:  114
Initial error: 0.0477
Final error: 0.0350
Image:  115
Initial error: 0.0861
Final error: 0.0179
Image:  116
Initial error: 0.1213
Final error: 0.0189
Image:  117
Initial error: 0.1751
Final error: 0.0820
Image:  118
Initial error: 0.0756
Final error: 0.0272
Image:  119
Initial error: 0.1130
Final error: 0.0264
Image:  120
Initial error: 0.0687
Final error: 0.0217
Image:  121
Initial error: 0.1403
Final error: 0.0355
Image:  122
Initial error: 0.0762
Final error: 0.0481
Image:  123
Initial error: 0.1050
Final error: 0.0183
Image:  124
Initial error: 0.0718
Final error: 0.0248
Image:  125
Initial error: 0.0936
Final error: 0.0196
Image:  126
Initial error: 0.2169
Final error: 0.1841
Image:  127
Initial error: 0.0602
Final error: 0.0214
Image:  128
Initial error: 0.0877
Final error: 0.0443
Image:  129
Initial error: 0.1520
Final error: 0.0277
Image:  130
Initial error: 0.1036
Final error: 0.0113
Image:  131
Initial error: 0.1785
Final error: 0.0876
Image:  132
Initial error: 0.1500
Final error: 0.0359
Image:  133
Initial error: 0.1255
Final error: 0.0237
Image:  134
Initial error: 0.1118
Final error: 0.0198
Image:  135
Initial error: 0.1121
Final error: 0.0434
Image:  136
Initial error: 0.2011
Final error: 0.0402
Image:  137
Initial error: 0.0632
Final error: 0.0232
Image:  138
Initial error: 0.1907
Final error: 0.2044
Image:  139
Initial error: 0.1717
Final error: 0.0249
Image:  140
Initial error: 0.1810
Final error: 0.0404
Image:  141
Initial error: 0.1418
Final error: 0.0217
Image:  142
Initial error: 0.1339
Final error: 0.0318
Image:  143
Initial error: 0.1093
Final error: 0.0356
Image:  144
Initial error: 0.1221
Final error: 0.0206
Image:  145
Initial error: 0.1485
Final error: 0.0325
Image:  146
Initial error: 0.1633
Final error: 0.0335
Image:  147
Initial error: 0.0487
Final error: 0.0272
Image:  148
Initial error: 0.0864
Final error: 0.0325
Image:  149
Initial error: 0.1623
Final error: 0.0376
Image:  150
Initial error: 0.1255
Final error: 0.0370
Image:  151
Initial error: 0.1928
Final error: 0.2091
Image:  152
Initial error: 0.1197
Final error: 0.0238
Image:  153
Initial error: 0.1100
Final error: 0.0168
Image:  154
Initial error: 0.1213
Final error: 0.0458
Image:  155
Initial error: 0.1632
Final error: 0.0667
Image:  156
Initial error: 0.1736
Final error: 0.0689
Image:  157
Initial error: 0.1291
Final error: 0.0360
Image:  158
Initial error: 0.0720
Final error: 0.0247
Image:  159
Initial error: 0.1199
Final error: 0.0161
Image:  160
Initial error: 0.1569
Final error: 0.0475
Image:  161
Initial error: 0.1061
Final error: 0.0316
Image:  162
Initial error: 0.1884
Final error: 0.0943
Image:  163
Initial error: 0.0689
Final error: 0.0564
Image:  164
Initial error: 0.0830
Final error: 0.0237
Image:  165
Initial error: 0.0618
Final error: 0.0217
Image:  166
Initial error: 0.0975
Final error: 0.0198
Image:  167
Initial error: 0.2169
Final error: 0.0943
Image:  168
Initial error: 0.1002
Final error: 0.0234
Image:  169
Initial error: 0.1054
Final error: 0.0213
Image:  170
Initial error: 0.1108
Final error: 0.0368
Image:  171
Initial error: 0.1580
Final error: 0.0324
Image:  172
Initial error: 0.1476
Final error: 0.0201
Image:  173
Initial error: 0.0963
Final error: 0.0612
Image:  174
Initial error: 0.1308
Final error: 0.0259
Image:  175
Initial error: 0.0971
Final error: 0.0415
Image:  176
Initial error: 0.0800
Final error: 0.0321
Image:  177
Initial error: 0.1530
Final error: 0.1010
Image:  178
Initial error: 0.1115
Final error: 0.0319
Image:  179
Initial error: 0.1162
Final error: 0.0329
Image:  180
Initial error: 0.0532
Final error: 0.0210
Image:  181
Initial error: 0.1252
Final error: 0.0410
Image:  182
Initial error: 0.0644
Final error: 0.0323
Image:  183
Initial error: 0.1919
Final error: 0.0845
Image:  184
Initial error: 0.1198
Final error: 0.0537
Image:  185
Initial error: 0.0981
Final error: 0.0376
Image:  186
Initial error: 0.1389
Final error: 0.0544
Image:  187
Initial error: 0.2075
Final error: 0.1053
Image:  188
Initial error: 0.1509
Final error: 0.0604
Image:  189
Initial error: 0.0969
Final error: 0.0171
Image:  190
Initial error: 0.1343
Final error: 0.0241
Image:  191
Initial error: 0.1542
Final error: 0.0411
Image:  192
Initial error: 0.1105
Final error: 0.0661
Image:  193
Initial error: 0.1773
Final error: 0.0994
Image:  194
Initial error: 0.0755
Final error: 0.0357
Image:  195
Initial error: 0.1753
Final error: 0.0958
Image:  196
Initial error: 0.0954
Final error: 0.0261
Image:  197
Initial error: 0.1211
Final error: 0.0222
Image:  198
Initial error: 0.1498
Final error: 0.0287
Image:  199
Initial error: 0.2054
Final error: 0.1555
Image:  200
Initial error: 0.0402
Final error: 0.0374
Image:  201
Initial error: 0.0563
Final error: 0.0257
Image:  202
Initial error: 0.1061
Final error: 0.0184
Image:  203
Initial error: 0.1475
Final error: 0.0224
Image:  204
Initial error: 0.0853
Final error: 0.0328
Image:  205
Initial error: 0.1535
Final error: 0.0280
Image:  206
Initial error: 0.1282
Final error: 0.0295
Image:  207
Initial error: 0.1849
Final error: 0.1950
Image:  208
Initial error: 0.1432
Final error: 0.0282
Image:  209
Initial error: 0.0608
Final error: 0.0447
Image:  210
Initial error: 0.1488
Final error: 0.0460
Image:  211
Initial error: 0.0441
Final error: 0.0279
Image:  212
Initial error: 0.1670
Final error: 0.0866
Image:  213
Initial error: 0.1190
Final error: 0.0273
Image:  214
Initial error: 0.1274
Final error: 0.1402
Image:  215
Initial error: 0.0845
Final error: 0.0443
Image:  216
Initial error: 0.0577
Final error: 0.0305
Image:  217
Initial error: 0.1004
Final error: 0.0344
Image:  218
Initial error: 0.1002
Final error: 0.0251
Image:  219
Initial error: 0.1394
Final error: 0.0287
Image:  220
Initial error: 0.0483
Final error: 0.0259
Image:  221
Initial error: 0.0779
Final error: 0.0334
Image:  222
Initial error: 0.1936
Final error: 0.1406
Image:  223
Initial error: 0.1880
Final error: 0.1001
Image:  224
Initial error: 0.1272
Final error: 0.0140
Image:  225
Initial error: 0.1701
Final error: 0.0405
Image:  226
Initial error: 0.2303
Final error: 0.1456
Image:  227
Initial error: 0.1417
Final error: 0.0273
Image:  228
Initial error: 0.1365
Final error: 0.0583
Image:  229
Initial error: 0.0500
Final error: 0.0219
Image:  230
Initial error: 0.2228
Final error: 0.1264
Image:  231
Initial error: 0.1710
Final error: 0.0478
Image:  232
Initial error: 0.1581
Final error: 0.0629
Image:  233
Initial error: 0.1730
Final error: 0.0198
Image:  234
Initial error: 0.1757
Final error: 0.0853
Image:  235
Initial error: 0.2150
Final error: 0.1747
Image:  236
Initial error: 0.0897
Final error: 0.0318
Image:  237
Initial error: 0.1069
Final error: 0.0233
Image:  238
Initial error: 0.0798
Final error: 0.0309
Image:  239
Initial error: 0.1332
Final error: 0.0324
Image:  240
Initial error: 0.0845
Final error: 0.0233
Image:  241
Initial error: 0.1385
Final error: 0.0643
Image:  242
Initial error: 0.1196
Final error: 0.0287
Image:  243
Initial error: 0.1181
Final error: 0.0246
Image:  244
Initial error: 0.0739
Final error: 0.0139
Image:  245
Initial error: 0.2007
Final error: 0.1507
Image:  246
Initial error: 0.1263
Final error: 0.0420
Image:  247
Initial error: 0.0679
Final error: 0.0450
Image:  248
Initial error: 0.1160
Final error: 0.0180
Image:  249
Initial error: 0.1809
Final error: 0.0241
Image:  250
Initial error: 0.0857
Final error: 0.0348
Image:  251
Initial error: 0.1399
Final error: 0.0492
Image:  252
Initial error: 0.1658
Final error: 0.1054
Image:  253
Initial error: 0.0934
Final error: 0.0342
Image:  254
Initial error: 0.1092
Final error: 0.0695
Image:  255
Initial error: 0.0671
Final error: 0.0240
Image:  256
Initial error: 0.1590
Final error: 0.0336
Image:  257
Initial error: 0.0474
Final error: 0.0276
Image:  258
Initial error: 0.1141
Final error: 0.0237
Image:  259
Initial error: 0.2288
Final error: 0.0824
Image:  260
Initial error: 0.2038
Final error: 0.1256
Image:  261
Initial error: 0.0449
Final error: 0.0218
Image:  262
Initial error: 0.1168
Final error: 0.0197
Image:  263
Initial error: 0.1009
Final error: 0.0532
Image:  264
Initial error: 0.1506
Final error: 0.0334
Image:  265
Initial error: 0.0329
Final error: 0.0347
Image:  266
Initial error: 0.0395
Final error: 0.0263
Image:  267
Initial error: 0.1076
Final error: 0.0328
Image:  268
Initial error: 0.0802
Final error: 0.0395
Image:  269
Initial error: 0.0700
Final error: 0.0326
Image:  270
Initial error: 0.2035
Final error: 0.0831
Image:  271
Initial error: 0.1157
Final error: 0.0262
Image:  272
Initial error: 0.0658
Final error: 0.0204
Image:  273
Initial error: 0.1080
Final error: 0.0308
Image:  274
Initial error: 0.0964
Final error: 0.0345
Image:  275
Initial error: 0.1078
Final error: 0.0375
Image:  276
Initial error: 0.0474
Final error: 0.0289
Image:  277
Initial error: 0.1275
Final error: 0.0233
Image:  278
Initial error: 0.1897
Final error: 0.0831
Image:  279
Initial error: 0.0558
Final error: 0.0263
Image:  280
Initial error: 0.1083
Final error: 0.0248
Image:  281
Initial error: 0.1548
Final error: 0.0524
Image:  282
Initial error: 0.1325
Final error: 0.0148
Image:  283
Initial error: 0.0937
Final error: 0.0287
Image:  284
Initial error: 0.0618
Final error: 0.0288
Image:  285
Initial error: 0.1458
Final error: 0.0243
Image:  286
Initial error: 0.0591
Final error: 0.0125
Image:  287
Initial error: 0.0842
Final error: 0.0135
Image:  288
Initial error: 0.1267
Final error: 0.0255
Image:  289
Initial error: 0.1257
Final error: 0.0212
Image:  290
Initial error: 0.0738
Final error: 0.0242
Image:  291
Initial error: 0.1325
Final error: 0.0197
Image:  292
Initial error: 0.0897
Final error: 0.0147
Image:  293
Initial error: 0.0670
Final error: 0.0201
Image:  294
Initial error: 0.0917
Final error: 0.0224
Image:  295
Initial error: 0.0747
Final error: 0.0449
Image:  296
Initial error: 0.0768
Final error: 0.0420
Image:  297
Initial error: 0.1124
Final error: 0.0263
Image:  298
Initial error: 0.1395
Final error: 0.0300
Image:  299
Initial error: 0.0952
Final error: 0.0346
Image:  300
Initial error: 0.0443
Final error: 0.0346
Image:  301
Initial error: 0.1195
Final error: 0.0245
Image:  302
Initial error: 0.1256
Final error: 0.0170
Image:  303
Initial error: 0.0674
Final error: 0.0495
Image:  304
Initial error: 0.0891
Final error: 0.0205
Image:  305
Initial error: 0.0607
Final error: 0.0357
Image:  306
Initial error: 0.0762
Final error: 0.0289
Image:  307
Initial error: 0.0390
Final error: 0.0365
Image:  308
Initial error: 0.2159
Final error: 0.1346
Image:  309
Initial error: 0.0603
Final error: 0.0188
Image:  310
Initial error: 0.1415
Final error: 0.0467
Image:  311
Initial error: 0.0542
Final error: 0.0484
Image:  312
Initial error: 0.0906
Final error: 0.0292
Image:  313
Initial error: 0.0804
Final error: 0.0302
Image:  314
Initial error: 0.1737
Final error: 0.0668
Image:  315
Initial error: 0.1567
Final error: 0.1169
Image:  316
Initial error: 0.1774
Final error: 0.1000
Image:  317
Initial error: 0.1453
Final error: 0.1368
Image:  318
Initial error: 0.1510
Final error: 0.0797
Image:  319
Initial error: 0.0827
Final error: 0.0277
Image:  320
Initial error: 0.0836
Final error: 0.0243
Image:  321
Initial error: 0.0788
Final error: 0.0250
Image:  322
Initial error: 0.0683
Final error: 0.0241
Image:  323
Initial error: 0.1261
Final error: 0.0338
Image:  324
Initial error: 0.1481
Final error: 0.0255
Image:  325
Initial error: 0.0809
Final error: 0.0541
Image:  326
Initial error: 0.1241
Final error: 0.0434
Image:  327
Initial error: 0.0524
Final error: 0.0236
Image:  328
Initial error: 0.0725
Final error: 0.0238
Image:  329
Initial error: 0.1324
Final error: 0.0224
Image:  330
Initial error: 0.0753
Final error: 0.0280
Image:  331
Initial error: 0.0441
Final error: 0.0262
Image:  332
Initial error: 0.0566
Final error: 0.0346
Image:  333
Initial error: 0.1139
Final error: 0.0218
Image:  334
Initial error: 0.0824
Final error: 0.0237
Image:  335
Initial error: 0.0819
Final error: 0.0454
Image:  336
Initial error: 0.0859
Final error: 0.0238
Image:  337
Initial error: 0.2034
Final error: 0.0214
Image:  338
Initial error: 0.0722
Final error: 0.0272
Image:  339
Initial error: 0.1232
Final error: 0.0269
Image:  340
Initial error: 0.0748
Final error: 0.0305
Image:  341
Initial error: 0.0740
Final error: 0.0266
Image:  342
Initial error: 0.1161
Final error: 0.0254
Image:  343
Initial error: 0.1158
Final error: 0.0174
Image:  344
Initial error: 0.1199
Final error: 0.0303
Image:  345
Initial error: 0.1984
Final error: 0.1420
Image:  346
Initial error: 0.0439
Final error: 0.0372
Image:  347
Initial error: 0.0689
Final error: 0.0240
Image:  348
Initial error: 0.0739
Final error: 0.0269
Image:  349
Initial error: 0.0555
Final error: 0.0314
Image:  350
Initial error: 0.1362
Final error: 0.0158
Image:  351
Initial error: 0.0440
Final error: 0.0300
Image:  352
Initial error: 0.0788
Final error: 0.0271
Image:  353
Initial error: 0.1450
Final error: 0.0253
Image:  354
Initial error: 0.0965
Final error: 0.0259
Image:  355
Initial error: 0.0527
Final error: 0.0464
Image:  356
Initial error: 0.0737
Final error: 0.0191
Image:  357
Initial error: 0.2208
Final error: 0.1438
Image:  358
Initial error: 0.0736
Final error: 0.0390
Image:  359
Initial error: 0.1433
Final error: 0.0815
Image:  360
Initial error: 0.0562
Final error: 0.0219
Image:  361
Initial error: 0.1793
Final error: 0.0237
Image:  362
Initial error: 0.1413
Final error: 0.0321
Image:  363
Initial error: 0.0653
Final error: 0.0910
Image:  364
Initial error: 0.1447
Final error: 0.0511
Image:  365
Initial error: 0.1107
Final error: 0.0191
Image:  366
Initial error: 0.0921
Final error: 0.0267
Image:  367
Initial error: 0.0530
Final error: 0.0312
Image:  368
Initial error: 0.1093
Final error: 0.0195
Image:  369
Initial error: 0.0444
Final error: 0.0302
Image:  370
Initial error: 0.1360
Final error: 0.0878
Image:  371
Initial error: 0.1394
Final error: 0.0296
Image:  372
Initial error: 0.0796
Final error: 0.0256
Image:  373
Initial error: 0.1550
Final error: 0.0709
Image:  374
Initial error: 0.1988
Final error: 0.1586
Image:  375
Initial error: 0.1767
Final error: 0.1521
Image:  376
Initial error: 0.1769
Final error: 0.0933
Image:  377
Initial error: 0.1535
Final error: 0.0342
Image:  378
Initial error: 0.0677
Final error: 0.0444
Image:  379
Initial error: 0.1463
Final error: 0.0372
Image:  380
Initial error: 0.1646
Final error: 0.0849
Image:  381
Initial error: 0.0942
Final error: 0.0377
Image:  382
Initial error: 0.0990
Final error: 0.0210
Image:  383
Initial error: 0.1384
Final error: 0.0185
Image:  384
Initial error: 0.0973
Final error: 0.0420
Image:  385
Initial error: 0.1129
Final error: 0.0280
Image:  386
Initial error: 0.0595
Final error: 0.0257
Image:  387
Initial error: 0.0579
Final error: 0.0411
Image:  388
Initial error: 0.1683
Final error: 0.0344
Image:  389
Initial error: 0.0694
Final error: 0.0317
Image:  390
Initial error: 0.1295
Final error: 0.0512
Image:  391
Initial error: 0.0731
Final error: 0.0261
Image:  392
Initial error: 0.1297
Final error: 0.0892
Image:  393
Initial error: 0.0529
Final error: 0.0338
Image:  394
Initial error: 0.0804
Final error: 0.0167
Image:  395
Initial error: 0.1809
Final error: 0.0487
Image:  396
Initial error: 0.1456
Final error: 0.0189
Image:  397
Initial error: 0.1298
Final error: 0.0457
Image:  398
Initial error: 0.1081
Final error: 0.0384
Image:  399
Initial error: 0.1478
Final error: 0.0525
Image:  400
Initial error: 0.0678
Final error: 0.0200
Image:  401
Initial error: 0.0719
Final error: 0.0254
Image:  402
Initial error: 0.1275
Final error: 0.0258
Image:  403
Initial error: 0.1354
Final error: 0.0180
Image:  404
Initial error: 0.1277
Final error: 0.0920
Image:  405
Initial error: 0.1451
Final error: 0.0305
Image:  406
Initial error: 0.0704
Final error: 0.0349
Image:  407
Initial error: 0.0865
Final error: 0.0449
Image:  408
Initial error: 0.1185
Final error: 0.0278
Image:  409
Initial error: 0.1144
Final error: 0.0269
Image:  410
Initial error: 0.1012
Final error: 0.0242
Image:  411
Initial error: 0.0942
Final error: 0.0356
Image:  412
Initial error: 0.0580
Final error: 0.0182
Image:  413
Initial error: 0.1524
Final error: 0.0193
Image:  414
Initial error: 0.0916
Final error: 0.0386
Image:  415
Initial error: 0.1738
Final error: 0.0195
Image:  416
Initial error: 0.0628
Final error: 0.0221
Image:  417
Initial error: 0.1059
Final error: 0.0336
Image:  418
Initial error: 0.0642
Final error: 0.0195
Image:  419
Initial error: 0.0799
Final error: 0.0247
Image:  420
Initial error: 0.1781
Final error: 0.1023

Visualize Results


In [11]:
from menpofit.visualize import visualize_fitting_results
    
visualize_fitting_results(fitter_results)


Save Results


In [12]:
from alabortcvpr2015.utils import pickle_dump
from alabortcvpr2015.result import SerializableResult

results = [SerializableResult('none', fr.final_shape, fr.n_iters, 'AIC', fr.gt_shape) 
           for fr in fitter_results]

pickle_dump(results, '/data/PhD/Results/aam_aic_view1_fast_dsift')

Timing

Total


In [13]:
%timeit fitter.fit(i, s, gt_shape=gt_s, max_iters=20)


10 loops, best of 3: 81.2 ms per loop

Per line


In [ ]:
#import line_profiler
#import IPython

#ip = IPython.get_ipython()
#ip.define_magic('lprun', line_profiler.magic_lprun)

In [ ]:
#from alabortcvpr2015.aam import AIC

#%lprun -f AIC.run fitter.fit(i, s, gt_shape=gt_s, max_iters=20)

PIC

Test


In [14]:
sampling_mask = np.require(np.zeros(aam.parts_shape), dtype=np.bool)
sampling_mask[::2, ::2] = True


imshow(sampling_mask)


Out[14]:
<matplotlib.image.AxesImage at 0x7f2444484c50>

In [15]:
from alabortcvpr2015.aam import PartsAAMFitter, PIC
                  
fitter = PartsAAMFitter(aam, algorithm_cls=PIC, n_shape=[3, 12],
                        n_appearance=[25, 50], sampling_mask=sampling_mask)

In [17]:
fitter_results = []

for seed in xrange(repeat):
    
    np.random.seed(seed=seed)

    for j, i in enumerate(test_images):
    

        gt_s = i.landmarks[group].lms
        s = fitter.perturb_shape(gt_s, noise_std=0.05)

        fr = fitter.fit(i, s, gt_shape=gt_s, max_iters=20, prior=False)

        fitter_results.append(fr)
        fr.downscale = 0.5

        print 'Image: ', j
        print fr


Image:  0
Initial error: 0.2243
Final error: 0.0457
Image:  1
Initial error: 0.1145
Final error: 0.0584
Image:  2
Initial error: 0.0961
Final error: 0.0416
Image:  3
Initial error: 0.0782
Final error: 0.0190
Image:  4
Initial error: 0.0530
Final error: 0.0169
Image:  5
Initial error: 0.1533
Final error: 0.0364
Image:  6
Initial error: 0.0994
Final error: 0.0529
Image:  7
Initial error: 0.0817
Final error: 0.0558
Image:  8
Initial error: 0.1135
Final error: 0.0738
Image:  9
Initial error: 0.0767
Final error: 0.0694
Image:  10
Initial error: 0.1494
Final error: 0.0282
Image:  11
Initial error: 0.0814
Final error: 0.0350
Image:  12
Initial error: 0.1664
Final error: 0.1094
Image:  13
Initial error: 0.0927
Final error: 0.0404
Image:  14
Initial error: 0.0548
Final error: 0.0285
Image:  15
Initial error: 0.1583
Final error: 0.0577
Image:  16
Initial error: 0.0644
Final error: 0.0302
Image:  17
Initial error: 0.0661
Final error: 0.0401
Image:  18
Initial error: 0.0455
Final error: 0.0194
Image:  19
Initial error: 0.0641
Final error: 0.0389
Image:  20
Initial error: 0.1780
Final error: 0.0307
Image:  21
Initial error: 0.0843
Final error: 0.0834
Image:  22
Initial error: 0.0727
Final error: 0.0254
Image:  23
Initial error: 0.0499
Final error: 0.0487
Image:  24
Initial error: 0.0585
Final error: 0.0255
Image:  25
Initial error: 0.1300
Final error: 0.0280
Image:  26
Initial error: 0.1212
Final error: 0.0411
Image:  27
Initial error: 0.1534
Final error: 0.0380
Image:  28
Initial error: 0.0709
Final error: 0.0205
Image:  29
Initial error: 0.1113
Final error: 0.0450
Image:  30
Initial error: 0.1458
Final error: 0.0357
Image:  31
Initial error: 0.1072
Final error: 0.0263
Image:  32
Initial error: 0.0633
Final error: 0.0520
Image:  33
Initial error: 0.0607
Final error: 0.0646
Image:  34
Initial error: 0.0859
Final error: 0.0152
Image:  35
Initial error: 0.0635
Final error: 0.0228
Image:  36
Initial error: 0.1539
Final error: 0.0401
Image:  37
Initial error: 0.0932
Final error: 0.0467
Image:  38
Initial error: 0.1046
Final error: 0.0341
Image:  39
Initial error: 0.0648
Final error: 0.0296
Image:  40
Initial error: 0.0476
Final error: 0.0355
Image:  41
Initial error: 0.1738
Final error: 0.0380
Image:  42
Initial error: 0.1014
Final error: 0.0292
Image:  43
Initial error: 0.1115
Final error: 0.0386
Image:  44
Initial error: 0.0671
Final error: 0.0513
Image:  45
Initial error: 0.1683
Final error: 0.0704
Image:  46
Initial error: 0.0883
Final error: 0.0350
Image:  47
Initial error: 0.0934
Final error: 0.0268
Image:  48
Initial error: 0.1439
Final error: 0.0442
Image:  49
Initial error: 0.1628
Final error: 0.0317
Image:  50
Initial error: 0.0734
Final error: 0.0516
Image:  51
Initial error: 0.0904
Final error: 0.0328
Image:  52
Initial error: 0.0389
Final error: 0.0267
Image:  53
Initial error: 0.0769
Final error: 0.0392
Image:  54
Initial error: 0.0875
Final error: 0.0297
Image:  55
Initial error: 0.0702
Final error: 0.0395
Image:  56
Initial error: 0.0628
Final error: 0.0276
Image:  57
Initial error: 0.1196
Final error: 0.0543
Image:  58
Initial error: 0.0631
Final error: 0.0385
Image:  59
Initial error: 0.1177
Final error: 0.0420
Image:  60
Initial error: 0.0603
Final error: 0.0314
Image:  61
Initial error: 0.0649
Final error: 0.0181
Image:  62
Initial error: 0.1629
Final error: 0.0723
Image:  63
Initial error: 0.0608
Final error: 0.0347
Image:  64
Initial error: 0.0788
Final error: 0.0291
Image:  65
Initial error: 0.0771
Final error: 0.0217
Image:  66
Initial error: 0.0846
Final error: 0.0431
Image:  67
Initial error: 0.2149
Final error: 0.0397
Image:  68
Initial error: 0.1047
Final error: 0.0501
Image:  69
Initial error: 0.1714
Final error: 0.1245
Image:  70
Initial error: 0.1157
Final error: 0.1358
Image:  71
Initial error: 0.1058
Final error: 0.0760
Image:  72
Initial error: 0.1104
Final error: 0.0404
Image:  73
Initial error: 0.1724
Final error: 0.0316
Image:  74
Initial error: 0.0464
Final error: 0.0394
Image:  75
Initial error: 0.1102
Final error: 0.0696
Image:  76
Initial error: 0.0949
Final error: 0.0259
Image:  77
Initial error: 0.0995
Final error: 0.0321
Image:  78
Initial error: 0.0719
Final error: 0.0548
Image:  79
Initial error: 0.0628
Final error: 0.0670
Image:  80
Initial error: 0.1308
Final error: 0.0425
Image:  81
Initial error: 0.1367
Final error: 0.0315
Image:  82
Initial error: 0.1637
Final error: 0.0383
Image:  83
Initial error: 0.1269
Final error: 0.0570
Image:  84
Initial error: 0.1102
Final error: 0.0405
Image:  85
Initial error: 0.0818
Final error: 0.0505
Image:  86
Initial error: 0.1766
Final error: 0.0433
Image:  87
Initial error: 0.0934
Final error: 0.0324
Image:  88
Initial error: 0.0418
Final error: 0.0405
Image:  89
Initial error: 0.0886
Final error: 0.0467
Image:  90
Initial error: 0.1258
Final error: 0.0987
Image:  91
Initial error: 0.0489
Final error: 0.0361
Image:  92
Initial error: 0.0956
Final error: 0.0258
Image:  93
Initial error: 0.0658
Final error: 0.0387
Image:  94
Initial error: 0.0786
Final error: 0.0470
Image:  95
Initial error: 0.1918
Final error: 0.0398
Image:  96
Initial error: 0.1299
Final error: 0.0327
Image:  97
Initial error: 0.1210
Final error: 0.0462
Image:  98
Initial error: 0.0856
Final error: 0.0315
Image:  99
Initial error: 0.1375
Final error: 0.0250
Image:  100
Initial error: 0.0593
Final error: 0.0539
Image:  101
Initial error: 0.0869
Final error: 0.0351
Image:  102
Initial error: 0.0817
Final error: 0.0260
Image:  103
Initial error: 0.1382
Final error: 0.0839
Image:  104
Initial error: 0.1578
Final error: 0.2586
Image:  105
Initial error: 0.0874
Final error: 0.0489
Image:  106
Initial error: 0.2077
Final error: 0.0883
Image:  107
Initial error: 0.1324
Final error: 0.0208
Image:  108
Initial error: 0.1055
Final error: 0.1131
Image:  109
Initial error: 0.1302
Final error: 0.0243
Image:  110
Initial error: 0.1379
Final error: 0.0609
Image:  111
Initial error: 0.0599
Final error: 0.0283
Image:  112
Initial error: 0.1084
Final error: 0.0271
Image:  113
Initial error: 0.1501
Final error: 0.0387
Image:  114
Initial error: 0.0477
Final error: 0.0469
Image:  115
Initial error: 0.0861
Final error: 0.0236
Image:  116
Initial error: 0.1213
Final error: 0.0256
Image:  117
Initial error: 0.1751
Final error: 0.1856
Image:  118
Initial error: 0.0756
Final error: 0.0343
Image:  119
Initial error: 0.1130
Final error: 0.0981
Image:  120
Initial error: 0.0687
Final error: 0.0309
Image:  121
Initial error: 0.1403
Final error: 0.0411
Image:  122
Initial error: 0.0762
Final error: 0.0274
Image:  123
Initial error: 0.1050
Final error: 0.0238
Image:  124
Initial error: 0.0718
Final error: 0.0320
Image:  125
Initial error: 0.0936
Final error: 0.0420
Image:  126
Initial error: 0.2169
Final error: 0.0250
Image:  127
Initial error: 0.0602
Final error: 0.0532
Image:  128
Initial error: 0.0877
Final error: 0.0542
Image:  129
Initial error: 0.1520
Final error: 0.1757
Image:  130
Initial error: 0.1036
Final error: 0.0222
Image:  131
Initial error: 0.1785
Final error: 0.1461
Image:  132
Initial error: 0.1500
Final error: 0.0259
Image:  133
Initial error: 0.1255
Final error: 0.0640
Image:  134
Initial error: 0.1118
Final error: 0.0227
Image:  135
Initial error: 0.1121
Final error: 0.0470
Image:  136
Initial error: 0.2011
Final error: 0.0401
Image:  137
Initial error: 0.0632
Final error: 0.0364
Image:  138
Initial error: 0.1907
Final error: 0.1719
Image:  139
Initial error: 0.1717
Final error: 0.0231
Image:  140
Initial error: 0.1810
Final error: 0.1464
Image:  141
Initial error: 0.1418
Final error: 0.0362
Image:  142
Initial error: 0.1339
Final error: 0.0376
Image:  143
Initial error: 0.1093
Final error: 0.0508
Image:  144
Initial error: 0.1221
Final error: 0.0302
Image:  145
Initial error: 0.1485
Final error: 0.0501
Image:  146
Initial error: 0.1633
Final error: 0.0756
Image:  147
Initial error: 0.0487
Final error: 0.0283
Image:  148
Initial error: 0.0864
Final error: 0.0356
Image:  149
Initial error: 0.1623
Final error: 0.0541
Image:  150
Initial error: 0.1255
Final error: 0.0474
Image:  151
Initial error: 0.1928
Final error: 0.1229
Image:  152
Initial error: 0.1197
Final error: 0.0323
Image:  153
Initial error: 0.1100
Final error: 0.0400
Image:  154
Initial error: 0.1213
Final error: 0.0662
Image:  155
Initial error: 0.1632
Final error: 0.0463
Image:  156
Initial error: 0.1736
Final error: 0.0360
Image:  157
Initial error: 0.1291
Final error: 0.0661
Image:  158
Initial error: 0.0720
Final error: 0.0239
Image:  159
Initial error: 0.1199
Final error: 0.0549
Image:  160
Initial error: 0.1569
Final error: 0.0465
Image:  161
Initial error: 0.1061
Final error: 0.0335
Image:  162
Initial error: 0.1884
Final error: 0.0986
Image:  163
Initial error: 0.0689
Final error: 0.0476
Image:  164
Initial error: 0.0830
Final error: 0.0228
Image:  165
Initial error: 0.0618
Final error: 0.0182
Image:  166
Initial error: 0.0975
Final error: 0.0206
Image:  167
Initial error: 0.2169
Final error: 0.0283
Image:  168
Initial error: 0.1002
Final error: 0.0400
Image:  169
Initial error: 0.1054
Final error: 0.0265
Image:  170
Initial error: 0.1108
Final error: 0.0659
Image:  171
Initial error: 0.1580
Final error: 0.0346
Image:  172
Initial error: 0.1476
Final error: 0.0284
Image:  173
Initial error: 0.0963
Final error: 0.1398
Image:  174
Initial error: 0.1308
Final error: 0.0309
Image:  175
Initial error: 0.0971
Final error: 0.0430
Image:  176
Initial error: 0.0800
Final error: 0.0418
Image:  177
Initial error: 0.1530
Final error: 0.3077
Image:  178
Initial error: 0.1115
Final error: 0.0348
Image:  179
Initial error: 0.1162
Final error: 0.0312
Image:  180
Initial error: 0.0532
Final error: 0.0471
Image:  181
Initial error: 0.1252
Final error: 0.0329
Image:  182
Initial error: 0.0644
Final error: 0.0363
Image:  183
Initial error: 0.1919
Final error: 0.0334
Image:  184
Initial error: 0.1198
Final error: 0.0702
Image:  185
Initial error: 0.0981
Final error: 0.0547
Image:  186
Initial error: 0.1389
Final error: 0.0277
Image:  187
Initial error: 0.2075
Final error: 0.0261
Image:  188
Initial error: 0.1509
Final error: 0.0277
Image:  189
Initial error: 0.0969
Final error: 0.0171
Image:  190
Initial error: 0.1343
Final error: 0.0206
Image:  191
Initial error: 0.1542
Final error: 0.0493
Image:  192
Initial error: 0.1105
Final error: 0.0254
Image:  193
Initial error: 0.1773
Final error: 0.0312
Image:  194
Initial error: 0.0755
Final error: 0.0485
Image:  195
Initial error: 0.1753
Final error: 0.2589
Image:  196
Initial error: 0.0954
Final error: 0.0332
Image:  197
Initial error: 0.1211
Final error: 0.0387
Image:  198
Initial error: 0.1498
Final error: 0.0855
Image:  199
Initial error: 0.2054
Final error: 0.1022
Image:  200
Initial error: 0.0402
Final error: 0.0336
Image:  201
Initial error: 0.0563
Final error: 0.0259
Image:  202
Initial error: 0.1061
Final error: 0.0259
Image:  203
Initial error: 0.1475
Final error: 0.0248
Image:  204
Initial error: 0.0853
Final error: 0.0495
Image:  205
Initial error: 0.1535
Final error: 0.0299
Image:  206
Initial error: 0.1282
Final error: 0.0549
Image:  207
Initial error: 0.1849
Final error: 0.2298
Image:  208
Initial error: 0.1432
Final error: 0.0432
Image:  209
Initial error: 0.0608
Final error: 0.0424
Image:  210
Initial error: 0.1488
Final error: 0.0569
Image:  211
Initial error: 0.0441
Final error: 0.0265
Image:  212
Initial error: 0.1670
Final error: 0.0360
Image:  213
Initial error: 0.1190
Final error: 0.0376
Image:  214
Initial error: 0.1274
Final error: 0.0517
Image:  215
Initial error: 0.0845
Final error: 0.0388
Image:  216
Initial error: 0.0577
Final error: 0.0550
Image:  217
Initial error: 0.1004
Final error: 0.0505
Image:  218
Initial error: 0.1002
Final error: 0.0201
Image:  219
Initial error: 0.1394
Final error: 0.0284
Image:  220
Initial error: 0.0483
Final error: 0.0524
Image:  221
Initial error: 0.0779
Final error: 0.0447
Image:  222
Initial error: 0.1936
Final error: 0.0899
Image:  223
Initial error: 0.1880
Final error: 0.0670
Image:  224
Initial error: 0.1272
Final error: 0.0283
Image:  225
Initial error: 0.1701
Final error: 0.0285
Image:  226
Initial error: 0.2303
Final error: 0.1327
Image:  227
Initial error: 0.1417
Final error: 0.0278
Image:  228
Initial error: 0.1365
Final error: 0.0611
Image:  229
Initial error: 0.0500
Final error: 0.0193
Image:  230
Initial error: 0.2228
Final error: 0.1222
Image:  231
Initial error: 0.1710
Final error: 0.0382
Image:  232
Initial error: 0.1581
Final error: 0.1939
Image:  233
Initial error: 0.1730
Final error: 0.0417
Image:  234
Initial error: 0.1757
Final error: 0.0561
Image:  235
Initial error: 0.2150
Final error: 0.1152
Image:  236
Initial error: 0.0897
Final error: 0.0338
Image:  237
Initial error: 0.1069
Final error: 0.0211
Image:  238
Initial error: 0.0798
Final error: 0.0422
Image:  239
Initial error: 0.1332
Final error: 0.0504
Image:  240
Initial error: 0.0845
Final error: 0.0271
Image:  241
Initial error: 0.1385
Final error: 0.0324
Image:  242
Initial error: 0.1196
Final error: 0.0343
Image:  243
Initial error: 0.1181
Final error: 0.0370
Image:  244
Initial error: 0.0739
Final error: 0.0316
Image:  245
Initial error: 0.2007
Final error: 0.1559
Image:  246
Initial error: 0.1263
Final error: 0.0690
Image:  247
Initial error: 0.0679
Final error: 0.0525
Image:  248
Initial error: 0.1160
Final error: 0.0373
Image:  249
Initial error: 0.1809
Final error: 0.0596
Image:  250
Initial error: 0.0857
Final error: 0.0379
Image:  251
Initial error: 0.1399
Final error: 0.0442
Image:  252
Initial error: 0.1658
Final error: 0.0331
Image:  253
Initial error: 0.0934
Final error: 0.0274
Image:  254
Initial error: 0.1092
Final error: 0.1374
Image:  255
Initial error: 0.0671
Final error: 0.0251
Image:  256
Initial error: 0.1590
Final error: 0.0307
Image:  257
Initial error: 0.0474
Final error: 0.0304
Image:  258
Initial error: 0.1141
Final error: 0.0288
Image:  259
Initial error: 0.2288
Final error: 0.0801
Image:  260
Initial error: 0.2038
Final error: 0.1109
Image:  261
Initial error: 0.0449
Final error: 0.0258
Image:  262
Initial error: 0.1168
Final error: 0.0311
Image:  263
Initial error: 0.1009
Final error: 0.0493
Image:  264
Initial error: 0.1506
Final error: 0.1323
Image:  265
Initial error: 0.0329
Final error: 0.0397
Image:  266
Initial error: 0.0395
Final error: 0.0293
Image:  267
Initial error: 0.1076
Final error: 0.0270
Image:  268
Initial error: 0.0802
Final error: 0.0645
Image:  269
Initial error: 0.0700
Final error: 0.0720
Image:  270
Initial error: 0.2035
Final error: 0.0601
Image:  271
Initial error: 0.1157
Final error: 0.0315
Image:  272
Initial error: 0.0658
Final error: 0.0176
Image:  273
Initial error: 0.1080
Final error: 0.0244
Image:  274
Initial error: 0.0964
Final error: 0.0357
Image:  275
Initial error: 0.1078
Final error: 0.0206
Image:  276
Initial error: 0.0474
Final error: 0.0375
Image:  277
Initial error: 0.1275
Final error: 0.0228
Image:  278
Initial error: 0.1897
Final error: 0.0914
Image:  279
Initial error: 0.0558
Final error: 0.0353
Image:  280
Initial error: 0.1083
Final error: 0.0394
Image:  281
Initial error: 0.1548
Final error: 0.0754
Image:  282
Initial error: 0.1325
Final error: 0.0223
Image:  283
Initial error: 0.0937
Final error: 0.0442
Image:  284
Initial error: 0.0618
Final error: 0.0291
Image:  285
Initial error: 0.1458
Final error: 0.0350
Image:  286
Initial error: 0.0591
Final error: 0.0210
Image:  287
Initial error: 0.0842
Final error: 0.0210
Image:  288
Initial error: 0.1267
Final error: 0.0350
Image:  289
Initial error: 0.1257
Final error: 0.0301
Image:  290
Initial error: 0.0738
Final error: 0.0297
Image:  291
Initial error: 0.1325
Final error: 0.2274
Image:  292
Initial error: 0.0897
Final error: 0.0246
Image:  293
Initial error: 0.0670
Final error: 0.0302
Image:  294
Initial error: 0.0917
Final error: 0.0254
Image:  295
Initial error: 0.0747
Final error: 0.0292
Image:  296
Initial error: 0.0768
Final error: 0.0212
Image:  297
Initial error: 0.1124
Final error: 0.0428
Image:  298
Initial error: 0.1395
Final error: 0.0340
Image:  299
Initial error: 0.0952
Final error: 0.0327
Image:  300
Initial error: 0.0443
Final error: 0.0331
Image:  301
Initial error: 0.1195
Final error: 0.0254
Image:  302
Initial error: 0.1256
Final error: 0.0356
Image:  303
Initial error: 0.0674
Final error: 0.0434
Image:  304
Initial error: 0.0891
Final error: 0.0443
Image:  305
Initial error: 0.0607
Final error: 0.0356
Image:  306
Initial error: 0.0762
Final error: 0.0339
Image:  307
Initial error: 0.0390
Final error: 0.0569
Image:  308
Initial error: 0.2159
Final error: 0.0830
Image:  309
Initial error: 0.0603
Final error: 0.0240
Image:  310
Initial error: 0.1415
Final error: 0.0402
Image:  311
Initial error: 0.0542
Final error: 0.0712
Image:  312
Initial error: 0.0906
Final error: 0.0368
Image:  313
Initial error: 0.0804
Final error: 0.0465
Image:  314
Initial error: 0.1737
Final error: 0.0352
Image:  315
Initial error: 0.1567
Final error: 0.0518
Image:  316
Initial error: 0.1774
Final error: 0.0944
Image:  317
Initial error: 0.1453
Final error: 0.0243
Image:  318
Initial error: 0.1510
Final error: 0.0254
Image:  319
Initial error: 0.0827
Final error: 0.0486
Image:  320
Initial error: 0.0836
Final error: 0.0292
Image:  321
Initial error: 0.0788
Final error: 0.0265
Image:  322
Initial error: 0.0683
Final error: 0.0383
Image:  323
Initial error: 0.1261
Final error: 0.0706
Image:  324
Initial error: 0.1481
Final error: 0.0353
Image:  325
Initial error: 0.0809
Final error: 0.0481
Image:  326
Initial error: 0.1241
Final error: 0.0648
Image:  327
Initial error: 0.0524
Final error: 0.0151
Image:  328
Initial error: 0.0725
Final error: 0.0265
Image:  329
Initial error: 0.1324
Final error: 0.0326
Image:  330
Initial error: 0.0753
Final error: 0.0254
Image:  331
Initial error: 0.0441
Final error: 0.0370
Image:  332
Initial error: 0.0566
Final error: 0.0560
Image:  333
Initial error: 0.1139
Final error: 0.0190
Image:  334
Initial error: 0.0824
Final error: 0.0272
Image:  335
Initial error: 0.0819
Final error: 0.0294
Image:  336
Initial error: 0.0859
Final error: 0.0257
Image:  337
Initial error: 0.2034
Final error: 0.1123
Image:  338
Initial error: 0.0722
Final error: 0.0482
Image:  339
Initial error: 0.1232
Final error: 0.0223
Image:  340
Initial error: 0.0748
Final error: 0.0278
Image:  341
Initial error: 0.0740
Final error: 0.0318
Image:  342
Initial error: 0.1161
Final error: 0.0345
Image:  343
Initial error: 0.1158
Final error: 0.0170
Image:  344
Initial error: 0.1199
Final error: 0.0523
Image:  345
Initial error: 0.1984
Final error: 0.1196
Image:  346
Initial error: 0.0439
Final error: 0.0444
Image:  347
Initial error: 0.0689
Final error: 0.0337
Image:  348
Initial error: 0.0739
Final error: 0.0276
Image:  349
Initial error: 0.0555
Final error: 0.0402
Image:  350
Initial error: 0.1362
Final error: 0.0287
Image:  351
Initial error: 0.0440
Final error: 0.0256
Image:  352
Initial error: 0.0788
Final error: 0.0471
Image:  353
Initial error: 0.1450
Final error: 0.0343
Image:  354
Initial error: 0.0965
Final error: 0.0472
Image:  355
Initial error: 0.0527
Final error: 0.0920
Image:  356
Initial error: 0.0737
Final error: 0.0230
Image:  357
Initial error: 0.2208
Final error: 0.0836
Image:  358
Initial error: 0.0736
Final error: 0.0346
Image:  359
Initial error: 0.1433
Final error: 0.0363
Image:  360
Initial error: 0.0562
Final error: 0.0483
Image:  361
Initial error: 0.1793
Final error: 0.0261
Image:  362
Initial error: 0.1413
Final error: 0.0404
Image:  363
Initial error: 0.0653
Final error: 0.0980
Image:  364
Initial error: 0.1447
Final error: 0.0537
Image:  365
Initial error: 0.1107
Final error: 0.0262
Image:  366
Initial error: 0.0921
Final error: 0.0263
Image:  367
Initial error: 0.0530
Final error: 0.0299
Image:  368
Initial error: 0.1093
Final error: 0.0314
Image:  369
Initial error: 0.0444
Final error: 0.0420
Image:  370
Initial error: 0.1360
Final error: 0.0324
Image:  371
Initial error: 0.1394
Final error: 0.0352
Image:  372
Initial error: 0.0796
Final error: 0.0415
Image:  373
Initial error: 0.1550
Final error: 0.0173
Image:  374
Initial error: 0.1988
Final error: 0.1016
Image:  375
Initial error: 0.1767
Final error: 0.0658
Image:  376
Initial error: 0.1769
Final error: 0.0328
Image:  377
Initial error: 0.1535
Final error: 0.0267
Image:  378
Initial error: 0.0677
Final error: 0.0431
Image:  379
Initial error: 0.1463
Final error: 0.0634
Image:  380
Initial error: 0.1646
Final error: 0.1463
Image:  381
Initial error: 0.0942
Final error: 0.0509
Image:  382
Initial error: 0.0990
Final error: 0.0269
Image:  383
Initial error: 0.1384
Final error: 0.0306
Image:  384
Initial error: 0.0973
Final error: 0.0370
Image:  385
Initial error: 0.1129
Final error: 0.0300
Image:  386
Initial error: 0.0595
Final error: 0.0705
Image:  387
Initial error: 0.0579
Final error: 0.0469
Image:  388
Initial error: 0.1683
Final error: 0.1495
Image:  389
Initial error: 0.0694
Final error: 0.0524
Image:  390
Initial error: 0.1295
Final error: 0.1710
Image:  391
Initial error: 0.0731
Final error: 0.0266
Image:  392
Initial error: 0.1297
Final error: 0.1505
Image:  393
Initial error: 0.0529
Final error: 0.0234
Image:  394
Initial error: 0.0804
Final error: 0.0271
Image:  395
Initial error: 0.1809
Final error: 0.0388
Image:  396
Initial error: 0.1456
Final error: 0.0280
Image:  397
Initial error: 0.1298
Final error: 0.0802
Image:  398
Initial error: 0.1081
Final error: 0.0245
Image:  399
Initial error: 0.1478
Final error: 0.0672
Image:  400
Initial error: 0.0678
Final error: 0.0238
Image:  401
Initial error: 0.0719
Final error: 0.0213
Image:  402
Initial error: 0.1275
Final error: 0.0548
Image:  403
Initial error: 0.1354
Final error: 0.1060
Image:  404
Initial error: 0.1277
Final error: 0.0388
Image:  405
Initial error: 0.1451
Final error: 0.0305
Image:  406
Initial error: 0.0704
Final error: 0.0357
Image:  407
Initial error: 0.0865
Final error: 0.0387
Image:  408
Initial error: 0.1185
Final error: 0.0235
Image:  409
Initial error: 0.1144
Final error: 0.0343
Image:  410
Initial error: 0.1012
Final error: 0.0345
Image:  411
Initial error: 0.0942
Final error: 0.0397
Image:  412
Initial error: 0.0580
Final error: 0.0174
Image:  413
Initial error: 0.1524
Final error: 0.0367
Image:  414
Initial error: 0.0916
Final error: 0.0253
Image:  415
Initial error: 0.1738
Final error: 0.0278
Image:  416
Initial error: 0.0628
Final error: 0.0280
Image:  417
Initial error: 0.1059
Final error: 0.0433
Image:  418
Initial error: 0.0642
Final error: 0.0258
Image:  419
Initial error: 0.0799
Final error: 0.0246
Image:  420
Initial error: 0.1781
Final error: 0.1289

Visualize Results


In [18]:
from menpofit.visualize import visualize_fitting_results
    
visualize_fitting_results(fitter_results)



In [19]:
from alabortcvpr2015.utils import pickle_dump
from alabortcvpr2015.result import SerializableResult

results = [SerializableResult('none', fr.final_shape, fr.n_iters, 'PIC', fr.gt_shape) 
           for fr in fitter_results]

pickle_dump(results, '/data/PhD/Results/aam_pic_view1_fast_dsift')

Timing

Total


In [20]:
%timeit fitter.fit(i, s, gt_shape=gt_s, max_iters=20)


10 loops, best of 3: 36.8 ms per loop

Per line


In [ ]:
#import line_profiler
#import IPython

#ip = IPython.get_ipython()
#ip.define_magic('lprun', line_profiler.magic_lprun)

In [ ]:
#from alabortcvpr2015.aam import PIC

#%lprun -f PIC.run fitter.fit(i, s, gt_shape=gt_s, max_iters=20)