自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(102)
  • 资源 (4)
  • 收藏
  • 关注

原创 问题三十五:傅立叶变换——带通滤波

问题三十五:傅立叶变换——带通滤波

2023-03-03 17:09:58 1504 1

原创 问题三十四:傅立叶变换——高通滤波

问题三十四:傅立叶变换——高通滤波

2023-03-02 11:40:24 878

原创 问题三十三:傅立叶变换——低通滤波

问题三十三:傅立叶变换——低通滤波

2023-03-01 22:01:34 822

原创 问题三十二:离散二维傅立叶变换(Discrete Fourier Transformation)

离散二维傅立叶变换(Discrete Fourier Transformation)

2023-03-01 21:55:26 592

原创 问题三十一:仿射变换(Afine Transformations)——倾斜

问题三十一:仿射变换(Afine Transformations)——倾斜

2023-03-01 21:37:06 256

原创 问题三十:仿射变换( Afine Transformations )——旋转

问题三十:仿射变换( Afine Transformations )——旋转

2023-03-01 21:32:26 270

原创 问题二十九:仿射变换( Afine Transformations )——放大缩小

问题二十九:仿射变换( Afine Transformations )——放大缩小

2023-03-01 21:27:53 368

原创 问题二十八:仿射变换( Afine Transformations )——平行移动

问题二十八:仿射变换( Afine Transformations )——平行移动

2023-03-01 21:24:39 152

原创 挑战图像处理100问(27)——双三次插值

双三次插值

2023-03-01 21:18:41 476

原创 挑战图像处理100问(26)——双线性插值

双线性插值

2023-03-01 00:33:59 231

原创 挑战图像处理100问(25)——最近邻插值

最近邻插值

2023-03-01 00:25:29 421

原创 挑战图像处理100问(24)——伽玛校正

伽玛校正

2023-03-01 00:13:02 609

原创 海明校验复习总结

海明校验复习总结由于在网上已有的关于海明校验的解释中找不到通俗易懂的解释,并且有些例子存在前后内容不一致等情况,因此将自己对海明校验的理解进行一个概括。一、海明校验的步骤给定公式:2r>=k+r+12r >= k+r+12r>=k+r+1。其中,kkk:传输数据的位数,rrr:校验位的位数。首先根据给定传输数据,求出kkk的值,然后根据该公式求出rrr的值,并求出总共需要传输的位数为k+rk+rk+r位;根据 1 中得到的rrr值,确定出校验位的索引依次为第202020位

2020-08-22 19:42:16 256 2

原创 10个Python编程小技巧

1. 变量交换a = 1b = 2a, b = b, a # 实现了对两个数的交换a, b(2, 1)2. 字符串格式化name = 'Jack'country = 'China'age = 18# 1. 传统的字符串拼接(很繁杂)print("Hi, I'm " + name + ". I'm from " + country + ". And I'm " + str(age) + " years old.")# 2. 百分号语法print("Hi, I'm %s. .

2020-07-02 13:19:30 275

原创 模式识别与机器学习作业——人脸识别与检测(Python实现)

PR&ML Project Description -Project 11-The reportThe answer can be seen in the code.(3) Let N = 5 and 7, respectively. Repeat (2) for each N.N = 5:N=7:(4) Repeat (2) and (3) for Fisherfaces. Compare the simulation results of Eigenfaces and F.

2020-06-17 17:40:32 3318

原创 快速避坑成功安装dlib

因学习人脸识别项目,需要安装dlib库,遇到了各种大小坑,在这里简单记录下关键步骤。安装环境:1. Windows 10; 2. Python 3.7我这里就不写自己遇到的一排排红色警告了,咱直接动真格的。。下载文件:dlib-19.17.99-cp37-cp37m-win_amd64.whlpip install boost(快捷方式:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple boost)在存放dlib-19.17.99-.

2020-06-16 23:15:31 848 2

转载 Linear Discriminant Analysis(线性判别分析LDA超全总结)

