- 博客(26)
- 资源 (13)
- 收藏
- 关注
原创 图像处理 图片二值化和获取不同图像通道的图片
图像二值化( Image Binarization)就是将图像上的像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的黑白效果的过程。在数字图像处理中,二值图像占有非常重要的地位,图像的二值化使图像中数据量大为减少,从而能凸显出目标的轮廓。在Photoshop中有一个很重要概念叫图像通道,在RGB色彩模式下就是指那单独的红色、绿色、蓝色部分。也就是说,一幅完整的图像,是由红色绿色蓝色三个通道组成的。他们共同作用产生了完整的图像。下面我会介绍这7种方法,以下图所示的源图为例。
2019-10-29 21:29:54 15326 1
原创 图像处理 彩色图转化成灰度图
因为彩色图片每个像素有三个字节(24bit)的值,怎么样才能取到一字节(8bit)的灰度等级呢。我们一般有7种方法:最小值法、最大值法、平均值法、加权法、红色值法、绿色值法和蓝色值法。三通道一般指彩色图片,分别为R、G、B通道,我们所见的彩色图片,则是这三个通道叠加的效果。四通道一般是指在三通道的基础上再加上一个透明度的通道。单通道一般指灰度图,但是三通道如果每个像素的三个通道值都相等的话,我们也称为灰度图。生成两个文件夹,一个存放单通道的图像,另一个存放是三通道的图像。至于使用哪种方法,要看具体的例子。
2019-10-29 21:00:33 16487 2
原创 Mnist数据集 将其转化为图片
所以初始化BufferedImage的时候要用TYPE_INT_GRAY,只有8bit大小的存储空间,图片的存储空间也比其他如TYPE_INT_RGB类型生成的小。3、读取图片的方法,返回一个byte[][]数组,第一个[]代表的是第几个图片,第二个[]代表的是该图片的内容。演示的是生成测试集的图片,一共有10000个图片,生成10个文件夹,每个文件夹中有1000个图片。如果要生成训练集的图片,将main()方法中的,源文件和目标文件的路径改成相应的就可以了。准备生成第8个有1000个图像的文件夹,
2019-10-28 21:19:08 16420 1
原创 Mnist数据集 简单介绍
可从此页面获得的MNIST手写数字数据库的训练集为60,000个示例,而测试集为10,000个示例。它是NIST可提供的更大集合的子集。这些数字已进行尺寸规格化,并在固定尺寸的图像中居中。对于那些想在实际数据上尝试学习技术和模式识别方法而又花最少的精力进行预处理和格式化的人来说,这是一个很好的数据库。:训练集图像(9912422字节):训练集标签( 28881字节):测试集图像(1648877字节) ):测试集标签(4542字节)。
2019-10-28 20:43:29 17014
原创 Java IO流操作(FileReader、BufferedReader)
一、FileReader1、介绍。 FileReader类从InputStreamReader类继承而来。该类按字符读取流中数据。可以通过以下几种构造方法创建需要的对象:1、在给定从中读取数据的 File 的情况下创建一个新 FileReader,FileReader(File file)。2、在给定从中读取数据的 FileDescriptor 的情况下创建一个新 Fi...
2019-10-24 16:15:12 15433 1
原创 Java IO流操作(PipeInputStream、SequenceInputStream、BufferedInputStream)
一、PipeInputStream1、介绍。 管道流的主要作用是可以进行两个线程间的通讯,分为管道输入流(PipeOutputStream)和管道输出流(PipeInputStream)。如果要想进行管道输出,则必须把输出流连在输入流之上2、代码。private static final String Pre_Path = "G:\\项目测试\\io流文件测试\\"...
2019-10-24 16:04:35 14481 4
原创 Java IO流操作(FileInputStream、ByteArrayInputStream、ObjectInputStream)
一、介绍 java的IO流操作主要分为字节流和字符流,每个流都会有输入和输出两种类型的流。所有的字节流类都继承自InputStream 和 OutputStream 这两个抽象类,而所有的字符流类是都继承自Reader 和 Writer 这两个抽象类。字节流的处理单位是字节,通常用来处理二进制文件,如音乐、图片文件等。而字符流的处理单位是字符,通常来处理文本。对流进行操作之后,...
2019-10-23 23:15:56 17846 4
原创 高数 向量、矩阵回顾
一、一些术语1、线性运算。 是加法和数量乘法, 在实数领域像只包含加法和数量乘法二元一次方程就属于线性运算,如y=3x+5。如果是矩阵的加法和数乘运算,就称为矩阵的线性运算;如果是向量的加法和数乘运算,统称为向量的线性运算。对于不同线性运算一般有不同的形式,它们满足交换律、结合律、分配律等。2、隐函数:可以转为显函数如,不可转为显函数如。3、显函数:y=2x+1。...
2019-10-23 21:42:28 14247
原创 排序算法 基数排序
一、基数排序1、介绍。 基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度为O (nlog(r)m),其中r为所采取的基数,而m为堆数,在某些时候,...
2019-10-20 22:52:08 14069
原创 排序算法 计数排序(普通计数排序、桶排序)
将区间[0, 1)划分为n个大小相等的子区间(桶),每桶大小1/n:[0, 1/n), [1/n, 2/n), [2/n, 3/n),…计数排序的基本思想是对于给定的输入序列中的每一个元素x,确定该序列中值小于x的元素的个数(此处并非比较各元素的大小,而是通过对元素值的计数和计数值的累加来确定)。当然这是一种牺牲空间换取时间的做法,而且当O(k)>O(n*log(n))的时候其效率反而不如基于比较的排序(基于比较的排序的时间复杂度在理论上的下限是O(n*log(n)), 如归并排序,堆排序)。
2019-10-20 12:47:13 15318 1
原创 排序算法 归并排序(普通归并排序、自然归并排序)
自然归并排序:对于初始给定的数组,通常存在多个长度大于1的已自然排好序的子数组段.例如,若数组a中元素为{4,8,3,7,1,5,6,2},则自然排好序的子数组段有{4,8},{3,7},{1,5,6},{2}.用一次对数组a的线性扫描就足以找出所有这些排好序的子数组段.然后将相邻的排好序的子数组段两两合并,构成更大的排好序的子数组段({3,4,7,8},{1,2,5,6}).继续合并相邻排好序的子数组段,直至整个数组已排好序。(1)申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列。
2019-10-19 14:55:38 15721 3
原创 排序算法 插入排序(直接插入排序、折半插入排序、希尔排序)
所谓折半比较,就是在插入A[i]时,取A[i-1/2]的关键码值与A[i]的关键码值进行比较,如果A[i]的关键码值小于A[i-1/2]的关键码值,则说明A[i]只能插入A[0]到A[i-1/2]之间,故可以在A[0]到A[i-1/2-1]之间继续使用折半比较;(1)计算 0 ~ i-1 的中间点,用 i 索引处的元素与中间值进行比较,如果 i 索引处的元素大,说明要插入的这个元素应该在中间值和刚加入i索引之间,反之,就是在刚开始的位置 到中间值的位置,这样很简单的完成了折半;(2)设置开始查找的位置j;
2019-10-19 14:47:06 16830 3
原创 排序算法 交换排序(冒泡排序、快速排序)
它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。对于左侧的数组数据,又可以取一个分界值,将该部分数据分成左右两部分,同样在左边放置较小值,右边放置较大值。(2)对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。
2019-10-19 14:45:42 15323 2
原创 排序算法 选择排序(简单排序、堆排序)
依次类推,共需要进行的比较次数是(n-1)+(n-2)+…+2+1=n(n-1)/2,即进行比较操作的时间复杂度为O(n^2),进行移动操作的时间复杂度为O(n)。该趟排序从当前无序区中-选出关键字最小的记录 R[k],将它与无序区的第1个记录R交换,使R[1..i]和R[i+1..n)分别变为记录个数增加1个的新有序区和记录个数减少1个的新无序区;时间复杂度,最佳情况:O(n^2) 最差情况:O(n^2) 平均情况:O(n^2)。------开始------------结束------
2019-10-18 17:22:56 15594 5
原创 Java 反射机制
一、总体介绍1、什么是反射机制。 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制(注意关键词:运行状态)换句话说,Java程序可以加载一个运行时才得知名称的class,获悉其完整构造(但不包括methods定义),并生成其对象实...
2019-10-17 19:22:57 14456
原创 WebDriver 采集csdn用户发表过的csdn文章信息
一、分析网站内容1、首先先查看自己有着文章列表的用户主页:https://blog.csdn.net/qq_36511401,发现并没有什么特别的地方,就是一个网站网址加上个人帐号。2、当我们打开第二页的时候,就发现网址的连接变成了:https://blog.csdn.net/qq_36511401/article/list/2?,这真是一个好消息,而且新的网址实在原来的基础上加上/...
2019-10-17 15:23:10 15148
原创 SpringBoot Redis的简单集成
1、redis的安装和简单的命令可以参考的其他文章Redis 采用指令和Redis window上安装和使用。2、pom的依赖。 <!--基础--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId...
2019-10-15 20:13:34 14496
原创 数据库 Redis 采用指令
1、输入密码:auth password2、存储、取值、删除、选择数据库(默认为0)。3、可以设置过期时间的存储。 EXPIRE key seconds 将键 key 的生存时间设置为指定的秒数。复杂度为O(1) PEXPIRE key milliseconds 将键 key 的生存时间设置为指定的毫秒数。复杂度为O(1) ...
2019-10-15 20:04:55 14406 1
原创 数据库 Redis window上安装和使用
1、到https://download.csdn.net/user/qq_36511401/uploads去下载我的资源,Redis-x64-3.2.100,我这个安装包是64位。2、下载完之后直接解压到指定目录就可以了,我的是免安装的,目录如下所示。3、其中文件redis-cli.exe是本地客户端,redis-server.exe是本地服务端。我们平时是在redis-cli.e...
2019-10-15 19:38:40 14534
原创 WebDriver 高级操作事件
一、标签页Tag的操作1、打开一个新的标签页,并关闭原先的tag。public static void getNewTag(WebDriver driver, String url) { JavascriptExecutor executor = (JavascriptExecutor) driver; executor.executeScript("function c...
2019-10-14 23:46:00 14520 1
原创 WebDriver 获取淘宝和天猫商品的类别
一、技巧。1、要自动化测试一个网页或者爬起一个网页的信息,以及在网页上进行操作的时候,点击F12,开发浏览器的开发者模式,对网页元素的分析是必不可少的。2、可以使用下方的快捷标志,然后点击网页上的元素,就可以在Elements的窗口里面快速的定位到相应的代码。二、网页分析。1、根据淘宝和天猫的商品链接,获取相应的商品类别。我们先要找到一个网站,比如:http://www....
2019-10-14 22:17:16 14726
原创 WebDriver 集成测试
5、会自动打开谷歌浏览器,并调转到百度界面,如果要自动关闭的话,要加上driver.quit();就可以了。但是,如果你在代码里面经常开启和关闭chromedriver的话,有时候会出现chromedriver不会被关闭的情况,或者进程残留在后台中情况也可能发生,为了避免这种情况,可以的方法,进行打开和关闭的处理。6、坑点。因为在项目中使用了Swagger-ui,在其里面也有包com.google.guava:guava2.0,所以最后项目使用的还是2.0版本的。要找到冲突的包,要在每个pom.x
2019-10-09 16:15:25 14495 1
原创 SpringBoot 实时动态的获取配置数据
2、再在里面编写数据。3、编写读取配置的方法。public class PropertyUtils { public static String getPropertiesValue(String key, String fileName) { Properties p = new Propert...
2019-10-01 00:10:18 16058 3
TortoiseGit和TortoiseSVN
2020-05-26
Redis-x64-3.2.100.zip
2019-10-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人