Digital Image Processing
(Spring 2013)

Getting started 

    PLAY with matlab    
You will start the wonderful journey by reading a simple and short tutorial of dealing with images using matlab, which provides the basic techniques you need to accomplish the assignments.

        1 Submission server:
        2 Your assignment should be submitted BEFORE due date
        3 The submitted file and codes shoud be organised according to the specification in each assignment. Resubmit your assignment if you are not in the accepted list after the submission by ONE day.

        1 Q: Why the submitted file need to be well organised?
            A: We will use programme to automatically check your submissions and run you codes. In fact, such organization shouldn't bother you, since we will provide enough materials so that you only need to "fill the blank". 

        2 Q: Does getting accepted mean full marks?
            A: No, getting accepted only gives you the qualification for being evaluated.

        3 Q: Then how the assignments are evaluated?
            A: We look into serveral aspects including: the results of your code on test images; how far and deep your idea is, from the given baseline solution; how much work has you completed. An assignment which only implements our baseline solution will get a very low mark.

        4 Q: Can we accomplish the assignments as a form of group?
            A: No, all the assignments are for individuals

        5 Q: Can I use some other programming languages rather than Matlab?
            A: No. The assignments are asked to accomplished using Matlab only due to many reasons:                
                (1) Most DIP courses of top universities like stanford are using Matlab.
                (2) Most research codes of digital image processing, computer vision are distributed as Matlab codes. If you are going to enhance your ability in your futher research life, you need to get familiar with Matlab.
                (3) If you just want to learn and use some image processing methods, starting with Matlab is a good choice. You can find a lot of related resources, and the efficiency of matlab is good enough for this course.
                (4) DIP is a practical course, if we would allow other programming languages in the future, the choices will only be C/C++ (OpenCV) or java (DIP in android), since they are widely used in real applications. But it's not ready yet.
                (5) Accepting assignments with multiple language will increase the workload of evalueting all your assignments.
                (6) It's hard and unfair to compare two assignments writen in different languages.
                (7) If you are already skilled in some other languages that you ask us to allow you to use in this course, why not learn a new language from the beginning, just like the other students?             


7/4/2013 20:00
4/5/2013 20:00
27/5/2013 20:00
30/6/2013 23:59
list-final  last updated at 2013-07-01 15:22:38


1. 提交格式:下载sample submission,不要改任何目录结构,不要改任何我们提供的接口部分的代码,不要改压缩格式。你需要做的,仅仅是:解压,目录名改成你的学号,填写代码,撰写文档,压缩zip上传。

2. 提交前至少要确认能对我们提供的示例输入运行通过并产生正确的结果。如果你提交的代码都运行通不过,即使我们愿意,也很难说服自己给你们分数。当然运行通不过分很多种,有的是跟输入有关,即你自己是运行通过的,换了我们的输入出错的,我们还是能够帮你去debug的,但是有些跟输入无关的错误,例如访问 I(0,0) 这样的语句,如果你自己提交代码前运行过,你肯定不会把这样的代码提交上来。

3. 我们定义的接口中,函数是都是有输入,有输出的。你不应该出现很多低级错误:给输入变量赋值,未给输出变量赋值

4. 你不需要在函数中画图,不管是plot还是imshow。

5. 你应该这样调试你的代码:建一个script,例如test_ass1.m,在这个脚本里,读入输入图像,调用你写好的函数得到结果,进行绘图查看。这个脚本你不需要提交。

        Qing Da,, 912/913, CS.
        Qing-Guo Chen,, 912/913, CS.