Top Banner
1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring Term, 2006
48

1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

Dec 14, 2015

Download

Documents

Hugo Thaxton
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

1

Welcome to the Insight Toolkit!

ITK Lecture 1 - Getting Started

Welcome to the Insight Toolkit!

ITK Lecture 1 - Getting Started

Methods in Image AnalysisCMU Robotics Institute 16-725U. Pitt Bioengineering 2630

Spring Term, 2006

Methods in Image AnalysisCMU Robotics Institute 16-725U. Pitt Bioengineering 2630

Spring Term, 2006

Page 2: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

2

Goals for this lectureGoals for this lecture

Compile, compile, compile Learn how to use CMake Build ITK Compile several programs that use ITK

Find documentation online Learn the quirks (if any) of the system you choose to use

Compile, compile, compile Learn how to use CMake Build ITK Compile several programs that use ITK

Find documentation online Learn the quirks (if any) of the system you choose to use

Page 3: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

3

Online course accessOnline course access

Distribution of lectures/homeworks/etc. will be handled via our lab web site:

http://www.vialab.org/methods_course/index.html

Distribution of lectures/homeworks/etc. will be handled via our lab web site:

http://www.vialab.org/methods_course/index.html

Page 4: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

4

Getting helpGetting help

Email the TA - Ken Rockot [email protected]

Email Aaron Cois [email protected]

Email me - Damion Shelton [email protected]

Join the insight-users mailing list; instructions are at http://www.itk.org

Email the TA - Ken Rockot [email protected]

Email Aaron Cois [email protected]

Email me - Damion Shelton [email protected]

Join the insight-users mailing list; instructions are at http://www.itk.org

Page 5: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

5

Getting help, cont.Getting help, cont.

Get help at Pitt Stop by BEH 761 for Ken or Aaron

Get help at CMU Damion’s office is EDSH 214

Email is usually the easiest contact method

Get help at Pitt Stop by BEH 761 for Ken or Aaron

Get help at CMU Damion’s office is EDSH 214

Email is usually the easiest contact method

Page 6: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

6

AssignmentsAssignments

Collaboration is encouraged; unless told otherwise, feel free to discuss assignments with other students

But… please submit your own code - don’t copy and paste stuff from friends

More so than other classes, you will be learning techniques that translate directly to the real world - don’t cheat yourself

Collaboration is encouraged; unless told otherwise, feel free to discuss assignments with other students

But… please submit your own code - don’t copy and paste stuff from friends

More so than other classes, you will be learning techniques that translate directly to the real world - don’t cheat yourself

Page 7: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

7

Grading of assignmentsGrading of assignments

Grading criteria: Does it accomplish the specified task? Is it well commented? Follow the “6 month rule” - if you leave for 6 months, you should be able to pick up where you left off.

Many/most assignments will be pass-fail, with an opportunity to fix problems before final judgment is passed

Grading criteria: Does it accomplish the specified task? Is it well commented? Follow the “6 month rule” - if you leave for 6 months, you should be able to pick up where you left off.

Many/most assignments will be pass-fail, with an opportunity to fix problems before final judgment is passed

Page 8: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

8

Assignments, cont.Assignments, cont.

Please interpret due dates as absolute, unless told otherwise

Really We’re happy to spend time helping you debug code, but not at 11 pm the day before the assignment is due

Please interpret due dates as absolute, unless told otherwise

Really We’re happy to spend time helping you debug code, but not at 11 pm the day before the assignment is due

Page 9: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

9

Computer requirementsComputer requirements

Windows, Linux, and Mac OS 10.2+ work great, other platforms will work too Your own computer is preferable, but cluster machines will work

Please be aware that ITK can consume a lot of disk space during the build process

There is no reason to use one of the platforms over another, pick your favorite

Windows, Linux, and Mac OS 10.2+ work great, other platforms will work too Your own computer is preferable, but cluster machines will work

Please be aware that ITK can consume a lot of disk space during the build process

There is no reason to use one of the platforms over another, pick your favorite

Page 10: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

10

We can help you withWe can help you with

Windows & Linux: Everyone MacOS: Damion and Ken Sun, SGI, Cygwin: You’re on your own

If you’re going to have compiler problems, they’ll show up early in the course, so don’t procrastinate the first assignment

Windows & Linux: Everyone MacOS: Damion and Ken Sun, SGI, Cygwin: You’re on your own

If you’re going to have compiler problems, they’ll show up early in the course, so don’t procrastinate the first assignment

Page 11: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

11

What is ITK?What is ITK?

To clarify, ITK is a toolkit It doesn’t “do” anything You can’t “run” it There isn’t an itk.exe file

Typically, you use ITK in conjunction with other toolkits to handle visualization and GUI interaction

