最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

基于陀螺儀數(shù)據(jù)實(shí)現(xiàn)視頻防抖的硬件:適用于 Sony 相機(jī)的 FlowShutter 制作不完全指北

2023-11-22 18:46 作者:3nit  | 我要投稿

CATALOG

  1. 寫(xiě)在前面

    1. 工作原理

    2. 組成結(jié)構(gòu)

    3. 優(yōu)、劣勢(shì)

  2. 知識(shí)儲(chǔ)備

  3. 準(zhǔn)備材料

  4. 準(zhǔn)備工作

    1. 下載項(xiàng)目文件

    2. 安裝 VScode 及 Pymakr 插件

    3. 安裝 Node.js

    4. 配置 Python 開(kāi)發(fā)環(huán)境

    5. 安裝 Betaflight Configurator

    6. 安裝 GyroFlow

  5. PCB 焊接

  6. 線路焊接

    1. FlowShutter PCB 與 FC 的連接

    2. FlowShutter PCB 與相機(jī)的線路連接

    3. 供電線路的連接

  7. 固件刷寫(xiě)與設(shè)置

    1. 固件刷寫(xiě)

    2. 固件設(shè)置

    3. MicroPython 固件刷寫(xiě)

    4. 程序燒錄

    5. FlowShutter PCB 的固件刷寫(xiě)與設(shè)置

    6. FC 的固件刷寫(xiě)與設(shè)置

  8. 外殼安裝

  9. 使用方法

  10. 問(wèn)題和討論

寫(xiě)在前面

由于Bilibili網(wǎng)站限制,文內(nèi)部分鏈接可能不能正常顯示。本篇文章同時(shí)發(fā)表在我的博客網(wǎng)站,歡迎閱讀:https://3nit.website/2023/10/02/FlowshutterTutorial/

FlowShutter 是一個(gè)通過(guò)記錄相機(jī)抖動(dòng)的陀螺儀數(shù)據(jù)來(lái)為無(wú)防抖相機(jī)手持拍攝的視頻增穩(wěn)處理的硬件設(shè)備,其需要搭配相機(jī)和 Gyroflow 軟件來(lái)使用。

請(qǐng)參閱:?Gyroflow、FlowShutter?及?flowshutter-FC-size?。

狹義上的 FlowShutter 是指由 @輝光管 與 @DusKing 設(shè)計(jì)并開(kāi)源的一塊 PCB 板,為行文便利,本文以 FlowShutter PCB 指代上述單塊板,以 FlowShutter 指代包括 FC、電池、外殼等在內(nèi)的整個(gè)硬件設(shè)備。

一塊 FlowShutter 安裝在 @3nit 設(shè)計(jì)的外殼中

本文將指導(dǎo)你親手制作一塊 Flowshutter,不過(guò)此處只簡(jiǎn)單討論以下內(nèi)容:

工作原理

Gyroflow 軟件需利用相機(jī)在空間坐標(biāo)系中繞 XYZ 軸的轉(zhuǎn)動(dòng)信息來(lái)對(duì)視頻畫(huà)面做穩(wěn)定化。

FlowShutter 能在相機(jī)按下視頻錄制鍵的同時(shí)開(kāi)始將陀螺儀數(shù)據(jù)記錄于 Micro SD 卡上,使之在時(shí)間上與相機(jī)錄制的視頻保持基本同步,以便 Gyroflow 的處理與文件管理。

組成結(jié)構(gòu)

FlowShutter 主要由兩個(gè)部分組成:Flowshutter PCB 與 FC(Flight Controller,飛行控制器)。

FC 利用內(nèi)建的 IMU 獲取運(yùn)動(dòng)信息并將其通過(guò)黑匣數(shù)據(jù)的方式寫(xiě)入 Micro SD 卡。
FlowShutter PCB 分別通過(guò) MultiPort 和 URAT 同時(shí)與相機(jī)和 FC 通訊,使二者的視頻錄制和陀螺儀數(shù)據(jù)記錄同步起始。

優(yōu)、劣勢(shì)