今儿看到一篇很清楚解释 LDA(线性判别分析) 的文章,遂上传自己博客,以便自己日后方便查看回顾。讲得太棒了!原文传送门

2020-06-16 12:19:12 384 2

原创 Day_23 —— LeetCode 24:两两交换链表中的节点

Day_23 —— LeetCode344LeetCode 344LeetCode344:字符串反转题目解法一:迭代class Solution {public: ListNode* swapPairs(ListNode* head) { ListNode *dummy = new ListNode(-1), *pre = dummy; dummy->next = head; while (pre->next &&

2020-06-14 23:14:18 169 2

原创 day_22 —— LeetCode 344:字符串反转

Day_22 —— LeetCode344LeetCode 344LeetCode344:字符串反转题目解法一:从两头往中间走,同时交换两边的字符class Solution {public: void reverseString(vector<char>& s) { int left=0, right=(int)s.size()-1; while(left < right){ char temp = s[l

2020-06-13 11:34:44 181 1

原创 day_21 —— LeetCode 35:搜索插入位置(二分查找)

Day_21 —— LeetCode35LeetCode 35LeetCode35:搜索插入位置解法一:遍历数组,寻找大于等于target的数,如果出现了,返回下标index,否则(遍历完数组也没找到)返回数组长度(最大值,插入数组末尾)。class Solution {public: int searchInsert(vector<int>& nums, int target) { for (int i = 0; i < nums.size();

2020-06-12 18:42:31 187 2

原创 day_20 —— 归并排序学习

Day_20 —— 归并排序归并排序的基本思想是:先将序列一次次分成子序列,直到子序列长度为1;再将已有序的子序列合并,得到完全有序的序列。可以看出归并排序运用了 分而治之的思想 。归并排序是按照分层进行比较的,会分成log2nlog_2nlog2​n层;而每一层的比较次数为O(n)O(n)O(n);所以时间复杂度求得nlog2nnlog_2nnlog2​n。C实现:#include <stdio.h>#define max 10int a[11] = { -1

2020-06-11 12:01:04 394 2

原创 day_19 —— LeetCode 88:合并两个有序数组

Day_19 —— LeetCode88LeetCode 88LeetCode88:合并两个有序数组题目由于两个数组都是有序的,所有只要按顺序比较大小即可。题目中说了 nums1 数组有足够大的空间,又给了m和n,那就知道了混合之后的数组的大小,这样就从 nums1 和 nums2 数组的末尾开始一个一个比较,把较大的数,按顺序从后往前加入混合之后的数组末尾。设置三个变量 i,j,k,分别指向 nums1,nums2,和混合数组的末尾。进行 while 循环,如果i和j都大于0,再看如果 nums1

2020-06-10 18:22:32 188 2

原创 day_18 —— LeetCode 704:二分查找

Day_18 —— LeetCode704LeetCode 704LeetCode704:二分查找题目二分查找是一种运行时间复杂度为O(log n)的快速搜索算法。这种搜索算法基于分而治之的原理,为了使该算法正常工作,查找的对象应该是有序的。class Solution {public: int search(vector<int>& nums, int target) { int left = 0, right = nums.size();

2020-06-10 13:03:57 216 2

原创 模式识别与机器学习作业——决策树(Python实现)

Decision TreeHomework 4Report:ID3CARTCodeID3CartReference:Homework 4Report:ID3(a) (20 points) Build a decision tree based on the this table using ID3ID3ID3 algorithm (Please use the entropy impurity).The result:(based on ID3ID3ID3)CART(b) Bu.

2020-06-10 08:47:24 3329 4

原创 模式识别与机器学习作业——SVM(Python实现)

Homework 3报告:Problem 1 Support Vector Machine (SVMSVMSVM)In this problem, we will write a program to implement the SVM algorithm. Let us start with a toy example (which can be found at SVM_matlab_Prof_olga_Veksler.pdf) and then work on more complicated.

2020-06-08 13:31:29 3406 2

原创 Day_16、17 —— 算法8种时间复杂度全面总结

1. The SummaryTo recap time complexity estimates how an algorithm performs regardless kind of machine it runs on. You can get the time complexity by “counting” the number of operations performed by your code. This time complexity is defined as a function.

2020-06-07 22:59:34 404 2

原创 day_15 —— LeetCode 21:合并两个有序链表

Day_15 —— LeetCode21LeetCode 21LeetCode21:合并两个有序链表题目解法一:新建一个链表,然后比较两个链表中的元素值,把较小的那个链到新链表中,由于两个输入链表的长度可能不同,所以最终会有一个链表先完成插入所有元素,则直接另一个未完成的链表直接链入新链表的末尾。class Solution {public: ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) { ListNode *du

2020-06-06 23:33:26 195 2

原创 Day_14 —— LeetCode 206:反转链表

Day_14 —— LeetCode 206:反转链表题目要求我们分别用迭代和递归分别来实现。感谢星球振哥的动态图:迭代的思路:在原链表之前建立一个新的newHead,然后从头结点开始,将之后的一个结点移到newHead之后,重复此操作,直到head成为尾结点为止。class Solution {public: ListNode* reverseList(ListNode* head) { ListNode *newHead = NULL; whil

2020-06-05 22:12:50 223 2

原创 day_12 —— LeetCode 237:删除链表中的节点

Day_12 —— LeetCode练习题:删除链表中的节点237. 删除链表中的节点请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。现有一个链表 – head = [4,5,1,9],它可以表示为:示例1:输入: head = [4,5,1,9], node = 5输出: [4,1,9]解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9.示例2:输入: head = [4,5

2020-06-03 21:06:55 192 2

原创 day_11 —— LeetCode 771:宝石与石头

Day_11 —— LeetCode练习题:宝石与石头771. 宝石与石头题目:给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头。 S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。J 中的字母不重复,J 和 S中的所有字符都是字母。字母区分大小写,因此"a"和"A"是不同类型的石头。示例1:输入: J = “aA”, S = “aAAbbbb”输出: 3示例2:输入: J = “z”, S = “ZZ”输出: 0解答:C++解法一

2020-06-02 10:59:17 236

原创 day_10——LeetCode 49:字母异位词分组

Day_10 —— LeetCode练习题:字母异位词分组49. 字母异位词分组给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”]输出:[[“ate”,“eat”,“tea”],[“nat”,“tan”],[“bat”]]class Solution {public: vector<vector<string>> g

2020-06-01 22:03:47 179

原创 day_9——什么是哈希表?

Day_9 —— 什么是哈希表?今天的打卡题,我们就来学习最重要的数据结构之一:散列表或哈希表,那么什么是哈希表呢?哈希表怎么做到 O(1) 时间复杂度找到某个元素的呢?提供参考资料如下,大家可参考。《我的第一本算法数》图片1:哈希表的基本用途图2:哈希表的查找规则: 图3:哈希表常遇到键冲突问题:图 4 :解决方法星球内的星友直接学习本书的 1-6 解即可。然后是打卡题:什么是哈希表?哈希表怎么做到 O(1) 时间复杂度找到某个元素?哈希表是一种使用哈希函数组织数据,以支持快速插入和搜

2020-06-01 22:01:51 226 2

原创 day_8——LeetCode1:两数之和

Day_8 —— LeetCode练习题:两数之和1. 两数之和给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]首先,我们先遍历数组nums,i为当前元素下标,我们需要将每一个遍历的

2020-06-01 21:57:34 143

原创 day_6——LeetCode724:寻找数组的中心索引

Day_6 —— LeetCode练习题:求数组的中心索引724. 寻找数组的中心索引给定一个整数类型的数组 numsnumsnums,请编写一个能够返回数组“中心索引”的方法。我们是这样定义数组中心索引的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。示例一:输入:nums = [1, 7, 3, 6, 5, 6]输出: 3解释:索引3 (nums[3] = 6)

2020-06-01 21:55:57 163

原创 day_5——数组指定位置插入一个元素

Day5 作业帖:数组指定位置插入一个元素,自己手动实现,不能调用APIC++实现:int insertElem(int List[], int &length, int p, int e){ //判断是否合法 if (p<0 || p>length || length == maxsize) return 0; //后移 for (int i = length - 1; i > p; --i) List[i + 1] = List[i];

2020-06-01 21:54:04 485

原创 day_4——希尔顿序列

希尔顿序列求解希尔顿序列(Hailstone Sequence),希尔顿序列问题是一个著名的数学问题,至今没有证明其正确性,也没证明其是错误的,即任何一个正整数N,如果是偶数的话就除以2,如果是奇数的话就乘以3再加上1,最后这个数都会变为1。其表达式如下:Hailstone(n)={{1}, if n equal 1{n}∪ Hailstone (n/2), if n is even {n}∪&

2020-06-01 21:52:52 316

原创 Day3——算法与程序

算法与程序什么是一个算法? 程序就等于算法吗?(今天不用写代码)理解以上参考清华大学邓俊辉老师的视频:https://next.xuetangx.com/learn/THU08091000384/THU08091000384/1516243/video/1387095算法+数据结构=程序...

2020-05-25 10:31:20 109

原创 Day2——选择排序

Day1 选择排序选择排序算法步骤例子代码选择排序参考本文对选择排序的一些提示,在星球内记录代码及思考过程。选择排序是一种简单直观的排序算法,无论什么数据进去都是 O(n²) 的时间复杂度。所以用到它的时候,数据规模越小越好。唯一的好处可能就是不占用额外的内存空间了吧。算法步骤首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。重复第二步,直到所有元素均排序完毕。例子这种排序的最大优势就是省去

2020-05-24 00:14:32 135 2

原创 Day1——冒泡排序

算法刷题 Day1——冒泡排序学会冒泡排序算法文章参考:https://stackabuse.com/bubble-sort-in-python/作业:写出冒泡的代码,并上传到知识星球里,详见下面介绍。冒泡排序(Bubble Sort)是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。算法步骤比

2020-05-23 11:00:51 188 2

原创 模式识别与机器学习作业——PCA与LDA的应用

Homework 1Part Ⅰ The curse of dimensionality(a) Describe the curse of dimensionality. Why does it make learning difficult in high dimensional spaces?Assuming that the feature is binary, each additional feature will exponentially increase the number of .

2020-05-19 13:49:02 1062 5

人脸识别与检测(Python实现).rar

这是我机器学习课关于人脸识别与检测(作了人脸分割提取)大作业的完整代码, 欢迎查看我的关于人脸识别的那篇博客, 此文件包含了本博客中提到的所有资源, 今天清理文件,于是把它上传, 希望能帮到需要的同学, 大家相互学习。

2020-09-09

浙江大学机器学习配套资源(胡老师).rar

这是浙江大学胡老师机器学习的相关配套资源,包含 课程PPT 编程大作业 编程作业 课堂笔记 例程 纸质作业 希望能对机器学习爱好者提供便捷的帮助,大家一起加油!

2020-09-09

SIFT提取特征进行全景图拼接

这是我图像处理的大作业代码,代码使用纯Python进行实现,基本上没调用OpenCV的API,语言:Python3,IDE:jupyter notebook,欢迎朋友们下载。

2020-05-04

Fashion—Mnist数据集

Fashion-Mnist数据集,未处理的数据,包含了10个类别的图像,分别是:t-shirt(T恤),trouser(牛仔裤),pullover(套衫),dress(裙子),coat(外套),sandal(凉鞋),shirt(衬衫),sneaker(运动鞋),bag(包),ankle boot(短靴)。文件内容:训练数据图片train-images-idx3-ubyte,训练数据标签train-labels-idx1-ubyte,测试数据图片t10k-images-idx3-ubyte,测试数据标签t10k-labels-idx1-ubyte。

2020-03-05

空空如也

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

TA关注的人

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