To clarify, ITK is a toolkit It doesn’t “do” anything You can’t “run” it There isn’t an itk.exe file

Typically, you use ITK in conjunction with other toolkits to handle visualization and GUI interaction

Page 12: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

12

So, what’s it good for?So, what’s it good for? ITK code is easy to add to existing C++ code

It provides a variety of flexible data containers, and ways of processing / analyzing them

You can do a lot in only a few lines of code

Once you get used to it, it’s easy to use (gasp!)

ITK code is easy to add to existing C++ code

It provides a variety of flexible data containers, and ways of processing / analyzing them

You can do a lot in only a few lines of code

Once you get used to it, it’s easy to use (gasp!)

Page 13: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

13

What we assume you can doWhat we assume you can do Understand C++ syntax

Classes Basic inheritance Standard flow control such as for, do, calling functions, etc.

Pointers, dereferencing, passing by reference

Work comfortably in the operating system of your choice, using the compiler of your choice

Understand C++ syntax Classes Basic inheritance Standard flow control such as for, do, calling functions, etc.

Pointers, dereferencing, passing by reference

Work comfortably in the operating system of your choice, using the compiler of your choice

Page 14: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

14

You might be able to do…You might be able to do… Generic programming

Templates & templated classes Partial specialization

The typedef & typename keywords

Revision control using CVS/SVN Collaborative programming

Generic programming Templates & templated classes Partial specialization

The typedef & typename keywords

Revision control using CVS/SVN Collaborative programming

Page 15: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

15

You probably have not…You probably have not…

Used cross-platform make software (Jam, for example)

Written C++ code that builds on multiple platforms

Designed software using a data-flow architecture, worried about smart pointers, etc.

Used cross-platform make software (Jam, for example)

Written C++ code that builds on multiple platforms

Designed software using a data-flow architecture, worried about smart pointers, etc.

Page 16: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

16

Step 0 - Don’t panic!Step 0 - Don’t panic!

There is substantial documentation on everything I’m going to present here, and vastly more about things that we will never cover in this course

http://www.itk.org/HTML/Documentation.htm

You have a copy of the ITK Software Guide on the CD Ken made for you

There is substantial documentation on everything I’m going to present here, and vastly more about things that we will never cover in this course

http://www.itk.org/HTML/Documentation.htm

You have a copy of the ITK Software Guide on the CD Ken made for you

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Page 17: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

17

Please DON’T wear yourself trying to write down all of the content of the following slides; they’ll be on the course web page

DO interrupt me and ask questions if something isn’t clear

Please DON’T wear yourself trying to write down all of the content of the following slides; they’ll be on the course web page

DO interrupt me and ask questions if something isn’t clear

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Page 18: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

18

Step 1Step 1

Get all of the code Fortunately, we have CD’s for you

If you’re working on some particularly esoteric platform, it’s possible that you’re missing a binary version of CMake for your machine

Get all of the code Fortunately, we have CD’s for you

If you’re working on some particularly esoteric platform, it’s possible that you’re missing a binary version of CMake for your machine

Page 19: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

19

What do I need ?What do I need ?

C++ Compiler

gcc 2.95 – 3.2Visual C++ 6.0

Visual .NETIntel 5.0IRIX CC

Borland 5.0Mac OSX - gcc

CMake

www.cmake.org

Page 20: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

20

Cross platform developmentCross platform development ITK builds on a large combination of operating systems and platforms

Each compiler has it’s own input format; makefiles, workspaces, etc.

Q: How can you possibly coordinate builds on different platforms?

ITK builds on a large combination of operating systems and platforms

Each compiler has it’s own input format; makefiles, workspaces, etc.

Q: How can you possibly coordinate builds on different platforms?

Page 21: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

21

The answer: CMakeThe answer: CMake

Cross platform tool to manage the build process

Simplifies the build process

Auto-configuration Easy access to external libraries

Used by several other open source projects

Cross platform tool to manage the build process

Simplifies the build process

Auto-configuration Easy access to external libraries

Used by several other open source projectswww.cmake.orgwww.cmake.org

Page 22: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

22

How CMake runsHow CMake runs

Write a CMakeLists.txt file describing your project in CMake’s language

Run CMake to generate an appropriate makefile/project/workspace for your compiler

Compile as you normally would

Write a CMakeLists.txt file describing your project in CMake’s language

Run CMake to generate an appropriate makefile/project/workspace for your compiler

Compile as you normally would

Page 23: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

23

How CMake runs, cont.How CMake runs, cont.

This is not unlike the configure-make process you may be familiar with from various Unix systems

But… it works with many compilers

CMakeLists.txt files are easy to perform revision control on

This is not unlike the configure-make process you may be familiar with from various Unix systems

