自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

霖郎

霖郎(Harry_Zhang) ,毕业于上海电力大学,现就读于俄亥俄州立大学, 植根于CS与EE

  • 博客(26)
  • 资源 (3)
  • 收藏
  • 关注

原创 C/C++数据结构与算法笔记7(队列应用题)

习题和部分笔记来自数据结构与算法 (王桂林)习题1:舞伴问题假设在周末舞会上,男士们和女士们进入舞厅时,各自排成一队。跳舞开始时,依次从男队和女队的队头上各出一人配成舞伴。规定每个舞曲能有一对跳舞者。若两队初始人数不相同,则较长的那一队中未配对者等待下一轮舞曲。现要求写一个程序,模拟上述舞伴配对问题。问题分析:先入队的男士或女士也应该先出队成为舞伴(根据队列的思想),将男和女的记录存放在一个数组中作为输入,依次扫描各元素,根据性别决定进入男队列还是女队列,当两个队列构造完成后,依次将两队当.

2020-12-28 05:15:22 702

原创 C/C++数据结构与算法笔记6(队列)

笔记来自数据结构与算法 (王桂林)如何判断循环队列的满和空,通过牺牲一个空间,来判断待压入指针与起始点是否重合。#include <stdio.h>//循环思想int main(){ int arr[10]={1,3,5,7,9,2,4,6,8,10}; for(int i=0;i<100;i++) { printf("%d ",arr[i%10]); if((i+1)%10 == 0) .

2020-12-27 19:05:46 151

原创 C/C++数据结构与算法笔记5(基于栈的深度优先搜索)

基本函数笔记来自CSDN课程 C/C++ 数据结构与算法 (王桂林)先定义一个栈(定义栈见笔记4,注意:本应用中在栈里存储的数据类型是 _Point (如下)而非笔记4中的char,注意修改!)typedef struct _Point{ int _x; int _y;}Point;深度优先搜索算法(英语:Depth-First-Search,DFS)是一种用于遍历或搜索树或图的算法。沿着树的深度遍历树的节点,尽可能深的搜索树的分支。当节点v的所在边都己被探寻过,搜索将.

2020-12-24 10:44:51 567

原创 C/C++数据结构与算法笔记4(栈的线性存储与链式存储)

C/C++数据结构与算法笔记4(栈的线性存储与链式存储)基本函数笔记来自CSDN课程 C/C++ 数据结构与算法 (王桂林)线性存储实现:// mystack.h#ifndef __MYSTAK_H__#define __MYSTACK_H__typedef struct __MYSTACK_H__{ int _len; int _top; char * _space;}Stack;void iniStack(Stack * s, int size);

2020-12-23 14:19:38 143

原创 C/C++数据结构与算法笔记3(链表习题)

C/C++数据结构与算法笔记3(链表习题)作业来自CSDN课程 C/C++ 数据结构与算法 (王桂林)作业由C++编写,仅供参考!2.5.1 逆序一个链表 (leetcode习题206链接)(注意:这道题给出的head参数不是头指针,而是第一个节点,因此与笔记1不同)/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * List

2020-12-21 11:57:32 211

原创 C/C++数据结构与算法笔记2(双向链表)

C/C++数据结构与算法笔记2(双向链表)笔记来自CSDN课程 C/C++ 数据结构与算法 (王桂林)作业部分为自己编写 (C语言)基本函数创建链表,插入元素,遍历元素#include <stdio.h>#include <time.h>#include <stdlib.h>#include "list.h"#infndef _LIST_H_#define _LIST_H_typedef struct _DNode{ int.

2020-12-21 10:36:35 132

原创 C/C++数据结构与算法笔记1(单向链表)

笔记来自CSDN课程 C/C++ 数据结构与算法 (王桂林)定义头文件 list.h#infndef _LIST_H_#define _LIST_H_typedef struct _Node{ int data; struct _Node * next; }Node;Node * createList();void insertList(Node * head, int data);void travereList(Node * head);int lenList(Nod

2020-12-21 08:44:00 181

原创 【ARM9嵌入式】推箱子与拼图触摸屏小游戏的实践

ARM推箱子的原型是基于C语言设计编写的推箱子小游戏,通过使用LCD、键盘、看门狗定时器、LED数码管、GPIO、触摸中断等ARM实验模块,移植到ARM实验箱上,实现的游戏功能有基本的图像显示、游戏难度选关、游戏地图设计、键盘控制游戏、页面跳转、自动演示、判断胜负、游戏倒计时等。设计流程+硬件架构:软件设计:主函数开启初始化和游戏的...

2019-11-23 14:27:07 1714 4

原创 【计算机视觉】基于FREAK特征描述子的分析、仿真与思考 (论文已检索)

关于FREAK算法的思考与改进,后来被写成了论文,投了38届中国控制会议,最近刚检索,有兴趣可以交流一下,虽然有点水,但毕竟也是人生第一篇检索的论文。...

2019-11-23 14:10:01 322

原创 【图像处理】DCT图像压缩算法(C++与Matlab)

