日韩欧美国产一区二区三区_五月天欧美精品_国产精品一区不卡_欧美精品乱码久久久久久

內(nèi)容字號:默認(rèn)大號超大號

段落設(shè)置:段首縮進(jìn)取消段首縮進(jìn)

字體設(shè)置:切換到微軟雅黑切換到宋體






用樹莓派和業(yè)余無線電打造遠(yuǎn)距離無線視頻傳送

時(shí)間:2015-08-21 來源:中國集群通信網(wǎng) 作者:張濤濤 點(diǎn)擊:

在本項(xiàng)目中,我用配有PiCam攝影機(jī)的Raspberry Pi做為無線攝影機(jī),可遠(yuǎn)距離、約百米內(nèi)傳送影像。影像的傳送是由慢速掃描電視(SSTV)透過業(yè)余無線電臺(俗稱火腿電臺)于2米波段(144.5兆赫)傳輸。

感謝 Oliver Mattos和Oskar Weigl,Raspberry Pi可以自行發(fā)出高頻FM訊號,低功率傳輸時(shí)無須使用額外的電子產(chǎn)品。若功率須些微增加,多加上一個(gè)單電晶體或雙電晶體的放大器即可。另外,推薦使用低通濾波器以過濾高頻訊號。

此項(xiàng)目還包含了偵測動態(tài)物體的Python程序碼,讓Raspberry Pi做為遠(yuǎn)超過一般WiFi網(wǎng)路范圍的無線監(jiān)視攝影機(jī)。請注意!你必須擁有業(yè)馀無線電執(zhí)照才能只用此裝置。

以下是裝置圖示,請按照步驟進(jìn)行。項(xiàng)目程序碼可以在我的博客或我的GitHub網(wǎng)頁找到。

特別感謝KI4MCW (SSTV), Oliver Mattos 以及 Oskar Weigl (PiFm)

用樹莓派和業(yè)余無線電打造遠(yuǎn)距離無線視頻傳送

圖示:antenna 天線/Pi NoIR Camera PiNoIR攝影機(jī)/PiFace control & display PiFace控制顯示面板/Battery 電池

可攜式SSTV攝影機(jī)會拍攝影像并且經(jīng)由業(yè)馀無線電臺SSTV攝影機(jī)傳送畫面。

材料

  • Raspberry Pi單板電腦,Maker Shed網(wǎng)站商品編號#MKPRI2,makershed.com。我選擇Raspbian作業(yè)系統(tǒng),因?yàn)樗荝aspberry Pi最熱銷也有良好支援的作業(yè)系統(tǒng)。

  • Pi NoIR攝影機(jī)模組,Maker Shed網(wǎng)站商品編號 #MKRPI6。一般的PiCam或USB網(wǎng)路攝影機(jī)亦可。

  • PiFace控制顯示面板(非必要), 但推薦選購。我打算把Raspberry Pi當(dāng)作隨拍慢速掃描電視攝影機(jī)來使用,因此有顯示面板跟按鈕非常方便。

  • 電池,5伏特US移動電源 。

  • 一小段電線,天線會使用到 。

  • 束帶,支撐天線用 。

  • 牛皮紙膠, 任何項(xiàng)目的必備品。

第一步:連接硬件

用樹莓派和業(yè)余無線電打造遠(yuǎn)距離無線視頻傳送

用樹莓派和業(yè)余無線電打造遠(yuǎn)距離無線視頻傳送

用樹莓派和業(yè)余無線電打造遠(yuǎn)距離無線視頻傳送

  • 在這個(gè)項(xiàng)目里,會用到的硬件只有Raspberry Pi、Pi NoIR攝影機(jī)、PiFace控制顯示面板和做為天線的一段電線。

  • 為達(dá)到可攜性,用牛皮膠布把一個(gè)5V USB電池組粘到Raspberry Pi外殼上。

第二步:拍攝畫面

  • 首先要做的是拍攝要傳輸?shù)漠嬅妫?raspistill 指令行功能就能輕鬆達(dá)成:

raspistill -t 1 --width 320 --height 256 -e png -o /tmp/image.png

  • 針對SSTV,我們需要320×256畫素的小影像。它會以PNG影像檔格式存到 /tmp 目錄。

