91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

中值濾波的原理和C代碼

撞上電子 ? 2023-12-05 08:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

中值濾波是一種非線性數(shù)字濾波技術(shù),主要應(yīng)用于信號(hào)處理和圖像處理領(lǐng)域,用于減小信號(hào)中的噪聲和離群值。中值濾波的核心思想是通過(guò)計(jì)算一組數(shù)據(jù)點(diǎn)的中間值,以抑制脈沖噪聲等離群值的影響,從而實(shí)現(xiàn)信號(hào)的平滑處理。

1,中值濾波的操作步驟如下:

窗口設(shè)置:中值濾波使用一個(gè)固定大小的窗口覆蓋信號(hào)中的數(shù)據(jù)點(diǎn)。這個(gè)窗口的大小是根據(jù)具體應(yīng)用需求事先確定的,通常是奇數(shù),例如3x3、5x5等。

數(shù)據(jù)排序:在每個(gè)窗口位置,將窗口內(nèi)的數(shù)據(jù)點(diǎn)按照大小進(jìn)行排序。這樣,窗口中的數(shù)據(jù)就被排列成一個(gè)有序序列。


中值計(jì)算:選擇排序后序列的中間位置的值作為濾波結(jié)果。如果窗口大小是奇數(shù),中值就是排序序列的正中間的值;如果窗口大小是偶數(shù),中值通常是中間兩個(gè)值的平均值。

2,中值濾波的原理可通過(guò)以下幾個(gè)關(guān)鍵概念來(lái)理解:

排序特性: 中值濾波的核心在于對(duì)數(shù)據(jù)進(jìn)行排序。排序后,中間值處于排序序列的中間位置,因此能夠較好地反映數(shù)據(jù)的趨勢(shì)

非線性特性: 與線性濾波器不同,中值濾波是一種非線性濾波方法。它對(duì)噪聲和離群值的敏感性相對(duì)較低,因?yàn)橹兄抵饕艽翱谥信判蛐蛄械闹虚g位置的影響,而不受其他數(shù)值的大小影響。


適用于離散信號(hào): 中值濾波通常適用于處理離散信號(hào),例如時(shí)間序列中的測(cè)量數(shù)據(jù)。在圖像處理中,中值濾波也常被用于去除圖像中的噪聲。

中值濾波的優(yōu)點(diǎn)在于它能夠有效抑制離群值,同時(shí)保持信號(hào)邊緣信息,不引入額外的相位變化。然而,中值濾波也有一些缺點(diǎn),比如在處理高斯噪聲等均值為零的噪聲時(shí)效果相對(duì)較差,因?yàn)橹兄禐V波并不是最優(yōu)的線性估計(jì)器。

3,示例代碼:

#include #define WINDOW_SIZE 3// 函數(shù)原型float medianFilter(float data[], int dataSize);int main() {// 輸入數(shù)據(jù)float inputData[] = {1.0, 3.0, 5.0, 2.0, 8.0, 6.0, 4.0, 7.0, 9.0, 10.0};int dataSize = sizeof(inputData) / sizeof(inputData[0]);// 創(chuàng)建輸出數(shù)組floatoutputData[dataSize];// 對(duì)每個(gè)數(shù)據(jù)點(diǎn)應(yīng)用中值濾波for (int i = 0; i < dataSize; ++i) { outputData[i] = medianFilter(inputData, dataSize); }// 打印結(jié)果printf("Original Data:\n");for (int i = 0; i < dataSize; ++i) {printf("%f ", inputData[i]); }printf("\nFiltered Data:\n");for (int i = 0; i < dataSize; ++i) {printf("%f ", outputData[i]);????}return 0;}// 計(jì)算中值濾波float medianFilter(float data[], int dataSize) {float window[WINDOW_SIZE];for (int i = 0; i < dataSize; ++i) {// 填充窗口for (int j = 0; j < WINDOW_SIZE; ++j) {int index = i - (WINDOW_SIZE / 2) + j;// 處理窗口邊界情況if (index < 0) { window[j] = data[0]; } else if (index >= dataSize) { window[j] = data[dataSize - 1]; } else { window[j] = data[index]; } }// 對(duì)窗口內(nèi)數(shù)據(jù)進(jìn)行排序for (int j = 0; j < WINDOW_SIZE - 1; ++j) {for (int k = 0; k < WINDOW_SIZE - j - 1; ++k) {if (window[k] > window[k + 1]) {// 交換float temp = window[k]; window[k] = window[k + 1]; window[k + 1] = temp; } } }// 選擇中間值作為濾波結(jié)果float median = window[WINDOW_SIZE / 2];return median; }}