這種方法實(shí)現(xiàn)的增穩(wěn)屬于電子防抖的一種,然而相較于后期電子增穩(wěn)處理時(shí)所采用的變形穩(wěn)定器:

  • 分析運(yùn)動(dòng)所耗費(fèi)的圖形算力較少,增穩(wěn)的過(guò)程更快;

  • 能避免前后景別相對(duì)運(yùn)動(dòng)時(shí)變形穩(wěn)定器導(dǎo)致的畸變拉伸;

  • 能利用陀螺儀數(shù)據(jù)對(duì)因?yàn)閭鞲衅髯x出延遲導(dǎo)致的果凍效應(yīng)進(jìn)行矯正。

但后期增穩(wěn)的步驟可能會(huì)對(duì)視頻編輯的工作流程產(chǎn)生影響。

請(qǐng)留意:

  1. 本文適用于具有 MultiPort 的 Sony 相機(jī)。如果放棄上述的同步功能,以手動(dòng)的方式控制陀螺儀數(shù)據(jù)記錄的起始,F(xiàn)lowShutter 可以適用于理論上任何相機(jī)。

  2. 如果你的相機(jī)具有陀螺儀防抖功能(如 Sony ZV-E10),那么 FlowShutter 對(duì)于你的相機(jī)是多余的。(參閱:Supported Cameras/Sony)如果你的機(jī)身或鏡頭具有光學(xué)或電子防抖功能,F(xiàn)lowShutter 不能與其疊加作用。

  3. Gyroflow 不能對(duì)變焦鏡頭的所有焦段都連續(xù)地實(shí)現(xiàn)增穩(wěn)。

知識(shí)儲(chǔ)備

親手制作一塊 FlowShutter,你可能需要了解或掌握這些知識(shí):

  • 簡(jiǎn)單的電路、PCB 設(shè)計(jì)知識(shí)

  • 貼片元件焊接的技術(shù)

準(zhǔn)備材料

  • 一臺(tái)能上網(wǎng)的電腦

  • 一臺(tái) Sony 相機(jī)*

  • F4 V3 及以上飛控板(即 FC)*

    • Omnibus F4 V3 Plus?選購(gòu)

  • FlowShutter PCB 板及貼片元件*
    請(qǐng)參考?嘉立創(chuàng)?中的 BOM 選購(gòu)

  • Sony MultiPort 公口

    • MultiPort 公口 9 Pin?選購(gòu)

  • 焊臺(tái)、焊錫、飛線等焊接用品

  • 尼龍/銅柱、螺母、螺絲等(可選)*

    • 銅柱 M3*7+6?選購(gòu)

    • 螺母 M3?選購(gòu)

    • 沉頭螺絲 M3*6?選購(gòu)

  • 電池、充電保護(hù)板(可選)*

    • 充電保護(hù)板?選購(gòu)

    • 3.7V 鋰電池 302530 250mAh?選購(gòu)

  • 3D 打印機(jī)或打印好的外殼(可選)

    • @3nit 設(shè)計(jì)的外殼 .stl 文件?下載

  • 4GB Mirco SD卡*

*需具有 MultiPort 端口。
*能安裝 Betaflight 固件、具有 MicroSD 卡插槽的飛控即可。
*其中的兩組貼片開(kāi)關(guān)按需求購(gòu)買(mǎi)一組即可(兩組開(kāi)關(guān)為并聯(lián))。
*如需使用 @3nit 設(shè)計(jì)的外殼,請(qǐng)按照列出的配單購(gòu)買(mǎi)尼龍/銅柱、螺母、螺絲。
*可采用外置電源 USB 供電的方式。
*可格式化為 FAT32 格式即可,但 Betaflight 僅支持最大 4GB 存儲(chǔ)空間。

準(zhǔn)備工作

下載項(xiàng)目文件

訪問(wèn)?Github?下載項(xiàng)目并解壓縮。

安裝 VScode 及 Pymakr 插件

利用 VScode 進(jìn)行固件刷寫(xiě),可訪問(wèn)?code.visualstudio.com下載安裝。


安裝完成后,在 VScode 插件庫(kù)中查找并安裝插件 “Pymakr”。