第三步:將影像轉(zhuǎn)換為SSTV聲音檔

  • 接著,我們要把影像轉(zhuǎn)換為可以無線傳輸?shù)穆曇魴n。Raspberry Pi有一些SSTV指令可以選擇。

  • 第一個(gè)拿來測試的是PiSSTV,這是一種Python指令。它可以用,但速度非常慢,一個(gè)影像要好幾分鐘才能轉(zhuǎn)換完成。(可以參考我博客上的細(xì)節(jié)。)

  • 接著我找到由ham KI4MCW羅伯特‧馬歇爾(Robert Marshall)所編寫的簡單的C語言指令。可惜在前導(dǎo)音調(diào)中有一些錯(cuò)誤,但都很容易修正。我還把它改得更有彈性,可以在指令行設(shè)定聲音采樣頻率。

  • 我的指令的原始碼可以在GitHub找到。編譯原始碼:

pi@rpicamera ~/sstv $ sudo apt-get install libgd2-xpm-dev   pi@rpicamera ~/sstv $ sudo apt-get install libmagic-dev   pi@rpicamera ~/sstv $ gcc -lgd -lmagic -o pisstv pisstv.c

  • 執(zhí)行程序:

pi@rpicamera ~/pisstv $ ./pisstv /tmp/image.png 22050   Constants check:         rate = 22050         BITS = 16       VOLPCT = 20        scale = 6553      us/samp = 45.351474      2p/rate = 0.000285  Checking filetype for file [/tmp/image.png]  File is a PNG image.  Input  file is [/tmp/image.png].  Output file is [/tmp/image.png.wav].    Writing audio data to file.  Got a total of [2589556] samples.  Done writing to audio file.  Created soundfile in 4 seconds.

  • 我們可以看到SSTV聲音檔只花了4秒鐘就建立完成。一切都很順利。下一步:無線聲音傳輸。

第四步:以PiFM傳輸聲音

用樹莓派和業(yè)余無線電打造遠(yuǎn)距離無線視頻傳送

  • 可以加裝一個(gè)無線發(fā)射器,像可攜式無線收發(fā)器那樣,但讓Raspberry Pi自己產(chǎn)生高頻訊號有趣多了。這都要感謝Oliver Mattos和Oskar Weigl的PiFM軟件(可以參考我們的Raspberry Pi)。

  • 在這里可以找到他們的程序碼。它已經(jīng)有很大的進(jìn)步:最初的版本很簡單,但使用了所有的CPU周期,而且訊號會受到其他程序運(yùn)作時(shí)產(chǎn)生的假信號干擾。最新版本使用的是DMA,運(yùn)作很順暢,也不會占用所有的CPU周期。但這個(gè)程序碼現(xiàn)在復(fù)雜多了。

  • Oliver and Oskar有很大的貢獻(xiàn),但PiFm軟件用在火腿無線電和SSTV就不適合。主要有兩個(gè)問題。首先是頻寬太大,第二個(gè)是定時(shí)問題。定時(shí)對SSTV很重要,而它有些誤差。

第五步:降低頻寬

用樹莓派和業(yè)余無線電打造遠(yuǎn)距離無線視頻傳送

用樹莓派和業(yè)余無線電打造遠(yuǎn)距離無線視頻傳送

用樹莓派和業(yè)余無線電打造遠(yuǎn)距離無線視頻傳送

  • 降低頻寬非常簡單。每位火腿族知道,頻寬可以由頻率調(diào)變的調(diào)變係數(shù)設(shè)定,和調(diào)變高頻載體的聲音訊號音量相等。在原始碼里,它是單一個(gè)值;可以在 Outputter/class的 consume 函數(shù)找到。

  • 這是原來的程序碼:

