首页
📁归档
⏳时光机
🚩友链
📫留言
📧订阅本站
推荐
📕考研课程
🏜️ 免费壁纸
❤ 捐助本站
💰资助名单
🎵音乐实验
Search
1
【NPN/PNP三极管】放大电路饱和失真和截止失真的区别
20,043 阅读
2
论文写作中如何把word里面所有数字和字母替换为新罗马字体
10,606 阅读
3
【高数】形心计算公式讲解大全
9,037 阅读
4
Vivado-FPGA Verilog烧写固化教程
7,869 阅读
5
【概论】一阶矩、二阶矩原点矩,中心矩区别与概念
7,805 阅读
🪶微语&随笔
励志美文
我的随笔
写作办公
📡电子&通信
嵌入式&系统
通信&信息处理
编程&脚本笔记
⌨️IC&系统
FPGA&ASIC
VLSI&IC验证
EDA&虚拟机
💻电子&计算机
IP&SOC设计
机器学习
软硬件算法
登录
/
注册
📡电子&通信(共117篇)
找到
117
篇与
📡电子&通信
相关的结果
- 第 9 页
2021-03-21
通信滤除$字符分段保留重要信息代码
通信中滤除$字符分段保留重要信息代码 实现效果 图片 初级代码main实现 #include "stdio.h" int main() { int i, j; char temp[16][32] = { 0 }; char str[128] = { 0 }; printf("please input a string\n"); scanf("%s", str); printf("%s\n", str); char* p = &str[0]; i = 0; j = 0; while (1) { if (*p == 0) { break; } if (*p != '$') { temp[i][j] = *p; j++; } else { i++; j = 0; } p++; } for (j = 0; j <= i; j++) { printf("%s\t", temp[j]); } return 0; } 进阶调用函数 #include "stdio.h" void fun(char *p){ int i,j; char temp[16][32]={0}; i=0; j=0; while(1) { if(*p==0) {break;} if(*p!='$') { temp[i][j]=*p; j++; } else {i++; j=0; } p++; } for(j=0;j<=i;j++) { printf("%s\t",temp[j]); } return; } int main(){ char str[128]={0}; printf("please input string\n"); scanf("%s",str); fun(str); printf("\n"); return 0; }再次进阶 #include "stdio.h" int len; char **fun(char *p){ int i,j; static char *m[16]; static char temp[16][32]={0}; i=0; j=0; while(1) { if(*p==0) {break;} if(*p!='$') { temp[i][j]=*p; j++; } else {i++; j=0; } p++; } for(j=0;j<=i;j++) { printf("%s\t",temp[j]); } len=i+1; for(i=0;i<16;i++) { m[i]=&temp[i][0]; } return m; //&m[0] } int main(){ char **k; int i; char str[128]={0}; printf("please input string\n"); scanf("%s",str); k=fun(str); for(i=0;i<len;i++){ printf("%s\t",*k); } return 0; }
嵌入式&系统
编程&脚本笔记
刘航宇
5年前
1
389
3
2021-03-19
数字图像处理绪论、基础、图像增强简答
绪论 什么是图像? 模拟图像处理与数字图像处理主要区别表现在哪些方面? 图像处理学包括哪几个层次?各层次间有何区别和联系? 图像处理学主要与哪些学科有关? 数字图像处理主要应用有哪些? 答: 1.图像:是对客观对象的一种相似性的、生动性的描述或写真。数字图像:一种空间坐标和灰度均不连续的、用离散数字(一般用整数)表示的图像。灰度图像:在计算机领域中,灰度数字图像是每个像素只有一个采样颜色的图像。在数字图像领域之外,“黑白图像”也表示“灰度图像”,例如灰度的照片通常叫做“黑白照片”。 2.主要区别:模拟图像处理是利用光学、照相方法对模拟图像的处理。优点: 速度快,一般为实时处理,理论上讲可达到光的速度,并可同时并行处理。缺点:精度较差,灵活性差,很难有判断能力和非线性处理能力 数字图像处理,简称计算机图像处理,指将图像信号转换成数字格式并利用计算机对数据进行处理的过程)是利用计算机对数字图像进行系列操作,从而达到某种预期目的的技术.优点: 精度高,内容丰富,可进行复杂的非线性处理,灵活的变通能力,一只要改变软件就可以改变处理内容 3.数字图像处理可分为三个层次:狭义图像处理、图像分析和图像理解。 狭义图像处理是对输入图像进行某种变换得到输出图像,是一种图像到图像的过程。 图像分析主要是对图像中感兴趣的目标进行检测和测量,从而建立对图像目标的描述,图像分析是一个从图像到数值或符号的过程。 图像理解则是在图像分析的基础上,基于人工智能和认知理论研究图像中各目标的性质和它们之间的相互联系,对图像内容的含义加以理解以及对原来客观场景加以解译,从而指导和规划行动。 区别和联系:狭义图像处理是低层操作,它主要在图像像素级上进行处理,处理的数据量非常大;图像分析则进入了中层,经分割和特征提取,把原来以像素构成的图像转变成比较简洁的、非图像形式的描述;图像理解是高层操作,它是对描述中抽象出来的符号进行推理,其处理过程和方法与人类的思维推理有许多类似之处。 4.高数、信号处理、计算机开发语言(vc、matlab)、线性代数 5.1)、文化艺术方面 电视画面的数字编辑;动画的制作,电子图像游戏;纺织工艺品设计,服装设计与制作,发型设计;文物资料照片的复制和修复;运动员动作分析和评分 2)、机器人视觉 机器人三维景物理解和识别;自主机器人军事侦察、危险环境;邮政、医院和家庭服务的智能机器人;装配线工件识别、定位智能机器人;太空机器人 3)、视频和多媒体系统 电视制作系统广泛使用的图像处理、变换、合成;多媒体系统中静止图像和动态图像的采集、压缩、处理、存贮和传输 4)、科学可视化 图像处理和图形学紧密结合,形成了科学研究各个领域新型的研究工具 5)、电子商务 身份认证;产品防伪;水印技术 基础 图像数字化包括哪两个过程?每个过程对数字化图像质量有何影响? 数字化图像的数据量与哪些因素有关? 数字化设备由哪几部分组成?数字化设备包括哪些主要特征? 答: 1.图像数字化主要包括取样和量化这两个过程,其中取样过程是使图像空间坐标数字化,而量化过程是使图像函数值(灰度值)数字化。 取样(数字化空间坐标)过程影响着数字化图像的空间分辨率(图像中可辨别的最小细节);而量化(数字化灰度值)过程影响着数字化图像的灰度级分辨率(灰度级别中可辨别的最小变化) 采样间隔越大,所得图像像素数越少,空间分辨率低,质量差,严重时出现像素呈块状的国际棋盘效应;采样间隔越小,所得图像像素越多,空间分辨率高,质量好,但数据量大。 量化等级越多,所得图像层次越丰富,灰度分辨率越高,质量越好,但数据量大;量化等级越少,图像层次欠丰富,灰度分辨率低,质量变差,会出现假轮廓现象,但数据量小。 2.1)图像的大小有关,图像大数据量也就大。2)采样间隔越大,量化等级越小,数据量越小;采样间隔越小,量化等级越多,数据量越大。3)与一个像素在计算机中表示的方式有关,一个像素占用的字节数多,数据量大。 3.1)采样孔:是数字化设备能够单独地观测特定的图像元素二不受图像其他部分的影响。(2)图像扫描机构:使采样孔按照预先确定的方式在图像上移动,从而按顺序观测没一个像素。(3)光传感器:通过采样检测图像的每一个像素,通常采用CCD阵列。(4)量化器:将传感器输出的连续量转化整数值,如A/D转换电路。(5)输出存储装置:将量化器产生的灰度值按适当的格式存储起来。 图像增强 1.什么是灰度直方图?有哪些应用? 2.从灰度直方图你能获得图像的哪些信息? 3.图像增强的目的是什么? 它包含哪些内容? 4.在直方图修改技术中采用的变换函数的基本要求是什么? 5.直方图均衡化处理采用何种变换函数? 答: 1.灰度直方图是灰度级的函数,它反映了一副图像中具有某种灰度级的像素的个数、各灰度级像素出现的频率。应用:用于判断图像量化是否恰当;用于确定图像二值化的阈值;当物体部分的灰度值比其它部分灰度值大时,可利用直方图统计图像中物体的面积;计算图像信息量H(熵);通过变换图像的灰度直方图,可使图像更清晰,达道图像增强的目的。 2.灰度范围,灰度级分布,整幅图像的平均亮度等 3.采用一系列技术去改善图像的视觉效果,或将图像转换成一种更适合于人或机器进行分析和处理的形式。有选择地突出某些感兴趣的信息,同时抑制一些不需要的信息,提高图像的使用价值。 图片 4.T(r)为变换函数,应满足 ①在0 ≤ r ≤ 1内为单调递增函数,保证灰度级从黑到白的次序不变; ②在0 ≤ r ≤ 1内,有0 ≤ T(r) ≤ 1,确保映射后的像素灰度在允许的范围内。 累积分布函数图片 在原始图像灰度分布在较窄区间,引起图像细节不够清晰。直方图均衡化减少图像灰度级,对比度扩大 图片 答:统计0(5/64),1(12/64),2(16/64),3(8/64),4(1/64),5(7/64),6(10/64),7(5/64)出现频率用matlb做图 定义数组 v=[5/64 12/64 16/64 8/64 1/64 7/64 10/64 5/64] 绘图如图所示: 图片 图片 2.原始图像概率分布及新灰度计算结果为: 图片 图片
通信&信息处理
刘航宇
5年前
0
674
4
2021-03-18
马尔科夫链讲解(Markov)
说到马尔可夫链,在机器学习界真是无人不知,无人不晓。谷歌用于确定搜索结果顺序的算法,称为PageRank,就是一种马尔可夫链。在卷积网络出现之前,HMM马尔可夫模型也是语音处理的常用方法。到底什么才是马尔可夫链,之前看了几个介绍特别生动,这里总结一下: 马尔可夫链 马尔科夫链是指数学中具有马尔科夫性质的离散事件随机过程。在其每一步中,系统根据概率分布可以从一个状态变到另一个状态,也可以保持当前状态。状态的改变叫做转移,与不同的状态改变相关的概率叫做转移概率。 下图中有两种状态:A和B。如果我们在A,接下来可以过渡到B或留在A。如果我们在B,可以过渡到A或者留在B。在这张图中,从任意状态到任意状态的转移概率是0.5。 默认图片 真正的建模工作者不会总是就画一张马尔科夫链图。 相反,他们会使用“转移矩阵”来计算转移概率。状态空间中的每个状态都会出现在表格中的一列或者一行中。矩阵中的每个单元格都告诉你从行状态转换到列状态的概率。因此,在矩阵中,单元格做的工作和图中的箭头所示是一样。在状态转移矩阵中,行和列都是可能的所有状态,对应位置就是已知行状态,转移到列状态的概率。 默认图片 如果状态空间添加了一个状态,我们将添加一行和一列,向每个现有的列和行添加一个单元格。 这意味着当我们向马尔可夫链添加状态时,单元格的数量会呈二次方增长。因此,转换矩阵就起到了很大的作用(除非你想把法尔科夫链图画的跟丛林一样)。 状态转移矩阵 从上面可以看出,整个马尔可夫链中的核心就是状态转移矩阵。以股市模型为例,假设初始状态为,然后算之后的状态。 def markov(): init_array = np.array([0.1, 0.2, 0.7]) transfer_matrix = np.array([[0.9, 0.075, 0.025], [0.15, 0.8, 0.05], [0.25, 0.25, 0.5]]) restmp = init_array for i in range(25): res = np.dot(restmp, transfer_matrix) print i, "\t", res restmp = res markov() 输出结果: 0 [ 0.295 0.3425 0.3625] 1 [ 0.4075 0.38675 0.20575] 2 [ 0.4762 0.3914 0.1324] 3 [ 0.52039 0.381935 0.097675] 4 [ 0.55006 0.368996 0.080944] 5 [ 0.5706394 0.3566873 0.0726733] 6 [ 0.58524688 0.34631612 0.068437 ] 7 [ 0.59577886 0.33805566 0.06616548] 8 [ 0.60345069 0.33166931 0.06487999] 9 [ 0.60907602 0.32681425 0.06410973] 10 [ 0.61321799 0.32315953 0.06362248] 11 [ 0.61627574 0.3204246 0.06329967] 12 [ 0.61853677 0.31838527 0.06307796] 13 [ 0.62021037 0.31686797 0.06292166] 14 [ 0.62144995 0.31574057 0.06280949] 15 [ 0.62236841 0.31490357 0.06272802] 16 [ 0.62304911 0.31428249 0.0626684 ] 17 [ 0.62355367 0.31382178 0.06262455] 18 [ 0.62392771 0.31348008 0.06259221] 19 [ 0.624205 0.3132267 0.0625683] 20 [ 0.62441058 0.31303881 0.06255061] 21 [ 0.624563 0.31289949 0.06253751] 22 [ 0.624676 0.3127962 0.0625278] 23 [ 0.62475978 0.31271961 0.06252061] 24 [ 0.6248219 0.31266282 0.06251528]从第18次开始,状态就开始收敛至。 如果我们换一个初始状态,比如,继续运行上面的代码,只是将init_array变一下,最后结果为: 0 [ 0.35 0.38 0.27] 1 [ 0.4395 0.39775 0.16275] 2 [ 0.4959 0.39185 0.11225] 3 [ 0.53315 0.378735 0.088115] 4 [ 0.558674 0.365003 0.076323] 5 [ 0.5766378 0.3529837 0.0703785] 6 [ 0.5895162 0.34322942 0.06725438] 7 [ 0.59886259 0.33561085 0.06552657] 8 [ 0.6056996 0.32978501 0.06451539] 9 [ 0.61072624 0.32538433 0.06388944] 10 [ 0.61443362 0.32208429 0.06348209] 11 [ 0.61717343 0.31962047 0.0632061 ] 12 [ 0.61920068 0.31778591 0.06301341] 13 [ 0.62070185 0.31642213 0.06287602] 14 [ 0.62181399 0.31540935 0.06277666] 15 [ 0.62263816 0.31465769 0.06270415] 16 [ 0.62324903 0.31410005 0.06265091] 17 [ 0.62370187 0.31368645 0.06261168] 18 [ 0.62403757 0.31337972 0.06258271] 19 [ 0.62428645 0.31315227 0.06256128] 20 [ 0.62447096 0.31298362 0.06254542] 21 [ 0.62460776 0.31285857 0.06253366] 22 [ 0.62470919 0.31276586 0.06252495] 23 [ 0.62478439 0.31269711 0.0625185 ] 24 [ 0.62484014 0.31264614 0.06251372]到第18次的时候,又收敛到了!这个转移矩阵就厉害了。不管我们的初始状态是什么样子的,只要状态转移矩阵不发生变化,当时,最终状态始终会收敛到一个固定值。 马尔可夫链细致平稳条件 首先,马尔科夫链要能收敛,需要满足以下条件: 可能的状态数是有限的。 状态间的转移概率需要固定不变。 从任意状态能够转变到任意状态。 不能是简单的循环,例如全是从x到y再从y到x。 由前面的例子我们不难看出,当与的n次幂相乘以后,发现得到的向量都会收敛到一个稳定值,而且此稳定值与初始向量 无关!那么所有的转移矩阵都有这种现象嘛?或者说满足什么样的条件的转移矩阵会有这种现象? 细致平衡条件(Detailed Balance Condition):给定一个马尔科夫链,分布 和概率转移矩阵,如果下面等式成立: 默认图片 则此马尔科夫链具有一个平稳分布(Stationary Distribution)。
通信&信息处理
刘航宇
5年前
0
985
1
2021-03-17
T分布及T分布表
下表列出了自由度为1-30以及80、100、120等t-分布的单侧和双侧区间值。例如,当样本数量n=5时,则自由度v=4,我们就可以查找表中以4开头的行。该行第5列值为2.132,对应的单侧值为95%(双侧值为90%)。这也就是说,T小于2.132的概率为95%(即单侧),记为Pr(−∞ < T < 2.132) = 0.95;同时,T值介于-2.132和2.132之间的概率为90%(即双侧),记为Pr(−2.132 < T < 2.132) = 0.9。 这是根据分布的对称性计算得到的, Pr(T < −2.132) = 1 − Pr(T > −2.132) = 1 − 0.95 = 0.05, 因此, Pr(−2.132 < T < 2.132) = 1 − 2(0.05) = 0.9. 注意 关于表格的最后一行的值:自由度为无限大(n=120)的t-分布和正态分布等价。 默认图片
嵌入式&系统
我的随笔
刘航宇
5年前
0
2,140
2
2021-03-14
liunx系统创建并运行实战一个c程序及常用指令指导
{mtitle}liunx系统运行实战一个c程序{/mtitle} 学习liunx系统有利于嵌入式、云服务器等学习。 下面我们实战创建并运行一个三角图形c程序 首先 su rooot 进入超级管理员模式 如果你没有超级管理员账号,想搞一个可以看本站嵌入式其他帖子创建永久超级管理员账号办法,或者按课本上代码临时进入root模式 然后输入 ls 指令查看目录 然后输入 cd 你选的目录名 创建c程序 vim test.c 键盘“a”键可以直接进入编辑模式 输入代码例如: #include <stdio.h> int main() { int i,j,n; printf("input ranks n\n"); scanf("%d",&n); for(i=0;i<n;i++) { for(j=0;j<n-i-1;j++) printf(" "); for(j=0;j<=i;j++) printf("*"); printf("\n"); } return 0; }或者更换 for(i=0;i<n;i++) { for(j=0;j<n-i-1;j++) printf(" "); for(j=n-i-1;j<n;j++) printf("*"); printf("\n"); }输入完C代码后,记得“ESC”键切换,输入“:wq”保存退出 然后gcc test.c 打完gcc test.c编译完C源文件。然后就可以看见a.out的文件。一般linux系统就默认为a.out为编译完的文件。现在运行a.out文件。在a.out文件的目录下打开终端并输入 ./a.out 就是运行文件了。 示例图解: 图片 对于回文数可以参考下面代码,我们不妨先取倒序,将本数先输出,再输出倒序数则生成回文数。要让计算的结果倒序输出.现总结一下思路: 1.如果要把一个数倒序输出,即对10求模,可以得到尾数; 2.然后将这个数除以10;这样个位就被舍去;然后如此循环即可 3.直到求模结果为0;证明这个数已经求到个位; #include <stdio.h> int main() { int h; printf("Enter the number\n"); scanf("%d",&h); if(h==0) { printf("%d",h); } printf("%d",h); while(h>0) { printf("%d",h%10); h=h/10; } return 0; } 参考图例: 回文数图片 {mtitle}Linux基本命令{/mtitle} uname -a 查看内核版本 ls -al 显示所有文件的属性 pwd 显示当前路径 cd - 返回上一次目录 cd ~ 返回主目录 date s 设置时间、日期 cal 显示日历 cal 2006 bc 计算器具 man & info 帮助手册 locale 显示当前字体 locale -a 所有可用字体 /etc/sysconfig/i18n设置文件 LANG=en 使用英文字体 sync 将数据同步写入硬盘 shutdonw -h now & half & poweroff 关机 reboot 重启 startx & init 5 进入图形介面 /work & ?work 向上、下查找文档内容 chgrp 改变档案群组 chgrp testing install.log chown 改变所属人 chown root:root install.log chmod 改变属性 chmod 777 install.log read=4 write=2 execute=1 cp 复制 cp filename rm 删除文件 rm -rf filename 强制删除文件 rmdir 删除文件夹 mv 移动 mv 123.txt 222.txt 重命名 mkdir 创建文件夹 touch 创建文件 更新当前时间 cat 由第一行开始显示 cat |more 分页 nl 在内容前加行号 more & less 一面一面翻动 head -n filename 显示第N行内容 tail -n filename 显示后N行内容 od 显示非纯文档 df -h 显示分区空间 du 显示目录或文件的大小 fdisk 分区设置 fdisk -l /dev/hda 显示硬盘分区状态 mkfs 建立各种文件系统 mkfs -t ext3 /dev/ram15 fsck 检查和修复LINUX档案 ln 硬链接 ln -s 软件链接 whereis 查找命令 locate 查找 find 查找 find / -name "." which 查看工具 whoami 显示当前用户 gcc -v 查看GCC版本 chattr +i filename 禁止删除 chattr -i filename 取消禁止 lsattr 显示隐藏档属性 updatedb 更新资料库 mke2fs 格式化 mkfs -t ext3 dd if=/etc/passwd of=/tmp/passwd.bak 备份 mount 列出系统所有的分区 mount -t iso9660 /dev/cdrom /mnt/cdrom 挂载光盘 mount -t vfat /dev/fd0 /mnt/floppy 挂载软盘 mount -t vfat -o iocharset=utf8,umask=000 /dev/hda2 /mnt/hda2 挂载fat32分区 mount -t ntfs -o nls=utf8,umask=000 /dev/hda3 /mnt/hda3 挂载ntfs分区 umount /mnt/hda3 缷载 ifconfig 显示或设置网络设备 service network restart 重启网卡 ifdown eth0 关闭网卡 ifup eth0 开启网卡 clear 清屏 history 历史记录 !55 执行第55个指令 stty 设置终端 stty -a fdisk /mbr 删除GRUB at 僅進行一次的工作排程 crontab 循環執行的例行性命令 [e]编辑,[l]显示,[r]删除任务 & 后台运行程序 tar -zxvf 123.tar.gz & --------->后台运行 jobs 观看后台暂停的程序 jobs -l fg 将后台程序调到前台 fg n ------>n是数字,可以指定进行那个程序 bg 让工作在后台运行 kill 结束进程 kill -9 PID [9]强制结束,[15]正常结束,[l]列出可用的kill信号 ps aux 查看后台程序 top 查看后台程序 top -d 2 每两秒更新一次 top -d 2 -p10604 观看某个PID top -b -n 2 > /tmp/top.txt ----->將 top 的資訊進行 2 次,然後將結果輸出到 /tmp/top.txt pstree 以树状图显示程序 [A]以 ASCII 來連接, [u]列出PID, [p]列出帐号 killall 要刪除某個服務 killall -9 httpd free 显示内存状态 free -m -------->以M为单位显示 uptime 显示目前系统开机时间 netstat 显示网络状态 netstat -tulnp------>找出目前系統上已在監聽的網路連線及其 PID dmesg 显示开机信息 demsg | more nice 设置优先权 nice -n -5 vi & ----->用 root 給一個 nice 植為 -5 ,用於執行 vi renice 调整已存在优先权 runlevel 显示目前的runlevel depmod 分析可载入模块的相依性 lsmod 显示已载入系统的模块 modinfo 显示kernel模块的信息 insmod 载入模块 modprobe 自动处理可载入模块 rmmod 删除模块 chkconfig 检查,设置系统的各种服务 chkconfig --list ----->列出各项服务状态 ntsysv 设置系统的各种服务 cpio 备份文件 压缩命令: *.Z compress 程式壓縮的檔案; *.bz2 bzip2 程式壓縮的檔案; *.gz gzip 程式壓縮的檔案; *.tar tar 程式打包的資料,並沒有壓縮過; *.tar.gz tar 程式打包的檔案,其中並且經過 gzip 的壓縮 compress filename 压缩文件 加[-d]解压 uncompress gzip filename 压缩 加[-d]解压 zcat 123.gz 查看压缩文件内容 bzip2 -z filename 压缩 加[-d]解压 bzcat filename.bz2 查看压缩文件内容 tar -cvf /home/123.tar /etc 打包,不压缩 tar -xvf 123.tar 解开包 tar -zxvf /home/123.tar.gz 以gzip解压 tar -jxvf /home/123.tar.bz2 以bzip2解压 tar -ztvf /tmp/etc.tar.gz 查看tar内容 cpio -covB > [file|device] 份份 cpio -icduv < [file|device] 还原 深圳-广州-郑州-长沙嵌入式系统实训,凡通过本帖添加咨询报名学习可免费赠送学习现金卷及学习资料一份。详情联系郭老师QQ754634522 vi一般用法 一般模式 编辑模式 指令模式 h 左 a,i,r,o,A,I,R,O :w 保存 j 下 进入编辑模式 :w! 强制保存 k 上 dd 删除光标当前行 :q! 不保存离开 l 右 ndd 删除n行 :wq! 保存后离开 0 移动到行首 yy 复制当前行 :e! 还原原始档 $ 移动到行尾 nyy 复制n行 :w filename 另存为 H 屏幕最上 p,P 粘贴 :set nu 设置行号 M 屏幕中央 u 撤消 :set nonu 取消行号 L 屏幕最下 [Ctrl]+r 重做上一个动作 ZZ 保存离开 G 档案最后一行 [ctrl]+z 暂停退出 :set nohlsearch 永久地关闭高亮显示 /work 向下搜索 :sp 同时打开两个文档 ?work 向上搜索 [Ctrl]+w 两个文档设换 gg 移动到档案第一行 :nohlsearch 暂时关闭高亮显示 认识SHELL alias 显示当前所有的命令别名 alias lm="ls -al" 命令别名 unalias lm 取消命令别名 type 类似which exprot 设置或显示环境变量 exprot PATH="$PATH":/sbin 添加/sbin入PATH路径 echo $PATH 显示PATH路径 bash 进入子程序 name=yang 设定变量 unset name 取消变量 echo $name 显示变量的内容 myname="$name its me" & myname='$name its me' 单引号时$name失去变量内容
嵌入式&系统
# 嵌入式
刘航宇
5年前
2
524
2
2021-03-14
VM虚拟机开机蓝屏,无限重启等,解决方案
由于电脑硬件兼容性问题,在虚拟机的设置中将不需要的设备移除,尤其是打印机 全部移除,关机重启,再开就没问题了 图片 设置下方有,移除选项,点击对应栏目移除即可
嵌入式&系统
刘航宇
5年前
1
593
2
2021-03-14
三角函数公式大全适用于数学、信号等领域
secx,cscx与sinx,cosx的关系是: 1/cosx=secx,1/sinx=cscx 即secx×cosx=1,cscx×sinx=1。 1、倒数关系: sinx.cscx=1 cosx.secx=1 tanx.cotx=1 2、商的关系: sinx/cosx=tanx tanx/secx=sinx cotx/cscx=cosx 3、平方关系: (sinx)^2+(cosx)^2=1 1+(tanx)^2=(secx)^2 1+(cotx)^2=(cscx)^2 导数关系 图片 两角和公式 sin(A+B) = sinAcosB+cosAsinB sin(A-B) = sinAcosB-cosAsinB cos(A+B) = cosAcosB-sinAsinB cos(A-B) = cosAcosB+sinAsinB 图片 倍角公式 图片 三倍角公式 图片 半角公式 图片 和差化积 图片 积化和差 图片 图片 图片 设α为任意角, +α的三角函数值与α的三角函数值之间的关系:假设α为锐角时,先计算 +α的值,再确定符号,如果n为偶数,则三角函数不变,否则转换函数,同时去掉 ,例如 图片
通信&信息处理
我的随笔
刘航宇
5年前
0
1,801
2
2021-03-13
C语言用“*”输出三角形
例如: 图片 #include <stdio.h> int main() { int i,j,n; printf("input ranks n\n"); scanf("%d",&n); for(i=0;i<n;i++) { for(j=0;j<n-i-1;j++) printf(" "); for(j=0;j<=i;j++) printf("*"); printf("\n"); } return 0; } 图片 for(i=0;i<n;i++) { for(j=0;j<=i;j++) printf("*"); printf("\n"); } printf("\n");图片 for(i=0;i<n;i++) { for(j=0;j<n-i-1;j++) printf(" "); for(j=0;j<=i;j++) printf("*"); printf("\n"); } 或 for(i=0;i<n;i++) { for(j=0;j<n-i-1;j++) printf(" "); for(j=n-i-1;j<n;j++) printf("*"); printf("\n"); }图片 for(i=0;i<n;i++) { for(j=0;j<n-i;j++) printf("*"); printf("\n"); } printf("\n");图片 for(i=0;i<n;i++) { for(j=0;j<i;j++) printf(" "); for(j=0;j<n-i;j++) printf("*"); printf("\n"); } 或 for(i=0;i<n;i++) { for(j=0;j<i;j++) printf(" "); for(j=i;j<n;j++) printf("*"); printf("\n"); }图片 for(i=0;i<n;i++) { for(j=0;j<n-i-1;j++) printf(" "); for(j=n-i-1;j<n+i;j++) printf("*"); printf("\n"); } 或 for(i=0;i<n;i++) { for(j=0;j<n-i-1;j++) printf(" "); for(j=0;j<=2*i;j++) //如果是2*i-1,则 j 是从1开始 printf("*"); printf("\n"); }图片 for(i=0;i<n;i++) { for(j=0;j<i;j++) printf(" "); for(j=0;j<2*n-2*i-1;j++) printf("*"); printf("\n"); } 或 for(i=0;i<n;i++) { for(j=0;j<i;j++) printf(" "); for(j=i;j<2*n-i-1;j++) printf("*"); printf("\n"); }
编程&脚本笔记
刘航宇
5年前
0
990
1
2021-03-11
使用虚拟机提示“此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态”
如果虚拟机的时候遇到过“此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态”的问题,其实出现这种情况是bios中虚拟化VT-x没有关闭,具体怎么解决问题的呢?下面看操作 图片 弹窗的提示信息如下: 已将该虚拟机配置为使用 64 位客户机操作系统。但是,无法执行 64 位操作。 此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态。 如果已在 BIOS/固件设置中禁用 Intel VT-x,或主机自更改此设置后从未重新启动,则 Intel VT-x 可能被禁用。 (1) 确认 BIOS/固件设置中启用了 Intel VT-x 并禁用了“可信执行”。 (2) 如果这两项 BIOS/固件设置有一项已更改,请重新启动主机。 (3) 如果您在安装 VMware Workstation 之后从未重新启动主机,请重新启动。 (4) 将主机的 BIOS/固件更新至最新版本。 解决方法 看上面的提示 也就很好解决了:直接修改BIOS设置即可。 以下以个人映泰H61主板为例: 1、关机,开机,在启动时,按Delete进入 BIOS 设置页面(不同主板进入BIOS快捷键不同,可以通过网络查询); 2、选择Advanced,再选择CPU Configuration并点击enter建进入该功能,在新功能中选择Intel (R) Virtualization Technology ,此时该选项应该是disabled(关闭)的; 图片 3、将disabled(关闭)改为 enabled(开启); 图片 4、保存设置,点击F10,保存后退出,重启即可。 图片 以上就是使用虚拟机提示“此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态”的解决方法,大家可以试下。
嵌入式&系统
刘航宇
5年前
0
990
1
2021-03-10
linux无法进入超管模式root用户密码错误解决方法
一、问题的原因 问题:输入命令 su root ,输入密码怎么输入都不正确 原因:因为刚安装好的Linux系统是没有给root设置密码的 图片 二、解决方法 输入以下命令 sudo passwd root [sudo] password for sam(用户名): 输入当前登陆liunx用户名的密码 Enter new UNIX password: 输入新的密码并确认,此时的密码就是root新密码 Retype new UNIX password: 再次确认root新密码 弹出:passwd: password updated successfully(已成功更新密码) 图片 进入root权限 su root 切换到普通用户,如自己配置的用户名为sam su sam
嵌入式&系统
刘航宇
5年前
0
524
5
2021-03-10
超详细win系统虚拟机安装liunx系统方法
前言: Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。 如果初学,建议用VMWARE方式,或者CYGWIN,等熟练后再装双系统。 双系统的方式速度快,适合做研发。 同时虚拟机支持win下用linux系统,不必开关机等麻烦事项,缺点就是慢。 一、软件准备。 由于课本资源老旧,兼容性不佳,可能有的win10安装后无法打开,建议用我下面提供连接安装,或者联系我要u盘安装,免下载 安装有问题话可以联系我! 1、 VMware软件 下载地址1(迅雷)http://forspeed.onlinedown.net/down/vmware15.zip 百度云链接(提取码liu6)https://pan.baidu.com/s/1eJGST7AixIng4v7SoSN2aw 2、Linux系统 Ubuntu16.04版本下载链接(提取码:liu6): https://pan.baidu.com/s/1ZN5fDI7eWSIlRPqkyM38zQ Ubuntu18.04版本下载链接(提取码:liu6): https://pan.baidu.com/s/1-n5WIjuKbDD3NF9YX8-qKQ 二、VMware软件安装 !!!下面安装路径命名最好不要出现中文! 1、解压VMware压缩包得到下图所示文件: 图片 2、打开安装包 图片 3、建议更改安装位置到d盘,C盘大可以忽略 图片 更改后安装位置如下 图片 4、按照安装指示完成安装,安装过程中会重置网络,出现网络断开的现象,属于正常现象。 5、打开VMware,点击许可证!出现输入密钥界面,这时候就要用到密钥生成器了 图片 点击Generate键生成密匙,复制左侧密匙粘贴在VMware密匙界面里,回车确认即可破解软件 图片 秘钥复制后输入 图片 6、如果提示更新不要更新! 三、在VMware上安装linux系统 退出右键点击图标,以管理员权限运行。 1、打开VMware界面如下所示 图片 2、点击创建新的虚拟机 图片 选择自定义安装,点击下一步 3、继续选择下一步 图片 4、选择光盘映像文件,导入的文件为下载的Ubuntu18.04(或者Ubuntu16.04)Linux系统,然后点击下一步: 图片 5、输入你的信息,然后点击下一步,建议不要出现中文 图片 图片 6、输入你的虚拟机名称,按照惯例名称一般不要出现中文,并选择虚拟机部署的位置,然后点击下一部 图片 7、依据你电脑的情况选择分配给这台虚拟机的CPU,如果不清楚自己的电脑情况,建议选少一点,不然运行起来对主系统速度影响会很大。然后点击下一步 图片 8、调整你想要分配给虚拟机的内存,分配原则和上面一样,一般电脑总运行内存4G,调整完成后点击下一步。 图片 9、如无特殊情况,使用网络地址转换,然后点击下一步 图片 10、I/O控制器类型默认类型不用管,然后点击下一步 11、磁盘类型默认类型不用管,然后点击下一步 12、如无特殊情况,选择创建新的虚拟磁盘,然后点击下一步 图片 13、选择分配给磁盘的大小,分配原则与CPU、内存一样。选择将虚拟磁盘存储为一个文件,方便管理,然后点击下一步 图片 14、给磁盘文件命名,一般不要出现中文,然后点击下一步 图片 15、核对虚拟机的各种参数,然后点击完成,虚拟机即会自动安装完成 图片 16、第一次安装很慢,请耐心等待,安装完成后打开虚拟机如图所示,一般点击全屏以自适应屏幕大小 图片 开机无限重启蓝屏等问题 请点击跳转
嵌入式&系统
刘航宇
5年前
17
946
18
2021-02-26
基于虚拟现实技术远程教育系统
摘要: 由于传统的教学与网络课程均不能完美的实现与学生大量的教学互动环节,在日益增长的教学需求下,如听觉、视觉、触觉等身临其境的教学需求,虚拟现实技术备受瞩目。虚拟现实技术是一种良好的人机交互技术,利用计算机可以生成二维、三维、四维等虚拟空间,通常广泛应用的是三维空间,而虚拟物体可以按一定的规则去自主运动,使用者通过一定的输入方式可以虚拟互动,促使该物体做出相应的回应。本文提出一种学生在异地可以远程和教师进行身临其境交互的一种系统。 关键字: 虚拟现实技术; 云服务器; 远程教育; 人机交互;6人工智能; 第一章 引言 1.1. 系统开发背景 虚拟现实技术最早可以追溯到美国VPL公司,虚拟现实技术包括虚拟现实(VR)、增强现实(AR)和混合现实(MR)[1],该技术融入了AI、传感、网络、图形技术,使用者利用专用头盔、专用手套和人体接触传感设备,在网络环境控制下,可以让用户感知模拟的三维环境,并进行交互,使其在听觉、视觉、触觉均能有所反应。其特点包括:多感官感知性、信息交互性、体验沉浸性、虚拟想象性[2],在传统的教学不能完美的实现与学生大量的教学互动环节,日益增长的教学需求下,如听觉、视觉、触觉等身临其境的教学需求,因此虚拟现实技术用于远程教育系统的开发前景是十分光明的。 1.2. 国内外研究现状 在20世纪60年代虚拟现实技术开始兴起,美国是VR技术的发源地,有美国宇航局(NASA)、麻省理工学院(MIT)媒体实验室、华盛顿大学人机界面技术实验室(HIT Lab)等许多知名的研究机构。美国在虚拟现实领域的基础研究主要集中在感知、用户界面、后台软件和硬件四个方面。英国主要有四个从事VR技术研究的中心,包括Windustries公司、British Aerospace公司、Dimension International公司、Divison LTD公司等。日本主要致力于建立大规模VR知识库和人机接口方面的研究项目上,在VR游戏方面的研究也处于领先地位。我国从20世纪80年代起开始研究VR技术。虽然起步较晚,但近年来政府有关部门非常重视,制定了开展VR技术的研究计划,并将其列入国家重点研究项目。国内的一些科学家和重点院校也已积极投入了对这一领域的研究。是国内最早进行VR技术研究、最有权威的单位之一。它于2000年8月成立了虚拟现实新技术教育部重点实验室。西安交通大学信息工程研究所对虚拟现实中的关键技术——立体显示技术进行了研究,提出一种基于JPEG标准压缩编码新方案,获得了较高的压缩比、信噪比以及解压缩速度。 直到80年代虚拟现实才开始运用于教育领域,在20世纪90年代,美国最早把虚拟现实技术引入到高等与基础教育建设中。现在中国教育部教育管理信息中心、数字学习与教育公共服务部工程研究中心、百度教育共同编著的《2018中国互联网学习白皮书》指出“互联网+”教育持续发展,VR+教育、AR+教育等获得深入推进。虚拟现实在教育领域中的运用具备巨大的潜力和良好的发展前景,国家政府与各行各业对虚拟现实教育的发展现状与未来发展状况密切关注,已经开展了各项研究,因此设计一种基于虚拟现实技术远程教育系统是十分有必要的[3]。 第二章 系统开发的相关介绍和分析 2.1. 系统设计框图 本文提出一种基于虚拟现实技术远程教育系统设计方法,其中包括教师终端与学生终端,两个终端通过5G或4G网络可靠的TCP协议连接到一个云端中央处理器,通过计算和相应算法对数据进行处理。教师终端包括VR采集模块、数据反馈模块、教师识别模块;学生终端包括数据标注模块、VR显示模块、交互采集模块、学生识别模块如图1所示为系统整体设计框图[4]。 图片 2.2. 具体开发实施方式 云端服务器可以通过阿里云、腾讯云等购买,中央服务器系统要求基于Red Hat Linu系统CentOS 7.3以上。利用远程连接如Xshell登入最高权限ROOT用户,用于架设中央服务器。进一步,通过FTP将写好的C/C++程序通过FTP上传到中央服务器根目录,通过前面所述将云主机安装gcc和g++用于编译程序生成和执行文件,在root权限下,输入命令CD进入根目录,输入g++ suanfa.cpp编译成功后生成可执行文件,直接调用该文件,同时键入后台运行命令,使得该程序稳定运行,中央服务器就配置成功了,该服务器实现教师终端与学生终端之间数据TCP协议通信连接。教师终端用于接受教师终端内各个模块数据信息并处理;VR采集模块用于对教师教学内容进行全景拍摄,并形成交互反馈信息发送给学生终端。教师识别模块用于对教师身份识别并将所识别的结果发送给中央服务器,该模块依托于指纹识别方式进行识别。学生终端的载体则是VR头盔,用于接受学生终端内各个模块数据信息并处理,载体通过局域网wifi方式和学生终端服务器通信。其中学生识别模块也采用指纹识别方式,将识别结果反馈给中央服务器。VR显示模块用于对VR教学视频进行接受并显示;数据标注模块用于学生在VR教学视频观看。此外教师端需要利用移动式摄像头来捕捉画面,为了得到一个便于建模的全景图像,我们采用多个摄像头来采样图像,图像一系列处理后采用LOD模型生成算法建模。如图2。 图片
嵌入式&系统
刘航宇
5年前
0
472
1
上一页
1
...
8
9
10
下一页