在這個(gè)簡(jiǎn)單的示例中,WINDOW_SIZE 定義了中值濾波的窗口大小。medianFilter 函數(shù)對(duì)每個(gè)數(shù)據(jù)點(diǎn)應(yīng)用中值濾波,處理窗口邊界情況以確保濾波窗口不越界。請(qǐng)注意,這只是一個(gè)基本的實(shí)現(xiàn),實(shí)際應(yīng)用中可能需要根據(jù)具體需求進(jìn)行調(diào)整和優(yōu)化。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 濾波
    +關(guān)注

    關(guān)注

    10

    文章

    703

    瀏覽量

    57981
  • 信號(hào)處理
    +關(guān)注

    關(guān)注

    49

    文章

    1143

    瀏覽量

    105101
  • C代碼
    +關(guān)注

    關(guān)注

    1

    文章

    90

    瀏覽量

    15185
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    二階濾波C代碼的實(shí)現(xiàn)

    [*]{ [*] sample_t a0, a1, a2, a3, a4; [*] sample_t x1, x2, y1, y2; [*]}biquad_state; [*] [*]// 計(jì)算濾波器的系數(shù),2nd-order
    發(fā)表于 01-27 07:09

    TDK多層低通濾波器DEA162025LT - 5003C3的詳細(xì)解析

    TDK多層低通濾波器DEA162025LT - 5003C3的詳細(xì)解析 作為電子工程師,在射頻電路設(shè)計(jì)中,濾波器的選擇至關(guān)重要。今天就為大家詳細(xì)介紹TDK的一款多層低通濾波器DEA16
    的頭像 發(fā)表于 01-23 15:45 ?153次閱讀

    TDK多層帶通濾波器DEA202450BT - 1213C1:2400 - 2500MHz頻段的理想之選

    TDK多層帶通濾波器DEA202450BT - 1213C1:2400 - 2500MHz頻段的理想之選 作為電子工程師,在射頻電路設(shè)計(jì)中,選擇合適的濾波器至關(guān)重要。今天來(lái)和大家分享TDK推出的一款
    的頭像 發(fā)表于 01-15 17:50 ?1072次閱讀

    TDK多層低通濾波器DEA160960LT - 5044C1:電子工程師的實(shí)用之選

    TDK多層低通濾波器DEA160960LT - 5044C1:電子工程師的實(shí)用之選 在電子設(shè)備的設(shè)計(jì)中,濾波器是不可或缺的關(guān)鍵元件,它能夠有效過(guò)濾特定頻率的信號(hào),確保設(shè)備的正常運(yùn)行和性能穩(wěn)定。今天
    的頭像 發(fā)表于 12-17 16:30 ?307次閱讀

    用于單片機(jī)幾種C語(yǔ)言算法

    ,必要時(shí)可通過(guò)實(shí)驗(yàn)得到 中值濾波算法 該運(yùn)算的過(guò)程是對(duì)某一參數(shù)連續(xù)采樣N次(N一般為奇數(shù)),然后把N次采樣的值按從小到大排列,再取中間值作為本次采樣值,整個(gè)過(guò)程實(shí)際上是一個(gè)序列排序的過(guò)程。算法的程序代碼
    發(fā)表于 11-27 06:00

    EMC共模濾波器Layout設(shè)計(jì)

    一共模濾波器的等效電路與工作原理共模濾波器是抑制電磁干擾(EMI)的核心器件,其性能高度依賴(lài)PCB布局設(shè)計(jì)。從等效電路模型(圖1)可以看出,共模濾波器(L3)與寄生參數(shù)(C1/
    的頭像 發(fā)表于 10-21 11:33 ?969次閱讀
    EMC共模<b class='flag-5'>濾波</b>器Layout設(shè)計(jì)

    基美通用貼片電容C0603C系列在電源濾波中的效果怎么樣?

    于旁路、耦合和濾波等高頻電路。那么,基美通用貼片電容C0603C系列在電源濾波中的效果怎么樣?其實(shí),基美代理商南山電子認(rèn)為,其通用貼片電容C0603C系列在電源
    的頭像 發(fā)表于 09-11 17:07 ?1197次閱讀
    基美通用貼片電容<b class='flag-5'>C0603C</b>系列在電源<b class='flag-5'>濾波</b>中的效果怎么樣?

    TPSF12C1獨(dú)立式有源EMI濾波器技術(shù)解析

    Texas Instruments TPSF12C1/TPSF12C1-Q1 獨(dú)立的 有源濾波器 IC是為減少單相交流 共模(CM)電磁干擾(EMI)系統(tǒng)中的 功率 。配置了 電壓 感應(yīng)和電流
    的頭像 發(fā)表于 08-22 15:35 ?944次閱讀
    TPSF12<b class='flag-5'>C</b>1獨(dú)立式有源EMI<b class='flag-5'>濾波</b>器技術(shù)解析

    Perforce QAC產(chǎn)品簡(jiǎn)介:面向C/C++的靜態(tài)代碼分析工具(已通過(guò)SO 26262認(rèn)證)

    Perforce QAC專(zhuān)為C/C++開(kāi)發(fā)者打造,支持多種編碼規(guī)范、功能安全標(biāo)準(zhǔn)(ISO 26262)等,廣泛用于汽車(chē)、醫(yī)療、嵌入式開(kāi)發(fā)領(lǐng)域,可幫助快速識(shí)別關(guān)鍵缺陷、提升代碼質(zhì)量、實(shí)現(xiàn)合規(guī)交付。
    的頭像 發(fā)表于 07-10 15:57 ?1277次閱讀
    Perforce QAC產(chǎn)品簡(jiǎn)介:面向<b class='flag-5'>C</b>/<b class='flag-5'>C</b>++的靜態(tài)<b class='flag-5'>代碼</b>分析工具(已通過(guò)SO 26262認(rèn)證)

    基于Matlab與FPGA的雙邊濾波算法實(shí)現(xiàn)

    前面發(fā)過(guò)中值、均值、高斯濾波的文章,這些只考慮了位置,并沒(méi)有考慮相似度。那么雙邊濾波來(lái)了,既考慮了位置,有考慮了相似度,對(duì)邊緣的保持比前幾個(gè)好很多,當(dāng)然實(shí)現(xiàn)上也是復(fù)雜很多。本文將從原理入手,采用Matlab與FPGA設(shè)計(jì)實(shí)現(xiàn)雙邊
    的頭像 發(fā)表于 07-10 11:28 ?4561次閱讀
    基于Matlab與FPGA的雙邊<b class='flag-5'>濾波</b>算法實(shí)現(xiàn)

    TSIF83A035C集成濾波器參數(shù)指南

    TSIF83A035C集成濾波器是一種高頻寬帶濾波器,對(duì)EMI干擾噪聲具有良好的抑制效果??梢蕴娲鄠€(gè)疊層陶瓷電容器,并且具有極低的等效串聯(lián)電感(ESL)。廣泛應(yīng)用于各種電子設(shè)備中,是EMC
    發(fā)表于 04-17 15:45 ?0次下載

    TSIF93A035C集成濾波器參數(shù)指南

    TSIF93A035C集成濾波器是一種高頻寬帶濾波器,對(duì)EMI干擾噪聲具有良好的抑制效果??梢蕴娲鄠€(gè)疊層陶瓷電容器,并且具有極低的等效串聯(lián)電感(ESL)。廣泛應(yīng)用于各種電子設(shè)備中,是EMC
    發(fā)表于 04-17 15:43 ?0次下載

    TSIF32A110C集成濾波器參數(shù)指南

    TSIF32A110C集成濾波器是一種高頻寬帶濾波器,對(duì)EMI干擾噪聲具有良好的抑制效果??梢蕴娲鄠€(gè)疊層陶瓷電容器,并且具有極低的等效串聯(lián)電感(ESL)。廣泛應(yīng)用于各種電子設(shè)備中,是EMC
    發(fā)表于 04-17 15:35 ?1次下載

    基于STM32C8T6控制,F(xiàn)SR402壓力傳感器+oled屏幕顯示代碼

    基于STM32C8T6控制,F(xiàn)SR402壓力傳感器+oled屏幕顯示代碼
    發(fā)表于 04-14 15:06 ?8次下載

    如何為micropython添加自己的C代碼庫(kù)?

    部分代碼需要更高效的效率 如何為micropython添加自己的C代碼庫(kù)? 是否有教程? 如果可以的話是否可以提供一個(gè)實(shí)現(xiàn)實(shí)例?
    發(fā)表于 03-11 07:03