#数据结构与算法

linux网络流控-htb算法简析

项目中用tc,htb做流控期间,研究了htb(分层令牌桶)算法的实现.觉得这种思想在类似与有消费优先级的生产者消费者场景中也很适用.该算法过于复杂,碍于嘴拙遂在标题中加了简析,只介绍核心思想和关键代码的实现.一个栗子:tcqdiscadddeveth0roothandle1:htbtcclassadddeveth0pa...

【趣味算法题】找到缺失的最小正整数

【题目描述】有一个随机序列的数组,找到其中缺失的最小正整数举例如下,在[1, 2, 0]中,该最小正整数应为3在[3, 4, -1, 1]中,该最小正整数应该为2 【解题思路】如果允许开辟任意大小的空间,易得用桶的思想可以解决这题简单的说,开辟一个数组,从1扫...

ICP(迭代最近点)算法

  图像配准是图像处理研究领域中的一个典型问题和技术难点,其目的在于比较或融合针对同一对象在不同条件下获取的图像,例如图像会来自不同的采集设备,取自不同的时间,不同的拍摄视角等等,有时也需要用到针对不同对象的图像配准问题。具体地说,对于一组图像数据集中的两幅图像,通过寻找一种空间变换把一幅图像映射到另一幅图像,使得两图...
代码星球 ·2020-04-17

高斯算法实现

高斯算法的原理首先,高斯滤波算法的一般过程分为两步:计算掩膜(高斯核)卷积(即掩膜上每一个位置的值和图像对应位置的像素值的乘积、求和运算)其次,我们知道高斯分布也叫做正态分布;在二维空间中,这个公式生成的曲面的等高线是从中心开始呈正态分布的同心圆。分布不为零的像素组成的卷积矩阵与原始图像做变换。每个像素的值都是周围相邻...
代码星球 ·2020-04-17

睡眠排序算法

  睡眠排序算法是一种比较另类有趣的排序算法,其核心思想与CPU调度机制相关,是通过多线程让每一个数据元素睡眠一定规律的时间,睡眠时间要和自身数据大小存在一定的规律,睡眠时间短的先进行输出,睡眠长的后输出,从而实现数据有序输出。存在缺点:  ①若睡眠时间之间相差很小时,容易出现误差,为了减小误差,一般需要放大睡眠倍数;...
代码星球 ·2020-04-17

数据结构考研复习一

 什么是数据结构?答案众说纷纭,有人说“数据结构是数据对象,以及存在于该对象的实例和组成实例的数据元素之间的各种联系。这些联系可以通过定义相关的函数来给出”,也有人说“数据结构是计算机中存储、组织数据的方式。” 数据结构包括数据对象在计算机中的组织方式,还与一系...
代码星球 ·2020-04-17

Python算法基础

定义和特征  定义:算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或...
代码星球 ·2020-04-17

Kmeans聚类算法分析(转帖)

原帖地址:http://www.opencvchina.com/thread-749-1-1.html     k-means是一种聚类算法,这种算法是依赖于点的邻域来决定哪些点应该分在一个组中。当一堆点都靠的比较近,那这堆点应该是分到同一组。使用k-means,可以找...

OpenCV学习(23) 使用kmeans算法实现图像分割

     本章我们用kmeans算法实现一个简单图像的分割。如下面的图像,我们知道图像分3个簇,背景、白色的任务,红色的丝带以及帽子。    Matimg=cv::imread("../kmeans.jpg")...

OpenCV学习(22) opencv中使用kmeans算法

kmeans算法的原理参考:http://www.cnblogs.com/mikewolf2002/p/3368118.html下面学习一下opencv中kmeans函数的使用。    首先我们通过OpenCV中的随机数产生器RNG,生成一些均匀分布的随机点,这些点的位置对应一副...

Kmeans算法原理极其opencv实现(转帖)

原帖地址:http://blog.csdn.net/qll125596718/article/details/82434041.基本Kmeans算法[1]选择K个点作为初始质心 repeat    将每个点指派到最近的质心,形成K个簇   ...

OpenCV学习(21) Grabcut算法详解

grabcut算法是graphcut算法的改进。在理解grabcut算之前,应该学习一下graphcut算法的概念及实现方式。我搜集了一些graphcut资料:http://yunpan.cn/QGDVdBXwkXutH    grabcut算法详细描述见资料中的pdf文件:“G...

OpenCV学习(20) grabcut分割算法

     在OpenCV中,实现了grabcut分割算法,该算法可以方便的分割出前景图像,操作简单,而且分割的效果很好。算法的原理参见papaer:“GrabCut”—InteractiveForegroundExtractionusingIteratedGraphCu...

OpenCV学习(19) 细化算法(7)

最后再来看一种通过形态学腐蚀和开操作得到骨架的方法。http://felix.abecassis.me/2011/09/opencv-morphological-skeleton/代码非常简单:voidgThin::cvmorphThin(cv::Mat&src,cv::Mat&dst) &#...
代码星球 ·2020-04-17

OpenCV学习(18) 细化算法(6)

本章我们在学习一下基于索引表的细化算法。假设要处理的图像为二值图,前景值为1,背景值为0。索引表细化算法使用下面的8邻域表示法:一个像素的8邻域,我们可以用8位二进制表示,比如下面的8邻域,表示为00111000=0x38=56我们可以枚举出各种情况下,当前像素能否删除的表,该表大小为256。它的索引即为8邻域表示的值...
代码星球 ·2020-04-17
首页上一页...9394959697...下一页尾页