But… it works with many compilers

CMakeLists.txt files are easy to perform revision control on

Page 24: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

24

In source vs. out source buildsIn source vs. out source builds

Source Tree

ITK

Common

Algorithms

BasicFilter

Numerics

IO

ITKb

Common

Algorithms

BasicFilter

Numerics

IO

Binary Tree

Recommended !

Out Source Build

InSourceBuild

Page 25: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

25

Why use two trees?Why use two trees?

Keeps your source and binary code separate

Minimizes the amount of damage you can do to your CVS tree

ITK is found in the /Insight folder

We suggest that you build it in the /InsightBin folder

Keeps your source and binary code separate

Minimizes the amount of damage you can do to your CVS tree

ITK is found in the /Insight folder

We suggest that you build it in the /InsightBin folder

Page 26: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

26

Configure - Easy StartConfigure - Easy Start

Run CMake

Select the SOURCE directory

Select the BINARY directory

Run CMake

Select the SOURCE directory

Select the BINARY directory

Page 27: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

27

Configure - Easy Start, cont.Configure - Easy Start, cont.

Page 28: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

28

Disable BUILD_EXAMPLES

Disable BUILD_TESTING

Disable USE_FLTK

Disable USE_VTK

Disable ITK_WRAP_TCL

Disable BUILD_EXAMPLES

Disable BUILD_TESTING

Disable USE_FLTK

Disable USE_VTK

Disable ITK_WRAP_TCL

Configure - Easy Start, cont.Configure - Easy Start, cont.

Page 29: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

29

Ignore CMAKE_CXX_FLAGS

Ignore DART_ROOT

Ignore ITK_DATA_ROOT

Ignore VW_RAW_DATA_PATH

Ignore CMAKE_CXX_FLAGS

Ignore DART_ROOT

Ignore ITK_DATA_ROOT

Ignore VW_RAW_DATA_PATH

Configure - Easy Start, cont.Configure - Easy Start, cont.

Page 30: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

30

Configuring and GeneratingConfiguring and Generating Each time you change an option or options you may need to “configure” CMake again

If the generate option (“OK” under Windows) is not presented, you definitely need to hit configure again

If any of the options are highlighted in red, you need to reconfigure

Each time you change an option or options you may need to “configure” CMake again

If the generate option (“OK” under Windows) is not presented, you definitely need to hit configure again

If any of the options are highlighted in red, you need to reconfigure

Page 31: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

31

Build ITKBuild ITK

Page 32: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

32

Build ITKBuild ITK

Open ITK.dsw in the Binary Directory

Select ALL_BUILD project Build it - it takes about 15 minutes on a P3-1000, but your mileage may vary

Open ITK.dsw in the Binary Directory

Select ALL_BUILD project Build it - it takes about 15 minutes on a P3-1000, but your mileage may vary

Page 33: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

33

Verify the BuildVerify the Build

Libraries will be found in:

ITK_BINARY / bin / { Debug, Release}

Libraries will be found in:

ITK_BINARY / bin / { Debug, Release}

Page 34: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

34

Building with gccBuilding with gcc

Order of operations is the same Differences

Run the ccmake executable, which uses a curses TUI, the options are identical

Run make instead of Visual Studio Think of CMake as replacing the “./configure” step you may be used to

Order of operations is the same Differences

Run the ccmake executable, which uses a curses TUI, the options are identical

Run make instead of Visual Studio Think of CMake as replacing the “./configure” step you may be used to

Page 35: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

35

Building with gcc cont.Building with gcc cont.

Start in directory containing Insight

mkdir InsightBincd InsightBinccmake ../InsightEdit CMake, reconfigure if needed

make

Start in directory containing Insight

mkdir InsightBincd InsightBinccmake ../InsightEdit CMake, reconfigure if needed

make

Page 36: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

36

Now what?Now what?

At this point, you should have two things: A directory containing a bunch of source code (e.g. ~/Insight)

A directory containing the built ITK libraries (e.g. ~/InsightBin)

As mentioned earlier, you don’t have anything executable

At this point, you should have two things: A directory containing a bunch of source code (e.g. ~/Insight)

A directory containing the built ITK libraries (e.g. ~/InsightBin)

As mentioned earlier, you don’t have anything executable

Page 37: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

37

Building an applicationBuilding an application ITK comes with a simple application you can build in order to test the ITK libraries “out of source” (I.e. not built inside ITK)

It can be found in:/Insight/Examples/

Installation

ITK comes with a simple application you can build in order to test the ITK libraries “out of source” (I.e. not built inside ITK)

It can be found in:/Insight/Examples/

Installation

Page 38: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

38

How to build HelloWorldHow to build HelloWorld Copy & rename the Installation directory somewhere outside of the Insight directory