以下是原创的C++代码,可在VC6.0及以上版本测试,相关头文件若缺失请在百度或谷歌下载。#include <stdio.h> #include "BmpRot.h" #include "stdlib.h" #include "math.h" #include <iostream> #include <cmath> //#...

2019-11-23 13:57:35 2857

原创 【STM32F103】中断综述

一、中断内核:  STM32的中断很强大,每个外设都可以产生中断,F103在内核水平上搭载了异常响应系统,系统异常有8个(算上RESET和HardFault也就10个),外部中断有60个,但是根据NVIC(嵌套向量中断控制器,控制整个芯片中断相关的功能),IP(中断优先级寄存器)数组中预留了240个位置(NVIC结构如上图),可见眼光之远,用于扩展,这是STM32F103用不到这么多。...

2019-01-19 21:26:21 11346 1

原创 【STM32F103】RCC-使用HSE/HSI配置时钟

   以上为STM32的时钟树,通过系统的启动文件,系统自动调用函数进行时钟初始化,所以我们在实际应用时不需要去写时钟这块,但是如果我们有特殊需求或者想要修改内部时钟的属性,则需要了解时钟树。以下以一个实验例子来测试,修改系统时钟:1、通过HSE(高速外部时钟)来配置系统时钟://HSE配置系统时钟void HSE_SetSysClk( ...

2019-01-19 17:01:06 2529 1

原创 【计算机视觉】基于FREAK特征描述子的分析、仿真与思考

这段日子研究了很多的特征点检测与匹配,基本把Harris、Fast、SIFT、SURF、ORB、Censure、Brief、Brisk等各类特征检测子与描述子的论文和原理都大致了解了一遍,并进行了仿真和测试,综合来看,目前较新的FREAK描述方式(模仿人类视觉神经)比较具有实用价值和研究空间,下面将对FREAK描述进行分析、仿真,并且对下一步的研究方向提出总结。FREAK提出的原论文的标题...

2019-01-18 23:42:22 1723

原创 【STM32F103】按键检测(GPIO输入)

 按键硬件电路:分析电路:按键K1按下,接通高电平3.3V,为了保护GPIO,加了限流电阻(R7),没按下的时候是接地的,上升沿输入。PA0具有自动唤醒的功能(必须上升沿才能唤醒),电容C6用以硬件消抖(电容不断充放电),这样软件就不用延时来消抖,K2电路同。GPIO输入:GPIO数据输入寄存器IDR,只要读取这个寄存器就可以。bsp_key.c 按键初始化:#inc...

2019-01-17 01:29:08 6130

原创 【OpenCv】三天学会C++/OPENCV2基本操作之形态学滤波检测边缘和角点

形态学滤波可以用于检测图像中的特征,如边缘和角点,Opencv中利用形态学检测角点必须使用结构元素,自己需要定义一些结构元素如菱形、方形、十字形等。实例:#include "stdafx.h"#include "ColorHistogram.h"#include "ObjectFinder.h"#include &lt;opencv2\core\core.hpp&gt;#incl...

2019-01-16 23:07:43 389

原创 【OpenCv】三天学会C++/OPENCV2基本操作之直方图应用(均值飘逸(Mean Shift)查找物体)

 ColorHistogram.cpp获取直方图后,可以对直方图均衡化,通过查找表修改图像外观,在此不再详述,有兴趣可以自己尝试,直方图是图像内容的重要特性,如果某个区域中显示独特的纹理或者独特的物体,那么这个区域的直方图可以看做一个概率函数,它给出的是某个像素属于该纹理或者物体的概率。反投影直方图的结果是一个概率映射,体现了已知的图像内容出现在图像中特定位置的概率。假设我们已经知道物体的近似...

2019-01-16 22:52:23 298

原创 【OpenCv】三天学会C++/OPENCV2基本操作之直方图

一个图像是由不同颜色值的像素组成的,像素值的分布是图像的重要特征,通过直方图可以描述图像的内容,检测特定对象和纹理,也可以修改图像的外观。直方图是一个简单的表,它给出了一幅图像或一组图像中拥有给定数值的像素数量。灰度图像的直方图有256个条目(容器)。0号容器是值为0的像素个数。直方图也可以归一化,每一项则表示所占的比例。#include "stdafx.h"#include &lt;...

2019-01-16 21:32:47 301

原创 【OpenCv】三天学会C++/OPENCV2基本操作之图像算数

图像可以通过不同的方式进行组合,因为它们是矩阵的形式,Opencv提供了各类运算符,这里做一个简单的测试。例:图像相加,叠加信息。调用的函数是cv::add(cv::addWeighted 加权和)cv::addWeighted(image1,0.7,image2,0.9,0.,result)二元算数函数的工作方式都是接受两个输入变量一个输出变量,特定情况需要一些权重作为标量因子。...

2019-01-16 20:55:18 242

原创 【OpenCv】三天学会C++/OPENCV2基本操作之邻域操作

