Wednesday, June 9, 2010

20100608 中研院隨拍



攝影時間:2010 年 06 月 08 號
攝影地點:中央研究院

退伍之後,在中研院開始了為期一年的研究助理生活,現在即使沒有在這邊任職助理,仍會每天來借用學術資源,算起來在這個地方也生活了將近一年半,在這期間,卻沒有仔細地逛逛這個地方,前天剛好聽大心提到打算和Vincent相約早上來拍照,馬上就決定要參一腳 (雖然早上要趕走瞌睡蟲爬起來實在很困難)。


由於早上10:00之後就要回資訊所開始認真做事情,8:30便由資訊所出發(其實是約8:00,只不過只有大心準時到而已Orz),從活動中心後面沿著小路往裡面走,往上走過一個翠綠的公園、土地公廟、還經過一片綠油油的稻田,沿途經過許多有趣的花花草草,這才發現原來中研院也有很多美麗的風景,差別只在於有沒有用心去看而已。


雖然只走了三分之一左右的院區,不過因為都是沒走過的地方,所以覺得特別新鮮。加上又拿起了很久沒有練習的相機來練習攝影,拍完後回到電腦上看雖然很滿意的照片不是很多,不過這過程還是很開心。


溫馨祖孫情

專注的大心

含苞待放的荷花

出污泥而不染,濯清漣而不妖

盛開與凋零同時並存

雖然是不知名的小紫花,但在陽光下隨風搖曳的樣子很迷人

人文館旁的公園

小橋、流水、沒有人家XD

失敗的Spider

從較高處看剛剛走過的公園

層層透光的葉子

蝴蝶蝴蝶生得真美麗

土地公廟前的古早吊燈

廟前盛開的花兒

樹下奇怪的爆炸頭種子

貫穿中研院的四分溪 (謎之聲:其實比較像水溝...)

荷葉似雲香不斷

胡亂拍的花草,回來看時覺得這放射狀的樣子挺不錯

很喜歡這張透光的感覺

田園攝影師Vincent!

中研院看起來是個適合種田的好所在...

遇見一系列奇怪的花花草草 - 月桃花

果實纍纍

顏色超鮮豔,看久了可能還會有3D影像浮出來 XD

蜿蜒的路

紫色小花

這裝置藝術讓我肚子餓了想吃銀絲卷

象徵新生的小豆苗


很有科技感的大樓 - 基因體研究中心

今日518攝影趴趴走成員合照

Tuesday, June 1, 2010

平底鞋


前天前往中研院的路上,在昆陽捷運站轉搭公車時,發現腳下的鞋子底座裂開了。

那一瞬間,我紅了眼眶。

這是我的第一雙平底鞋,CAT休閒鞋,大學畢業後我從一位重要的人手上收到的一份禮物。在大學時期,我總是沒有辦法想像為什麼要穿著這種不實用的鞋子。曾經穿過的一雙雙運動鞋,不論甚麼時候都可以提供很高的行動力,尤其是早上常睡過頭怕上課遲到而時常需要奔跑的我。而這種一切以實用價值為導向的觀念造就了一個不懂得甚麼是生活的我,衣櫃裡頭塞滿了系服和營服,出門上課、參加社團大多是運動服裝,腳下穿的永遠是白底的運動鞋,連手上戴的都是簡單的電子錶(因為容易就曉得時間),午餐晚餐總是快速地吃著學校裡頭食之無味的便當,腦袋瓜裡想著的都是那些專業科目,還有擔憂每一次考試的步步逼近。

“這樣穿起來很好看",當我第一次穿上這雙鞋,配上牛仔褲與休閒襯衫時妳這麼說。

從那時候開始,這雙鞋陪著我走了一段很長的時間。

