說到延時攝影,大家自然地會想到動輒成千上萬的高端攝影設備,實際上,一個小小的單片機也是可以完成。這里使用瑞昱的ameba無線開發板(支持USB OTG,UVC和SDIO)給大家演示一下。
材料準備
Ameba RTL8195AM x 1
SD card x 1
SD sniffer x 1
Logitech C170 web cam x 1
Micro USB OTG adapter x 1
范例說明
這個范例里結合UVC拍照的功能,定時將照片存至SD Card里,成為縮時攝影的功能。
我們打??開范例 “File” -> “Examples” -> “AmebaSdFatFs” -> “time_lapse_photography”
范例里一開始會先嘗試啟動UVC,接著初始化SD Fat FS,在loop()里每隔3秒抓一張圖片存至SD Card里,并編號成0001.jpeg, 0002.jpeg, 0003.jpeg, ……

要將這些檔案轉成電影,有一些工具可以用,這邊介紹ffmpeg,它的官網: https://ffmpeg.org/
在下載區里有不同OS的版本,下載完之后,如果你是用windows的版本,在縮時攝影的資料夾底下,輸入:
ffmpeg -framerate 30 -i %04d.jpeg -vf fps=30 -pix_fmt yuv420p output.mp4
底下對后面帶的引數簡略說明:
-framrate: 如果使用這個引數,表示忽略input的時間戳記,并且以framrate處理的結果當做時間軸,這里代表每輸入30張為1秒
-i: 后面帶的是input的檔名,我們使用%04d.jpeg,代表它會從0000.jpeg, 0001.jpeg, 0002.jpeg, …開始找
fps: 代表輸出的影像的framerate,這里我們使用1秒30張
最后面的檔名是輸出的檔名
這樣一個簡單的延時攝影裝置就做好了,如果想要加入動態效果,還可以讓單片機額外控制一個馬達來旋轉角度,可玩性很高。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/20460.html
標籤:單片機/工控
上一篇:stm32cubeIDE移植的UCOSIII,STemwin,stm32407芯片,定義float變數后進入硬體錯誤
下一篇:萌新求助