在计算机视觉或图像处理中,经常涉及领域操作,我们下面来看看如果通过程序扫描领域。例:对图像进行锐化(基于laplace算子),将一副图像减去它经过拉普拉斯滤波后的图像,边缘将得到放大,细节更加锐利,锐化算子的计算方式如下:sharpened_pixel=5*current-left-right-up-down;图像遍历使用3个指针,一个指向当前行,一个指向上一行,一个指向下一行。每个像...

2019-01-16 20:41:31 623

原创 【OpenCv】三天学会C++/OPENCV2基本操作之指针遍历图像

在大多数图像处理中,为了计算,往往需要遍历图像的所有像素,高效地遍历方法是非常重要的第一种:指针法例子:减少图像中的颜色数目如将256x256x256的颜色数目减到32x32x32 原始图像中的每个颜色都替换为它所在格子的中心对应的颜色。只要遍历图像中每个像素的每一个通道,将其值除以N(这里是8,用整除)。#include "stdafx.h"#include "openc...

2019-01-16 19:57:16 975

原创 【OpenCv】三天学会C++/OPENCV2基本操作之存取像素值

编写计算机视觉应用,必须学习存取图像的内容,如修改或创建图像。一张图像是由数值组成的矩阵,对于灰度图来说,像素由8位无符号数组成,0代表黑,255代表白。对于彩色图像来说,需要三个8位无符号数来表示三通道(红,绿,蓝)。在OPENCV中,CV_8U表示整型,CV_32F表示浮点型。存取像素值注:向量形式:vector例:创建一个函数,随机生成噪声#include "s...

2019-01-16 19:29:25 706

原创 【考试经验】厚积薄发——托福50到97之路

申明:本帖针对目标90+的同学,因为我在备考期间也看过很多经验贴,但基本都是大神出征、斩获高分,我觉得基本功的差距还是非常影响成绩的上限的,所以我的此帖适合的人群是和我一样基础薄弱,目标中含90分阶段的人,大神建议去看那些30天上110的帖子。我发誓本人与本文中提到的培训机构或书籍无广告关系,以下内容均为真实的亲身体会,因为看到很多群里和身边的同学常因为基础薄弱而对托福望而却步,所以经历了这次英语...

2019-01-15 01:06:40 1305 1

原创 【STM32F103】使用库函数点亮LED(GPIO输出)

使用库建立好工程模板,就可以方便的使用STM32标准库来编写应用程序了,LED的控制使用到GPIO外设的基本输出功能。本部分实验使用的是野火STM32F103开发板,硬件资源如上。这是一个RGB灯,由红蓝绿三色组成,可以通过PWM控制混色。这些LED的阴极接在GPIO引脚1、0、5,只要我们控制GPIO引脚电平输出状态,就可以控制灯的亮灭。首先要写LED控制引脚及亮灭相关的...

2019-01-15 00:54:56 2864 1

原创 【考试经验】脱离GRE苦海,30天逆袭贴

GRE经验贴,托福基础97,GRE三周从315到326,语文148到158   10.21 第一次 150+168+3.5   /  11.18 第二次 148+167+3.512.22 最终 158(语文)+168(数学)+4.0(学术写作) 第一次接触GRE是在18年春节,当时正在准备托福,顺手把GRE单词背了一下,但是由于GRE单词确实很难背,我从红宝书(7000多单词)...

2018-12-22 20:33:02 632

原创 【图像处理】基于VC++的人脸美化的实现实践篇(含代码)

作者:张皓霖 上海电力学院课程老师:秦伦明上篇我将人脸美化的过程列出来了,这篇我是用VS2012(VC++)+MFC+OpenCv 将这些功能实现。实验目的利用VC++实现人脸美化软件,要求:1、具有人脸美化界面;2、具有磨皮功能,参数可调;3、具有美白功能,参数可调;实验内容基于VS2012+OpenCv+MFC制作人脸美化软件实验原理磨皮:滤波(均值滤波、...

2018-11-12 19:01:31 2629 2

原创 【图像处理】人脸美颜算法初次尝试

作者:张皓霖 上海电力学院 算法提供老师:秦伦明课程:数字图像处理使用MFC+ VC++ +部分OpenCv库实现初稿效果如下:详细代码、过程和最后修改后的最终效果将在下篇分享! ...

2018-11-09 14:01:21 3468 3

STM32F103-GPIO-按键检测

STM32F103-GPIO-按键检测,软件(KEIL5)+硬件(STM32F103开发板)教程参考我的博客https://blog.csdn.net/qq_37286676

2019-01-17

MFC/Opencv2磨皮融合美白程序(参数可调)

本程序基于MFC(C++)和Opencv2.4.10设计了一个人脸磨皮、融合、美白程序,代码清晰,较为底层,用到opencv库的地方很少,使用二维指针完成数据的转换和变化,具有理论价值。

2019-01-15

STM32F103-GPIO-库函数点亮LED

STM32F103-GPIO-库函数点亮LED,软件(KEIL5)+硬件(STM32F103开发板)教程参考我的博客https://blog.csdn.net/qq_37286676

2019-01-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除