Pymakr 正確安裝后,VScode 左下角落處應(yīng)該顯示如圖的幾個(gè)按鈕,如果未顯示,可以嘗試安裝該插件的歷史版本(經(jīng)測(cè)試,v1.1.18 版本運(yùn)行正常)。

安裝 Node.js

訪問(wèn)?nodejs.org下載安裝。

配置 Python 開(kāi)發(fā)環(huán)境

訪問(wèn)?python.org下載安裝。

安裝 Betaflight Configurator

訪問(wèn)?betaflight.com下載安裝。

安裝 GyroFLow

訪問(wèn)?gyroflow.xyz下載安裝。

PCB 焊接

請(qǐng)參考 PCB 圖焊接好貼片元件、屏幕等。

目前?嘉立創(chuàng)?上開(kāi)源的 PCB 在正反兩面分別有一組微動(dòng)開(kāi)關(guān)(K1、K2),但這兩組開(kāi)關(guān)實(shí)際上為分別并聯(lián),只需按需求焊接一側(cè)(屏幕一面)的開(kāi)關(guān)即可。

線路焊接

FlowShutter PCB 與 FC 的連接


如圖,將 FlowShutter PCB 的?Tx1、Rx1?分別與 FC 的一組串口按照 Tx、Rx 對(duì)應(yīng)相連的方式飛線焊接,并將兩塊 PCB 的?5V?與?GND?分別相連接。

FlowShutter PCB 與相機(jī)的線路連接


如圖,將 FlowShutter PCB 的?Tx2、Rx2?分別與 MultiPort 公頭的?Pin 7、Pin 8?對(duì)應(yīng)連接,并將?GND?與?Pin 2?或?Pin A5?相連接。

建議利用內(nèi)部含有大于 2 條導(dǎo)線的 USB 線纜連接。

如果相機(jī)不能正確與 FlowShutter PCB 通訊,請(qǐng)檢查?GND?是否正確連接。

MultiPort 是 Sony 在 Micro USB 接口的基礎(chǔ)上開(kāi)發(fā)的私有協(xié)議的接口。關(guān)于 MultiPort 有關(guān)引腳定義,請(qǐng)參閱:
Sony MultiPort 定義詳解
Combined charger and trigger cable for Sony mirrorless cameras like A6400

供電線路的連接

如圖,將充電板的?OUT+?串聯(lián)?撥動(dòng)開(kāi)關(guān)?與 Flowshutter PCB 的?5V?相連;
將充電板的?OUT-?與 Flowshutter PCB 的?GND?相連;
將電池與充電板相連接。

固件刷寫(xiě)與設(shè)置

FlowShutter PCB 的固件刷寫(xiě)與設(shè)置

將 Flowshutter PCB 通過(guò) USB-C 線纜連接至電腦,設(shè)備管理器中應(yīng)能檢測(cè)到硬件,記錄下 COM 號(hào)。

若 FlowShutter PCB 無(wú)法正確被電腦識(shí)別,請(qǐng)嘗試:

  1. 檢查 PCB 焊接、線纜連接。

  2. 將連接電腦的 USB-C to C 線纜更換為 USB-C to A 線纜。

MicroPython 固件刷寫(xiě)

打開(kāi)下載好的項(xiàng)目文件夾中?\flowshutter-master\tools\uPyCraft_V1.1.exe。
點(diǎn)擊菜單欄中的?Tools?->?BurnFirmware?,


選擇?board?為?esp32;
burn_addr?為?0x1000;
erease_flash?為?yes
com?為設(shè)備管理器中顯示的對(duì)應(yīng) COM 號(hào);
在?Firmware Choose?中選擇?Users,并選擇下載的固件?esp32-20220618-v1.19.1.bin。

點(diǎn)擊?ok?開(kāi)始燒寫(xiě)。并等待燒寫(xiě)完成。

程序燒錄

在 VScode 中打開(kāi)項(xiàng)目文件夾?\flowshutter-master。


修改?\flowshutter-master\pymakr.conf?中?"address"?為備管理器中顯示的對(duì)應(yīng) COM 號(hào)。


新建 Shell,輸入:

python build.py debug