在鳳山步校受訓時,每天穿著厚重的迷彩軍鞋全副武裝走20-30分鐘到山上操課,每周放假換上這雙平底鞋時,感覺整個人都輕了起來。而在宜蘭帶領一梯又一梯的入伍新兵,事情很多睡眠很少,週末離開營區時才能又不用對腳步再踏起輕鬆的步伐,不再需要趕時間,不再需要奔跑。退伍之後走過環島一圈、到中研院上班、申請學校、還有為流浪貓們奔走的那些路那些時光。每次有機會參加會議在正式場合報告論文時我都會穿著這雙鞋,走過馬賽ECCV、台北ICASSP、西安ACCV、邁阿密CVPR,我知道這麼穿會很體面,因為我一直都記得也相信妳所說的話。

每一段路都和某一雙鞋密不可分,是這雙鞋承載著我走過這段變化最大的時光,所承載的不只是我的重量而已,還包括對於生活模樣的想望,以及曾經努力勾勒出的幸福藍圖。一路上隔絕掉每一處可能刺傷我的碎石,同時也包容我不斷地在自我矛盾中掙扎試著找尋平衡。

就在那個當下,我突然能夠體會為什麼當年送給妳的那個小小的小熊維尼鑰匙圈髒掉時妳會這麼難過。一直以來總以為物品不過就是物品,髒了就擦一擦、舊了就是舊了也還堪用、若是壞了破了再買就行了。原來是我自己不了解,那些歲月留下的破舊的痕跡象徵的是一個終點、一個期限、一種形式的死亡,如同時間的本質即是變化一般。時間走過就不會再回頭,一旦舊了,就不可能再恢復。但也因為如此,才有珍惜的價值。

看著眼前這雙壞掉的CAT休閒鞋,感傷之外,我想說聲辛苦了,謝謝。現在我換上了在歐洲旅行時買的平底鞋,在最後一段一起走的旅程中買的,想想或多或少有了些交接的意味。

過去曾經走的路,不管是瘋狂的嚴肅的快樂的悲傷的,我會放在心裡好好珍惜。

向前繼續走吧。 ^_____^

Saturday, May 29, 2010

Valder Fields


最近聽起半年前朋友推薦給我的清單,偶然聽到了這首歌Valder Fields,音樂一開始我就被這輕快的節奏和乾淨的吟唱給深深吸引著了,簡單平淡卻很深刻。

於是試著去網路上找尋歌詞在寫些甚麼,卻找不到一個真正正確的版本 (也許也沒有所謂正確的詞),基於這些不同版本歌詞翻譯出來的意境也相差十萬八千里,後來乾脆自己練起聽力,直接從音樂還原真正的歌詞。

Valder Fields這首歌描寫的是人在面對社會責任以及安逸自由兩種生活時的壓力。一方面想做個有用的人,追求社會所認同的成功、物質生活、別人的讚美 (如歌詞中的申請工作,一個男人哭著說他愛他的生活)。然而另一方面也渴望能夠尋求內心安逸,自由自在掙脫這些外在的眼光形成的枷鎖 (在陽光下泉水旁的泥土地上睡覺)。

會對這首歌感到共鳴,我想是因為我很明白自己內心總是處於這種矛盾狀態。常常在這兩種生活形態中拉扯,試著去尋找一個平衡點。以前的我挺愛計較,在意成績,在意別人的看法與認同,甚至在意自己是不是贏得過別人。然而隨著過了幾年再回頭審視時,那些以前在意的東西,似乎全都沒那麼重要了。我開始學著敞開心胸接受每個隨興的決定,享受偶然瞥見的絢爛夕陽或正藍的天,讓自己沉浸在簡單而美好的事物中。

學著活在當下。




Valder Fields by Tamas Wells

I was found on the ground by the fountain
At Valder Fields and was almost dry
Lying in the sun after I had tried
Lying in the sun by the side

We had agreed that the council would end
At three hours over time
Shoelaces were tied at the traffic lights
I was running late, (I) could apply

For another one I guess
If department stores are best
They said there would be delays
On the temporary pay

For another one I guess
If department stores are best
They said there would be delays
On the temporary pay

She was found on the ground in a gown
Made at Valder Fields and was sound asleep
(On the) stairs outside the door
To the man who cried
When he said that he loved his life

We had agreed that the council should
Take his keys to the bedroom door
In case he slept outside and was found in two
Days in Valder Fields with a mountain view