Run CMake on HelloWorld Remember the source/binary distinction and use HelloWorldBin as your build location

CMake should automatically find ITK if not, edit the ITK_DIR option

Copy & rename the Installation directory somewhere outside of the Insight directory

Run CMake on HelloWorld Remember the source/binary distinction and use HelloWorldBin as your build location

CMake should automatically find ITK if not, edit the ITK_DIR option

Page 39: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

39

How to build HelloWorld, cont.How to build HelloWorld, cont. Once CMake is happy, generate the makefile/project for your compiler

Build HelloWorld Give it a try

Once CMake is happy, generate the makefile/project for your compiler

Build HelloWorld Give it a try

Page 40: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

40

More examplesMore examples

You can turn on the Examples option in CMake, which will build all of the examples for you

Or… you can copy the examples out-of-source and build them like you did HelloWorld

These examples link into ITK Software Guide; read the chapter, poke the code and see what happens…

You can turn on the Examples option in CMake, which will build all of the examples for you

Or… you can copy the examples out-of-source and build them like you did HelloWorld

These examples link into ITK Software Guide; read the chapter, poke the code and see what happens…

Page 41: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

41

Workflow thoughtsWorkflow thoughts

You should get used to the idea of:

1. Writing some code2. Writing a CMakeLists.txt file3. Running CMake4. Building your code5. Rinse, repeat

You should get used to the idea of:

1. Writing some code2. Writing a CMakeLists.txt file3. Running CMake4. Building your code5. Rinse, repeat

Page 42: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

42

An aside: how to use ITK withexisting applications

An aside: how to use ITK withexisting applications Your app probably does not use CMake

In this case, you need to link to the ITK libraries explicitly and include the appropriate source directories

This isn’t hard, but it may take some trial and error to discover everything you need

You don’t need to worry about this in the context of this class

Your app probably does not use CMake

In this case, you need to link to the ITK libraries explicitly and include the appropriate source directories

This isn’t hard, but it may take some trial and error to discover everything you need

You don’t need to worry about this in the context of this class

Page 43: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

43

Revision control with CVSRevision control with CVS Revision control software allows you to store incremental changes to software

You will be expected to use CVS to manage your homework assignments

I encourage you to use revision control on your code outside of this class as well - it’s a good habit to develop

Revision control software allows you to store incremental changes to software

You will be expected to use CVS to manage your homework assignments

I encourage you to use revision control on your code outside of this class as well - it’s a good habit to develop

Page 44: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

44

CVS termsCVS terms

Server - what it sounds like Module - a group of files that can be accessed on the server

User - each module has associated users, with varying levels of access (read only, read/write, etc.).

Server - what it sounds like Module - a group of files that can be accessed on the server

User - each module has associated users, with varying levels of access (read only, read/write, etc.).

Page 45: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

45

CVS terms, cont.CVS terms, cont.

Checkout - Download a fresh copy of a module from the server to your computer

Update - Sync your copy of a module with the server copy; much faster than a checkout

Commit - Merge changes made to your local copy with the server

Checkout - Download a fresh copy of a module from the server to your computer

Update - Sync your copy of a module with the server copy; much faster than a checkout

Commit - Merge changes made to your local copy with the server

Page 46: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

46

CVS setupCVS setup

The CVS server for this course is: cvs.vialab.org

You will each have a module, based on your email; Ken will tell you about this

Only you and the instructors will have access to this module

Later, there may be group modules for the final project

The CVS server for this course is: cvs.vialab.org

You will each have a module, based on your email; Ken will tell you about this

Only you and the instructors will have access to this module

Later, there may be group modules for the final project

Page 47: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

47

CVS setup, cont.CVS setup, cont.

I prefer to use a GUI wrapper for CVS http://www.wincvs.org Versions are available for Windows, Mac, and Linux

Windows users can use Explorer integration via http://www.tortoisecvs.org/

Command line works fine too, but may be more awkward if you’re used to GUI’s

I prefer to use a GUI wrapper for CVS http://www.wincvs.org Versions are available for Windows, Mac, and Linux

Windows users can use Explorer integration via http://www.tortoisecvs.org/

Command line works fine too, but may be more awkward if you’re used to GUI’s

Page 48: 1 Welcome to the Insight Toolkit! ITK Lecture 1 - Getting Started Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring.

48

ITK DocumentationITK Documentation

Most of the ITK documentation is generated automatically from source comments using Doxygen

Please familiarize yourself with the various means of navigating the Doxygen documentation online

http://www.itk.org/Doxygen/html/index.html

Most of the ITK documentation is generated automatically from source comments using Doxygen

Please familiarize yourself with the various means of navigating the Doxygen documentation online

http://www.itk.org/Doxygen/html/index.html