待出現(xiàn)圖示輸出表明 Debug 模式已就緒。


點(diǎn)擊窗口左下角的?Upload?將程序燒錄至 FlowShutter。當(dāng)?Pymakr Console?有圖示輸出,F(xiàn)lowShutter 屏幕亮起時(shí),燒錄完成。

Pymakr 正確安裝后,VScode 左下角落處應(yīng)該顯示如圖的幾個(gè)按鈕,如果未顯示,可以嘗試安裝該插件的歷史版本(經(jīng)測(cè)試,v1.1.18 版本運(yùn)行正常)。

若程序燒錄不能正確進(jìn)行,請(qǐng)檢查屏幕排針焊接。

FC 的固件刷寫(xiě)與設(shè)置

固件刷寫(xiě)

將 FC 通過(guò) Micro USB 線纜連接至電腦,設(shè)備管理器中應(yīng)能檢測(cè)到硬件,同時(shí) FC 上的兩個(gè)發(fā)光二極管開(kāi)始閃亮。


打開(kāi) Betaflight Configurator,窗口右上方的下拉菜單中應(yīng)能顯示出 FC 的串口號(hào)和名稱。


此時(shí)斷開(kāi) FC 與電腦的連接,在按住 FC 上的微動(dòng)開(kāi)關(guān)的同時(shí)重新連接電腦,F(xiàn)C 將進(jìn)入 BootLoader,此時(shí) Betaflight Configurator 窗口右上方的下拉菜單中應(yīng)顯示 DFU、BootLoader 等字樣。


點(diǎn)擊左側(cè)菜單中的?Update Firmware,在?Firmware Flasher?中選擇你的飛控對(duì)應(yīng)的最新版固件,選擇最下方的?Load Firmware (Online),待下載完成后,點(diǎn)擊?Flash Firmware?以刷寫(xiě)固件。

刷寫(xiě)完成后重新拔插 FC,Betaflight Configurator 應(yīng)能正確檢測(cè)到 FC。此時(shí)固件刷寫(xiě)完成。

FC 出廠時(shí)可能會(huì)附帶固件,但是建議更新到最新版本以避免不需要的 BUG。

固件設(shè)置

FC 重啟后,點(diǎn)擊 Betaflight Configurator 窗口右上方的?connect, 下面將對(duì) FC 做一些簡(jiǎn)單的設(shè)置。

加速度計(jì)校準(zhǔn)

點(diǎn)擊左側(cè)菜單的Setup,將 FC 水平靜置,點(diǎn)擊?Calibrate Accelerometer?,待校準(zhǔn)完成后,移動(dòng) FC,可觀察到畫(huà)面中三維模型的運(yùn)動(dòng)與 FC 的運(yùn)動(dòng)同步。

預(yù)設(shè)應(yīng)用

點(diǎn)擊左側(cè)菜單的Presets,搜索查找?Gyroflow minimum settings,選擇該預(yù)設(shè),點(diǎn)擊Pick應(yīng)用預(yù)設(shè),并點(diǎn)擊窗口右下角的Save and Reboot保存

端口設(shè)置

點(diǎn)擊左側(cè)菜單的Ports,根據(jù)?#FlowShutter PCB 與 FC 的連接?中的線路連接,開(kāi)啟對(duì)應(yīng)串口的?Serial Rx?開(kāi)關(guān),并點(diǎn)擊窗口右下角的Save and Reboot保存。

模式設(shè)置

點(diǎn)擊左側(cè)菜單的Modes,將ARM對(duì)應(yīng)的通道改為AUX 1,并將觸發(fā)行程調(diào)整到1800-2100。

當(dāng) FlowShutter PCB 收到開(kāi)始錄制命令時(shí),會(huì)通過(guò)?AUX 1?向 FC 發(fā)送 ARM 信號(hào), 其行程為2050??赏ㄟ^(guò)?Reciver?菜單查看。

Betaflight 固件會(huì)在 FC 就緒(ARM)狀態(tài)下開(kāi)始記錄黑匣子數(shù)據(jù),并在取消就緒(DISARM)狀態(tài)時(shí)結(jié)束記錄。