Monday, May 24, 2010

演講:如何找研究題目 (電腦視覺)?





兩個禮拜之後將給這個演講,應該是暑假前最後一次講這個題目,對於電腦視覺研究有興趣的朋友(e.g., 碩博士生)歡迎來參與討論。


注意時間有更正
時間:   6月8日下午 4:00-5:30 
地點:台北市南港中央研究院資訊所 106室

時間:6/8 (二) 下午2:00 - 3:30 (3:30-4:00 問題討論)
地點:台北市南港中央研究院資訊所 107 室





題目:How to come up with new research ideas (in Computer Vision)?

摘要
Computer vision has been studied for more than 40 years. Due to the increasingly diverse and rapidly developed topics in vision and the related fields (e.g., machine learning, signal processing, cognitive science), the tasks to come up with new research ideas are usually daunting for junior graduate students in this field. In this talk, I will present five methods to come up with new research ideas. For each method, I will give several examples (i.e., existing works in the literature) to illustrate how the method works in practice. 


This is a common sense talk and will not have complicated math equations and theories.

Note: The content of this talk is inspired by Prof. Ramesh Raskar's talk on "How to come up with new Ideas".


投影片

Saturday, May 22, 2010

How to Solve Problems in Computer Vision? Preface



How to Solve Problems in Computer Vision? Preface




Jia-Bin Huang
Jbhuang0604@gmail.com

Latest Update: May 20, 2010


The Feynman Problem-Solving Algorithm:
                      (1) Write down the problem
                      (2) Think very hard
                      (3) Write down the answer
         -Richard Feynman


Motivation

When writing the article series “How to come up with new research ideas in computer vision?”, I think that there is another thing which is also essential to the research process, namely, “How to solve problems in computer vision?”. It may not be a difficult task for junior researchers (especially the imaginative ones) to come up with new research ideas. However, it often takes years of research experiences to know how to describe and analyze a problem via scientific approaches, deal with data uncertainty though statistical approaches, and realize an effective and efficient implementation using engineering approaches.

The gap between the abstract thinking and the problem-solving skills usually forms the major communication barriers between graduate students and their advisors. For example, students might feel that the feedback from the advisor useless or impractical, while advisors might worry about the fact that students could have been lost in technical details. In fact, these two things (i.e., knowing what to do and how to do) are both of great importance and complement with each other. As the MIT motto says

Mens et Manus (Mind and Hand) - MIT's motto

In “How to come up with new research ideas?” I addressed the Mens (mind) part. In this series, I will focus on the Manus (hand) part.

After introducing the basic concepts in computer vision, I will follow the Feynman Problem-Solving Algorithm to show how to solve problems in computer vision. The three problem-solving steps will be accompanied with various examples in the following articles. Through examples, people can learn how these vision problems had been addressed and know how to apply these methodologies on their own problems. In other words, I am a believer in this quote:

Do not tell people how to live their lives. Just tell them stories. And they will figure out how those stories apply to them. - Randy Pausch


Note: The content of this article series is inspired from the new computer vision textbook: Computer Vision: Algorithms and Applications, by Richard Szeliski.


Three Level of Analysis in Computer Vision

David Marr, one of the pioneers in computer vision, proposed to understand vision (i.e., an information processing system) at three different levels of analysis.

1.    Computational Level
What does the system do, and why?

2.    Representation and Algorithm Level
How does the system do what it wants to do? What are the representations and what are the algorithms to build and manipulate the representations.

3.    Implementation Level
How does the system be physically realized?

Even after thirty-years, Marr’s view on vision remains useful and serve a good guide for formulating and solving problems in computer vision.


What Kinds of Problems Are There in Computer Vision?

Computer vision processes and interprets visual information (e.g., images or videos). We can roughly classify vision problems into three categories by the level of the output labels: 1) Low-level, 2) Mid-level, and 3) High-level vision.
(Note that this is my own interpretation. There may be other viewpoints on how to define low-, mid-, and high-level vision.)

