DOC PREVIEW
Columbia COMS W4115 - MATLIP: MATLAB-Like Language for Image Processing

This preview shows page 1-2-15-16-31-32 out of 32 pages.

Save
View full document
Premium Document
Do you want full access? Go Premium and unlock all 32 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

MATLIP MATLAB Like Language for Image Processing Pin Chin Huang ph2249 columbia edu Shariar Zaber Kazi szk2103 columbia edu Shih Hao Liao sl2937 columbia edu PoHsu Yeh py2157 columbia edu Motivation Easy to code Easy to access pixels of an image Easy to do image arithmetic operation Easy to do image convolution Easy to assign images of any size Easy to debug No cost for license Good Portability Easy to access one pixel of an image function main image x x imread rabbit jpg print x 1 1 RGB end public static void main String args BufferedImage x imnew 100 100 RGB x imread rabbit jpg System out println getImagePixel x 1 1 RGB static int getImagePixel BufferedImage im int col int row String channel 26 lines of java code Easy to do image arithmetic operation function main image x image y x x 1 x x 1 x x 1 x x 1 x x y end public static void main String args BufferedImage x imnew 100 100 RGB BufferedImage y imnew 100 100 RGB x imread rabbit jpg x BufferedImage clone BufferedImage doArithmetic x 1 OPERATION ADD x BufferedImage clone BufferedImage doArithmetic x 1 OPERATION SUB x BufferedImage clone BufferedImage doArithmetic x 1 OPERATION MUL x BufferedImage clone BufferedImage doArithmetic x 1 OPERATION DIV x BufferedImage clone BufferedImage doArithmetic x y OPERATION ADD static Object doArithmetic Object op1 Object op2 OPERATION op 150 lines of static Object clone Object src java code Easy to do image convolution function main image x kernel k x x k end public static void main String args BufferedImage x imnew 100 100 RGB Kernel k kernelinit x BufferedImage clone convolve x k static BufferedImage convolve BufferedImage im Kernel k 45 lines of java static Object clone Object src code Easy to assign image to image of different size function main image a image b a imnew 300 300 RGB b imnew 200 200 RGB a b end public static void main String args BufferedImage a imnew 100 100 RGB BufferedImage b imnew 100 100 RGB a imnew 300 300 RGB b imnew 200 200 RGB a BufferedImage clone b static BufferedImage imnew int width int height String type 50 lines of java static Object clone Object src code Easy to debug function main int i for i 0 int y 100 x x 1 end y 0 end syntax error in line 3 Fatal error exception Parsing Parse error function int m test int x end function main float x x 1 0 test x end Fatal error exception Failure Type mismatch in argument passing between x type int and x type float in function test Easy to debug function int m test end function main int x x 1 test x end function main image x imshow x x imread rabbit jpg x imshow x imsave x rabbit jpg x imnew 300 300 RGB imshow x end Fatal error exception Failure Wrong number of arguments passed to function test Fatal error exception Failure Cannot concatenate image type with string type in function main No cost for license Image Processing Toolbox 6 2 MATLAP Individual License For End user Activation types Standalone named user or designated computer 1 000 Buy Request a Quote via fax or e mail Contact Sales For an end user who wants to personally install administer and operate the software Group License For Workgroup Activation Types Standalone named users or designated computers Request a Quote via fax or e mail Contact Sales For organizations who would like to designate an administrator to manage a group of Individual licenses Tutorial introduction Variable declaration and assignment int a float b boolean c kernel k image i function main a 1 b 0 1 c true k kernelnew 10 10 k 0 0 0 1 0 3 0 4 i imnew 10 10 RGB end int a 3 float b 0 3 boolean c true Kernel k kernelnew 10 10 Image i imnew 10 10 RGB Arithmetic Operation Int a Int b float c float d funciton main a a b a a b a a b a a b a a b a mod a b c c d c c d c c d c c d end image a image b int c function main a a b a a b a a b a a b a a 2 b a a c b a a 2 0 NOT OK a 2 a NOT OK end kernel k1 kernel k2 float a function main k1 k1 k2 k1 k1 k2 k1 k1 k2 k1 k1 k2 k1 k1 2 0 k2 k1 k1 a k2 k1 k1 2 k2 NOT OK k1 2 0 k1 k2 NOT OK end Control Flow Statement Int x function main x 1 if x 1 x x 1 else x x 2 end int x funciton main x 1 If x 1 x x 1 end end Int x function main x 1 if x 1 x x 1 elseif x 2 x x 2 end int x function main x 1 If x 1 x x 1 elseif x 2 x x 2 elseif x 3 x x 3 else x x 4 end end Control Flow Statement function main int x int i for i 0 1 10 x x 1 end end function main Int x while x 3 x x 1 end end Function function int m test int x m d end function main Int d d test d end function test end function main test end function main Int d d test End function int m test end Recursion function int m foo int x if x 0 m foo x 1 else m 1 end end function int m bar int x m x 1 end function main print foo bar foo 5 end Example Flip the image vertically Example Flip the image vertically function image ret flip image im int height int width int i int j height getheight im width getwidth im ret imnew width height RGB for j 0 height 1 for i 0 width 1 ret i height j 1 rgb im i j rgb end end end function main image x image y x imread rabbit jpg imshow x y flip x imshow y end Example Flip the image vertically Example Flip the image horizontally function image ret flip image im int height int width function main int i image x int j image y height getheight im x imread rabbit jpg width getwidth im imshow x ret imnew width height RGB y flip x for j 0 height 1 imshow y for i 0 width 1 end ret width i 1 j rgb im i j rgb end end end Example Flip the image horizontally Example Blur the image function main image x image y kernel k k 0 25 0 0 0 25 0 0 0 0 0 0 0 25 0 0 0 25 x imread rabbit jpg x togray x imshow x y x k k k k k k k imshow y imsave y r3 gif end Example Blur the image Example Sharpen the …


View Full Document

Columbia COMS W4115 - MATLIP: MATLAB-Like Language for Image Processing

Documents in this Course
YOLT

YOLT

13 pages

Lattakia

Lattakia

15 pages

EasyQL

EasyQL

14 pages

Photogram

Photogram

163 pages

Espresso

Espresso

27 pages

NumLang

NumLang

6 pages

EMPATH

EMPATH

14 pages

La Mesa

La Mesa

9 pages

JTemplate

JTemplate

238 pages

MATVEC

MATVEC

4 pages

TONEDEF

TONEDEF

14 pages

SASSi

SASSi

16 pages

JTemplate

JTemplate

39 pages

BATS

BATS

10 pages

Synapse

Synapse

11 pages

c.def

c.def

116 pages

TweaXML

TweaXML

108 pages

Load more
Loading Unlocking...
Login

Join to view MATLIP: MATLAB-Like Language for Image Processing and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view MATLIP: MATLAB-Like Language for Image Processing and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?