黑匣子設(shè)置

請(qǐng)先將 Micro SD 卡插入 FC。

點(diǎn)擊左側(cè)菜單的?Blackbox,在?Blackbox configuration?一欄中,將?Blackbox logging device?選擇為?SD CardBlackbox logging rate?選擇最低的?500Hz?即可,點(diǎn)擊下方的?Save and Reboot?保存。

在?Onboard SD Card?一欄中,對(duì) SD 卡進(jìn)行初始化,SD 卡正確配置完成后應(yīng)當(dāng)顯示為如圖界面。

若 SD 卡錯(cuò)誤,請(qǐng)將 SD 卡格式化為 FAT32。由于 FC 只能利用到最大 4GB 的儲(chǔ)存空間,請(qǐng)選擇小容量的 SD 卡。

若你的 FC 具有板載閃存,也可以選擇記錄黑匣子數(shù)據(jù)到板載。但板載閃存空間通常較小,當(dāng)記錄滿板載閃存后,Betaflight 將暫停記錄直至手動(dòng)釋放空間。

外殼安裝

請(qǐng) 3D 打印 @3nit 設(shè)計(jì)的外殼。按照?qǐng)D示順序自上而下安裝。

需要先將內(nèi)部的三層板利用尼龍/銅柱和螺母固定,再套上外殼。

安裝時(shí),盡量保證 FC 上的箭頭指向水平向前,這會(huì)在穩(wěn)定化時(shí)省去一些麻煩。

使用方法

FlowShutter 的設(shè)置

撥動(dòng)開(kāi)關(guān)使 FlowShutter 上電。

單擊?左鍵?查看電壓,單擊?右鍵?向 FC 發(fā)送 ARM/DISARM 命令。*
長(zhǎng)按?左鍵?進(jìn)入設(shè)置菜單,長(zhǎng)按?右鍵?進(jìn)入電源菜單。


在設(shè)置菜單中將?Camera Protocol?改為?SONY MTP?,即可通過(guò)相機(jī)錄制按鍵控制 FlowShutter。

*當(dāng)?Camera Protocol?為?SONY MTP?時(shí),單擊?右鍵?不會(huì)向 FC 發(fā)送 ARM/DISARM 命令。

視頻拍攝

先將 FlowShutter 上電,啟動(dòng)完成后再將 MultiPort 端口接入相機(jī),F(xiàn)lowShutter 屏幕上顯示如圖所示的 MultiPort 握手界面,此時(shí) FC 單燈常亮。


按相機(jī)上的錄制按鈕開(kāi)始錄制,F(xiàn)lowShutter 屏幕顯示?FC Armed Recording,此時(shí) FC 由單指示燈常亮變?yōu)殡p指示燈常亮,表明 FC 已開(kāi)始記錄陀螺儀數(shù)據(jù);*


停止錄制時(shí),顯示?FC Disarmed Camera stop。

*使用前請(qǐng)將 Micro SD 卡插入 FC,即使未插入 SD 卡,仍然會(huì)正常顯示顯示?FC Armed Recording

若 FlowShutter 屏幕不斷閃爍 MultiPort 握手界面,可能為供電電壓不足,請(qǐng)為電池充電。

視頻增穩(wěn)、去果凍效應(yīng)

分別將相機(jī)錄制的視頻、FlowShutter 記錄的 .bfl 文件、鏡頭配置文件導(dǎo)入 Gyroflow。

點(diǎn)擊窗口右上角的?Auto Sync?將視頻與運(yùn)動(dòng)數(shù)據(jù)同步,再根據(jù)需要調(diào)整下方的?Smoothness?Rolling shutter correction?等參數(shù)后導(dǎo)出視頻。

自動(dòng)同步依賴畫(huà)面和陀螺儀數(shù)據(jù)的變化。如果自動(dòng)同步后視頻抖動(dòng)仍沒(méi)有明顯改善,可通過(guò)在時(shí)間軸上手動(dòng)添加同步點(diǎn)的方式微調(diào)。