The output from low-level vision problems is a label map, i.e., one label for each pixel. Mid-level vision problems produce meaningful representations from images or videos. High-level vision predicts (semantic) class labels.

Input:Visual information (e.g., image or video)

=====Low-level vision=====

Output:A label map
Example problems                         Label means

Depth estimation                       Depth from the viewer
Figure / ground estimation         Foreground or background
Edge detection                          Edge or non-edge
Segmentation                            Region membership
Motion (optical flow)                   Motion vector
Intrinsic image                           Reflectance
Image restoration               High-resolution, clear, clean images
(denoising,  demosaicking,
deblurring, inpainting,
contrast enhancement,
dehazing, super-resolution)

=====Mid-level vision=====

Output:Representation of images
Example problems

Shape reconstruction
Human/head pose estimation
Hand gesture representation
Face representation
(Snakes / Active shape models / Active appearance models)
Texture representation and synthesis
Image representation 
(Bag-of-features / Spatial pyramid, i.e., coding and pooling of low-level features)

=====High-level vision=====

Input:Semantic label of an image
Example problems

Object detection / localization
Object recognition
Optical character recognition
Hand-written digit recognition
Event recognition
Scene understanding

Relationship between Computer Vision and Computer Graphics
From the three-level of vision problems above we know that all computer vision problems aim to recover information Y we need by input visual information X. In other words, the goal of computer vision problems is to accurately estimate the conditional probability P(Y|X). On the other hand, computer graphics cares P(X|Y), i.e., given the information Y, what’s the realistic image X would be?

Take the Natal Project for an example, computer vision attempts to the recover the underlying human pose (or facial expression) from image and depth sensors, while computer graphics generates the corresponding animation (the one you saw in your TV) from the estimated pose.


Another practical example is 3D city in the Google Earth. Computer vision reconstructs the 3D structure from a large collection of photos, while computer graphics renders realistic scenes from these 3D models.


Over the last decades, we have witnessed an increasing interaction between computer vision and computer graphics, such as image-based modeling and rendering, morphing, light field capture and rendering, panoramic image stitching and computational photography.


How to Solve Problems in Computer Vision?

How to solve these difficult inverse problems in computer vision? We will follow Richard Feynman’s Problem-Solving Algorithm and show how three different kinds of approaches, namely, scientific, statistical, and engineering approach are applied in this problem-solving algorithm.

The Feynman Problem-Solving Algorithm
Step 1: Write down the problem.
Step 2: Think very hard.
Step 3: Write down the answer.

The problem-solving algorithm seems trivial at the first glance. However, it can be widely applied to solve complex problems. Below is a tentative outline:

1.    Write down the problem (Scientific)
  1. Low-level vision
  2. Mid-level vision
  3. High-level vision

2.    Think very hard (Statistical)
  1. Bayesian Modeling
  2. Inference: Maximum Likelihood (ML), Maximum a Posteriori (MAP) and Minimum Mean Squared Error estimation (MMSE)
  3. Approaximate inference: Monte Carlo methods, Variational methods, and (loopy) belief propagation.
  4. Structured prediction: Markov random Field, Conditional random field, Max-Margin Markov Networks, Structured SVM, Joint Kernel Support Estimation

3.    Write down the answer (Engineering)
  1. Implementation algorithms
  2. Testing: synthetic experiments, noise and abbreviation from the model, real-world images

Friday, May 21, 2010

The Computer Vision Genealogy Project



The Computer Vision Genealogy Project



The Computer Vision Genealogy Project (CVGP) aims at collecting people in computer vision by organizing a family tree according to dissertation supervision relationships. Computer vision has been studied for more than 40 years. This field becomes increasingly active over the past decades. Although there are some other related academic genealogy projects exist (e.g., The AI Genealogy Project or The Mathematics Genealogy Project), we believe that building a genealogy database specific to the this area can provide more useful and interesting information for people in this community. 


This is an ongoing project. Therefore, you may find that there are some researchers missing or incorrect entries in our database. Please help us build a better computer vision genealogy database by inserting researchers, or modifying wrong profiles.




People