ITKv4 Testing Data Zach Mullen – Patrick Reynolds - Luis Ibanez.

Post on 27-Mar-2015

216 views 2 download

Tags:

Transcript of ITKv4 Testing Data Zach Mullen – Patrick Reynolds - Luis Ibanez.

ITKv4Testing Data

Zach Mullen – Patrick Reynolds - Luis Ibanez

If it is not testedIt is broken...

In the Beginning...

CVS

Code

BasicFilters

Algorithms

Testing

Data

Input

Baseline

But Evil Followed...

CVS

Code

BasicFilters

Algorithms

Testing

Data

Input

Baseline

123 Mb 100%

25 Mb 20%

47 Mb 38%37 Mb 30%

20 Mb 16%

17 Mb 14%

Everything that can go wrong,Will go wrong...

393,580 biorad.pic 446,520 small-tensors.raw 526,780 itkGDCMImageIOTest.dcm 529,352 dicom-sc_cs-1.dcm 1,500,227 GradientRecursive...Test.mha 3,775,680 TensorsCorpusCallosum.raw 4,876,920 DwiCorpusCallosum.raw

50% of Testing Data Input is taken by 3 files

1

0

2

The Image Changed...

Who ? When ? What ? Why ?

DIFF of binary is Useless !

CVS DIFF binarySVN DIFF binaryGIT DIFF binary

So...In Revision Control

We keep the copies of binary files..For NOTHING !

The Future...

Video

10 Gb

per experiment

Microscopy

1 Terabyte / day

per experiment

Remote Sensing

1 Gb / day

per experiment

Git Submodule

Two Git Repositories

CVS

Code

BasicFilters

Algorithms

Testing

Data

Two Git Repositories

CVS

Code

BasicFilters

Algorithms

Testing

Data Data

Input

Baseline

Two Git Repositories

CVS

Code

BasicFilters

Algorithms

Testing

Data Data

Input

Baseline

Two Git Repositories

CVS

Code

BasicFilters

Algorithms

Testing

Data Data

Input

Baseline

HISTORY

Data

MIDASOption

One Git Repository + Database

CVS

Code

BasicFilters

Algorithms

Testing

Data

One Git Repository + Database

CVS

Code

BasicFilters

Algorithms

Testing

DataData

Input

Baseline

MIDAS

One Git Repository + Database

CVS

Code

BasicFilters

Algorithms

Testing

DataData

Input

Baseline

MIDAS

What Image ?

One Git Repository + Database

CVS

Code

BasicFilters

Algorithms

Testing

DataData

Input

Baseline

MIDAS

HASH Id

myimage.png.md5

add_test( itkTest01 ${IO_TESTS}${ITK_DATA_ROOT}/Input/cthead1.png

)

midas_add_test( itkTest01 ${IO_TESTS}

MIDAS{ cthead1.png.md5 }

ctest -N

itkTest01_FetchData

itkTest01

Type: CMAKE

CMake

MIDAS

6feffa5g.png

Download

image1.png.md5

6feffa5g

6feffa5g

If the image changes...

CMake

MIDAS

5abff7c.png

Download

image1.png.md5

6feffa5g

5abff7c

5abff7c

End