關(guān)于鏡頭配置文件:

  1. Gyroflow 不能對(duì)變焦鏡頭的所有焦段都連續(xù)地實(shí)現(xiàn)增穩(wěn),通常鏡頭配置文件會(huì)表明其校準(zhǔn)的焦段。

  2. 當(dāng)相機(jī)以不同記錄格式錄制視頻時(shí),其采用的傳感器區(qū)域有所不同,導(dǎo)致等效焦段的差異,請(qǐng)務(wù)必按照記錄格式選取鏡頭配置文件。

問(wèn)題和討論

穩(wěn)定性

目前似乎會(huì)偶然性遇到 .bfl 文件只能部分被 Gyroflow 讀取的問(wèn)題。但通過(guò) Betaflight Blackbox Explorer 查看黑匣子數(shù)據(jù)時(shí)卻不會(huì)出現(xiàn)這個(gè)問(wèn)題。@3nit 目前還沒(méi)太弄明白。

供電方式

  • Sony 相機(jī)可通過(guò) MultiPort 對(duì)外輸出 3.3V 供電,相機(jī)開(kāi)機(jī)后會(huì)立刻輸出 3.3V 供電并嘗試與連接的硬件協(xié)議握手,這個(gè)嘗試握手的時(shí)間約 323ms*。這要求 FlowShutter 需要在 323ms 啟動(dòng)協(xié)議握手程序,但目前開(kāi)源作者提供的固件啟動(dòng)時(shí)間遠(yuǎn)大于 0.1s,直接由相機(jī)供電時(shí),無(wú)法完成與相機(jī)的握手,必須使用外接電池率先啟動(dòng) FlowShutter。這一點(diǎn)十分不優(yōu)雅。

  • 可以索性拋棄內(nèi)置電池,直接采用外置電池(如充電寶)直接同時(shí)為相機(jī)和 FlowShutter 供電,能大幅延長(zhǎng) FlowShutter 的使用時(shí)間。

*參考?sony-multi-terminal.md

充電方式

目前 @3nit 的方案將充電保護(hù)板內(nèi)置于 FlowShutter 中,徒增體積和重量。未來(lái)打算將電池改為插拔式,并將充電保護(hù)板移出 FlowShutter,而作為獨(dú)立裝置。

功耗

目前的開(kāi)源方案中使用的 OLED 屏幕與 FC 比較耗電,整機(jī)功耗約 1W。搭配 250mAh 的鋰電池使用時(shí)長(zhǎng)僅 1h 左右,感覺(jué)可用性不是很高。即使能實(shí)現(xiàn)機(jī)身供電,對(duì)相機(jī)電池也是不小的壓力。

結(jié)構(gòu)設(shè)計(jì)

@3nit 的外殼設(shè)計(jì)得比較草率,兩側(cè)的強(qiáng)度不高,基本起不到防塵防水作用,也不是很美觀,裝配過(guò)程十分陰間。目前只有采用冷靴固定的方案。

成本

FC 為成本中的主要部分,但利用到的功能很簡(jiǎn)單,只用來(lái)做這個(gè)太虧了。百來(lái)塊錢(qián)一個(gè)飛控就用來(lái)干這個(gè)?


難免紕漏,敬請(qǐng)指正!

本文基于開(kāi)源項(xiàng)目?Gyroflow?及?FlowShutter?撰寫(xiě)。

特別鳴謝?@5V1A?提供技術(shù)支持!


基于陀螺儀數(shù)據(jù)實(shí)現(xiàn)視頻防抖的硬件:適用于 Sony 相機(jī)的 FlowShutter 制作不完全指北的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
车致| 耿马| 珲春市| 南宫市| 尚志市| 普兰店市| 通化市| 屏南县| 甘南县| 万全县| 普兰县| 紫金县| 黔西| 赤城县| 招远市| 乌兰浩特市| 深泽县| 蒲江县| 黄梅县| 清新县| 东乡族自治县| 开鲁县| 绵竹市| 大宁县| 景宁| 株洲市| 铜川市| 体育| 兴化市| 阳曲县| 凤冈县| 宝山区| 吉首市| 绥芬河市| 化德县| 南溪县| 普兰县| 辽阳县| 杭锦后旗| 句容市| 常宁市|