![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
信号(语音、图像、其他)处理
X_s_yu彧
一个想要搞点名堂出来的小白。
关于小白的博客,如有问题,欢迎批评指正。邮箱地址:xiaosonglanyu@163.com
展开
-
图像逆光复原
1、提供可一种图像逆光复原的方案,针对逆光图像提供一种亮度调节方案,使得处理后的图像适于人眼获取原始逆光区域信息,此方案流程图如下:图1 处理方案的流程2、具体实施过程本方案采用图像分块、设置亮度阈值区间的方法整体提高图像亮度值进行恢复逆光图像。具体实现流程如下:(1)设置分块后每块图像块的宽度和高度,在原图像上利用rectangle函数绘制各图像块的边界用(2)根据宽度和高...原创 2020-01-07 12:47:19 · 3024 阅读 · 5 评论 -
通信系统通信过程仿真(联合信源信道编码)
以一幅灰度图像为例对通信系统的通信过程进行仿真,过程如下图所示:1、不经过信道编码与译码,图像经过BSC信道传输后的误码率,此处的编码方法为霍夫曼编码。MATLAB仿真程序如下:clear allclcI0=imread('Penguinshead3.jpg');I1=rgb2gray(I0);subplot(1,3,1),imshow(I0),title('原图')subplot...原创 2019-12-28 20:28:07 · 2716 阅读 · 1 评论 -
二元对称信道输入二值图像仿真
二元对称信道如图所示:其中错误转移概率为,正确转移概率为,,,,。强对称信道(均匀信道)的信道矩阵是阶的矩阵,信道容量为,对于二元对称信道,信道容量,(此处的对数运算均为以2为底, ),对二元对称信道进行仿真,代码如下:clear allclcI=imread('star.jpg');Imgray=rgb2gray(I);thresh=graythresh(I); ...原创 2019-10-30 21:53:03 · 4077 阅读 · 3 评论 -
电话拨键号码(DTMF信号)识别
1、流程图1 流程图2、MATLAB实现(1)主程序clear allclc[x0,Fs]=audioread('1234567890.wav');%sound(x0,Fs);N=length(x0); %采样点k=(0:N-1);f=(k/N-1/2)*Fs;X0=fft(x0);figuresubp...原创 2019-12-26 08:40:39 · 12229 阅读 · 38 评论 -
低通滤波器的设计
(1)录制一段语音信号;(2)给语音信号加高频噪声(此处的高频噪声频率);(3)设计低通滤波器;(4)用设计的低通滤波器除去高频噪声。代码如下:clear allclc[x,Fs]=audioread('天.wav');%sound(x,Fs)X=fft(x);T=1/Fs; %采样间隔n=length(x...原创 2019-12-26 08:41:52 · 5045 阅读 · 3 评论 -
时域抽取法FFT(DIT-FFT)算法的MATLAB实现
(1)序列的倒序function [X] = invertedorder(A)%invertedorder 序列时域抽取(倒序)% A-时域序列,X-时域抽取后的序列N=length(A);LH=N/2;j=LH;N1=N-2;X=A;for i=1:N1 if i>=j T=X(i+1); X(i+1)=X(j+1); ...原创 2019-11-17 21:22:23 · 5739 阅读 · 4 评论 -
验证离散傅里叶变换(DFT)的频域循环移位定理
离散傅里叶变换(DFT)的频域循环移位定理如下:若: 则: 接下来通过MATLAB编程进行验证,为了便于给出任意移位点数与任意序列的验证,此处将验证代码封装为一个DFT_frequency_circshift函数,代码如下:function [yn,yn1] = DFT_frequency_circshift( xn,l )%D...原创 2019-10-18 21:00:49 · 5987 阅读 · 0 评论 -
验证离散傅里叶变换(DFT)的时域循环移位定理
离散傅里叶变换时域循环移位定理如下:接下来通过MATLAB编程进行验证,为了便于给出任意移位点数与任意序列的验证,此处将验证代码封装为一个DFT_time_circshift函数,代码如下:function [Xk,Yk,Yk1] = DFT_time_circshift( xn,m )%DFT_time_circshift 验证DFT的时域循环移位定理% xn0-信号,m-...原创 2019-10-16 23:09:20 · 5624 阅读 · 1 评论 -
编程计算循环卷积
function [ y ] = cyclic_conv( xn0,hn0,N )%cyclic_conv 循环卷积运算%计算xn与yn的N点循环卷积%xn0-序列,hn0-序列,N-循环卷积点数xn1=[xn0,zeros(1,N-length(xn0))]; %补零hn=[hn0,zeros(1,N-length(hn0))]';xn2=fliplr(xn1); ...原创 2019-10-10 12:44:43 · 1940 阅读 · 0 评论 -
绘制两个正弦信号叠加后的频谱
%绘制两个正弦信号相加的得到的信号的频谱f1=200; %信号频率(Hz)f2=300;fs=2000; %采样频率,奈奎斯特采样定理fs>=2(f1+f2)T=1/fs; %采样周期w1=2*pi*f1; %角频率(rad)w2=2*pi*f2; t...原创 2019-09-24 21:48:55 · 15289 阅读 · 4 评论 -
MATLAB信号处理——分解信号,双谱重构
编程分析幅度谱和相位谱在图像信号、语音信号中的作用。一、图像信号(1)原图像信号如下:代码如下:PA0=imread('大头儿子.jpg');PB0=imread('狗.jpg');PC0=imread('苹果.jpg');%灰度处理PA=rgb2gray(PA0);PB=rgb2gray(PB0);PC=rgb2gray(PC0);%调整...原创 2019-06-15 16:39:54 · 7401 阅读 · 0 评论