void consume(float* data, int num) {    for (int i=0; i<num;i++){        float value = data[i]*8;  // modulation index (AKA volume!)

  • 我做了這個(gè)值的指令行參數(shù)。新的程序碼是這樣:

void consume(float* data, int num) {    for (int i=0; i<num;i++){        float value = data[i]*modulation_index;  // modulation index (AKA volume!) (original 8)      

  • 可惜這樣效果不好,仍然有很強(qiáng)的邊帶,所以在此軟體的未來版本中還需要多加關(guān)注。

  • 第一張圖是全頻寬FM訊號的頻譜圖。

  • 第二個(gè)頻譜圖顯示降低的頻寬。調(diào)整中間的波峰后得到乾淨(jìng)的訊號,但還需要清除邊帶。

  • 最后一張圖是PiFm最初版本的降低頻寬訊號,頻寬很棒,但訊號受到CPU執(zhí)行其他程序時(shí)產(chǎn)生的干擾。

第六步:調(diào)整定時(shí)

用樹莓派和業(yè)余無線電打造遠(yuǎn)距離無線視頻傳送

用樹莓派和業(yè)余無線電打造遠(yuǎn)距離無線視頻傳送

  • PiFm的聲音傳輸采樣率稍微增加或減少時(shí),聽者幾乎感覺不到差別,但對于SSTV就不一樣了,SSTV的定時(shí)需要很精準(zhǔn)。

  • 稍有誤差的采樣率會造成影像傾斜,像在第一張圖所看到的。

  • 第二張圖是採樣正確的相同聲音檔。

  • 修正定時(shí)很簡單,只要修正原始碼中的定時(shí)常數(shù)。

//clocksPerSample = 22500.0 / rate * 1373.5;  // for timing, determined by experiment clocksPerSample = 22050.0 / rate * timing_correction;  // for timing, determined by experiment

  • 這邊可以看到我用變數(shù) timing_correction 來取代定時(shí)常數(shù)(1373.5),可以由指令行來設(shè)定。個(gè)別的Raspberry Pi會有不同的數(shù)值。在我的例子里,數(shù)值是1414.0。我想知道適合你的設(shè)定值是多少,請?jiān)谙旅媪粞愿嬖V我。關(guān)于其他程式碼的修改,請參考在GitHub的原始檔桉。

第七步:新增呼號

  • 開始用你的火腿無線電授權(quán)傳輸SSTV訊號時(shí),需要在每次傳輸時(shí)傳送你的呼號,所以我們要把這項(xiàng)資訊新增到影像里。

  • 我們可以從指令行用 imagick或從Python影像資料庫(PIL)來完成。這個(gè)項(xiàng)目里兩種都有使用。

第八步:捕捉動態(tài)

  • 現(xiàn)在我們可以擷取影像并用PiFm來順利傳送了,接下來我們的任務(wù)是在鏡頭前有動靜時(shí)觸發(fā)影像擷取。我把這個(gè)指令放在Python,搭配PIL。這個(gè)程式碼很簡單,它會比較前一個(gè)影像和當(dāng)前影像的畫素。如果變化太大,就會傳送影像。

這里是程序碼的片段:

# loop forever  while (True):           
# grab comparison image           
imgnew, bufnew = captureImage()           
# Count changed pixel           
changedPixels = 0           
for x in xrange(0, 320):                   
for y in xrange(0, 256):                           
# Just check red channel as it's dominant for PiCam NoIR                           
pixdiff = abs(buf[x,y][0] - bufnew[x,y][0])                           
if pixdiff > threshold:                                   
changedPixels += 1           
# Transmit an image if pixels changed           
if changedPixels > sensitivity:                   
# Swap comparison buffers                   
img = imgnew                   
buf = bufnew                   
transmitImage(img.copy())

 

(中國集群通信網(wǎng) | 責(zé)任編輯:陳曉亮)

中國集群通信網(wǎng),國內(nèi)首家集群通信專業(yè)網(wǎng)站。

Copyright © PttCn.Net, All Rights Reserved.   

聯(lián)系我們 聯(lián)系我們 中國集群通信網(wǎng) 對講機(jī)學(xué)堂 對講機(jī)世界

主站蜘蛛池模板: 国产日产亚洲精品| 亚洲二区自拍| 国产精品成人aaaaa网站| 国产精品第一页在线| 日韩精品无码一区二区三区免费 | www.中文字幕在线| 久久av一区二区| 欧美日韩一区二区三区在线视频| 一区二区高清视频| 精品国产免费人成电影在线观... 精品国产一区二区三区久久久狼 精品国产一区二区三区久久狼黑人 | 色综合久综合久久综合久鬼88| 国产亚洲精品网站| 久久久视频精品| 久久久亚洲福利精品午夜| 午夜精品99久久免费| 国产精品天天狠天天看| 国产欧美一区二区三区久久| 久久99国产综合精品女同| 欧美一级中文字幕| 欧美久久久精品| 欧美亚洲国产成人| 欧美日韩电影在线观看| 日本在线播放一区| 日韩欧美视频第二区| 青青成人在线| 久久综合电影一区| 久久久久福利视频| 久久久久久久久91| 久久99九九| 国产精品免费视频xxxx| 国产精品久久久久久av福利| 国产精品久久久久久久久久久不卡 | 国产日韩欧美夫妻视频在线观看| 久久精品视频在线观看| 久久久国产一区二区| 国产在线精品一区| 国产精品综合久久久| 国产精品久久久91| 99久久自偷自偷国产精品不卡| 不卡日韩av| 婷婷亚洲婷婷综合色香五月|