最近我在搞可穿戴攝像頭的項目,主體采用的就是樹莓派。先前我有買過一款Narrative Clip——這就是個可穿戴相機,不過這款相機的質(zhì)量實在是讓人悲傷。最近我正好要去歐洲四國游,所以就花了些時間自己來搞個可穿戴相機,結(jié)合我的黑客技術(shù),應(yīng)該是不成問題的。
我在背包肩帶上挖了個洞,然后把樹莓派攝像頭模塊(點擊這里,從官方購買)放進去。將連接的帶狀線纜插入肩帶,接入背包頂部的樹莓派,是不是感覺隱藏得很好?
這么做的主要目的是防止雨水打濕電子設(shè)備,同時將之緊緊貼在包里,起到固定的作用,這樣就不需要反復調(diào)整其位置了(之前的Narrtive Clip就需要反復進行位置掉正)。
解決了這兩個問題,一切就好多了。右邊這張照片,就是在大雨中,我的包完全濕透了的樣子。
添加GPS模塊
對我而言,這款相機的主要用途就是假日拿來拍照,所以我覺得可以給它加個LinkIt ONE模塊。LinkIt One本身就是個無線開發(fā)板,用到這里是因為它支持GPS,可將GPS數(shù)據(jù)傳至樹莓派。這樣一來,照片就能自動記錄拍攝位置信息了,而且是很方便地記錄到EXIF數(shù)據(jù)中。
很多人可能也知道GPS的尿性,有時候是就是做到100%精確,但有時候卻不知偏到哪里去了。GPS的準確程度實際上主要取決于GPS搜星——反正我也不會去太遠的地方,所以準確性應(yīng)該是有保證的。
構(gòu)建移動應(yīng)用程序
我先前在用的Narrative Clip相機,最令人不爽的地方在于,其可控性比較糟糕:拍照的時候也沒有足夠的提示,也不知道拍的行不行、好不好。
其實利用好樹莓派3之上板載的WiFi芯片(AP模式),就能解決這個問題。開啟WiFi熱點,搭配連接相應(yīng)的應(yīng)用——應(yīng)用可以展示剛拍的照片。這個應(yīng)用是采用Flask web框架搭建的。就這么個小功能的加入,令這臺相機的便利性提升良多,至少可控性加強了不少,可對拍攝的照片進行刪除和重命名操作。
而且這個web應(yīng)用,用起來感覺相當不錯,能夠保持和樹莓派一整天的連接不斷開。這應(yīng)該算是整個改造工程中,特別成功的一個步驟,原本我對此web應(yīng)用沒抱太大期望。所以其實我還做了個備選方案:用Apache,如果Flask應(yīng)用搞不定的話,Apache還是可以作為最基本的文件夾瀏覽器來用的。
RTC問題
在整個項目中,我遇到比較大的問題就是RTC(實時時鐘)問題了。其實原本我就知道會遇到RTC問題,因為樹莓派本身是不帶RTC芯片的,但沒想到問題會這么大。
為此,我還特意在其中加了Server時間戳和Javascript時間戳。這樣就便于進行時間的對比了,將相機設(shè)備認定的時間,和手機上的時間進行比較。
我發(fā)現(xiàn),如果我關(guān)掉相機,第二天早晨再開,相機的時間會重置到上次開啟的時間——也就是差不多24小時前。由于照片文件名是基于時間戳命名的,時間被重置以后,如果直接就開始拍照,新的照片就會覆蓋舊照片。這的確是個很悲劇的問題。
要解決這一問題,最佳方案應(yīng)該是始終保持設(shè)備開啟。但問題是,我配的電源只能保持30小時的續(xù)航——如果帶著它出去度假幾天的話,中途沒電,就得歇菜好幾次。好在我選擇度假的地方是西歐,互聯(lián)網(wǎng)很發(fā)達,所以我每隔1-2天就將已經(jīng)拍攝好的照片先拿出來。
如果你覺得這個問題無法忍受的話,可以選擇購買RTC芯片,也就6歐元。
延時拍攝成果展示
來展示一下拍攝成果!上面這段時間是延時拍攝組成的視頻,也就是設(shè)定每個一段時間就拍攝一張照片,然后將這些照片組合起來做成視頻。雖然還是花了點時間刪除一些錯誤的照片,不過整體效果的確比Narrative Clip拍的好多了。
神奇的OpenCV
度假結(jié)束之后,也就拍了一堆照片了。這么便攜的產(chǎn)品,拍攝效果的確是不怎么樣,不過試試用OpenCV庫來改善以下效果。比如上面這張圖,簡單改一下就會有很不錯的效果提升。不過因為時間有限,上面的延時拍攝視頻就不這么搞了。然而如此隱蔽的便攜式拍攝產(chǎn)品,該怎么用,你也懂吧?
(審核編輯: 滄海一土)
分享