自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(93)
  • 资源 (3)
  • 收藏
  • 关注

原创 Java面试题查缺补漏习题,锁的升级,动态代理

之前我们总结了Java面试题目中的关于计算机网络,操作系统,以及JVM虚拟机,以及Java的相关特性。今天又看了很多面试的视频,对面试的题目进行一下仔细的补充。1.对称加密与非对称加密的区别:非对称加密和对称加密在加密和解密过程、加密解密速度、传输的安全性上都有所不同,具体介绍如下:(1)加密过程和解密过程不同:对称加密过程和解密过程使用的同一个密钥,加密过程相当于用原文+密钥可以传输出密文,同时解密过程用密文-密钥可以推导出原文。但非对称加密采用了两个密钥,一般使用公钥进行加密,使用私钥进行解密

2021-01-10 17:11:25 31

原创 手把手教你用Python做一个图像融合demo,小白可上手!

1.创作背景说到融合,一下子会让我们这些95后想起来童年的动漫游戏王了!发动魔法卡——融合!哈哈,今天说得当然不是游戏王里的魔法了,但是我们使用的是Python魔法,今天我们将使用Python编程语言,以及自带的图像处理工具包进行图像融合操作,来实现图像融合的酷炫效果!前几天在网上看了一个demo,使用OpenCV(开源计算机视觉库)进行图像的融合操作,那么何谓图像的融合呢?所谓图像的融合指的是指两幅图像变成,“你中有我,我中有你”(最近在看搜神传电视剧,哎,时间过得真的快!童年的回忆啊!)2.

2021-01-04 14:07:47 20

原创 一文读懂大厂面试的JAVA基础(集合,面向对象特性,反射,IO,容器)

整理了操作系统,计算机网络,以及JVM的高频面试题目,对于面试大厂的Android以及后端开发岗位,可以说的是十分必要的部分就是JAVA语言的基础,在整体的内容上我认为有以下的几个部分,我发现任何的学习都是先建立框架体系,再逐个击破,针对Java的基础中包括:(1)Java语言的面向对象的特性(2)Java语言的集合种类以及特性(3)Java语言的反射特性(4)Java的IO流(5)Java语言与其他编程语言的特性对比Java语言的基础部分的面试就是这些,我们直接上面试题,完整的面试题目资料可以

2021-01-02 21:08:03 17

原创 一文读懂大厂面试的操作系统面试题目(超详细整理,线程,进程,死锁)

操作系统是大厂进行计算机开发以及算法岗位面试的必备部分,操作系统的面试中其实还包括操作系统的线程,进程的相关知识,以及Linux系统的内核和实际的使用。通过阅读很多的大厂的面试心经在操作系统的使用,进行了以下的操作系统面试题目的总结。操作系统的面试重点涉及线程,进程的基本概念,进程与线程的区别与联系,操作系统的死锁的发生,以及避免死锁的发生,片段存储区别,以及Linux系统的操作指令。1.什么是进程以及线程?二者之间的区别有哪些?进程是系统进行资源调度与分配的基本单位,线程是CPU进行资源调度与分配

2021-01-01 16:49:45 48

原创 一文读懂大厂面试的计算机网络面试题目(超详细整理)(TCP/IP,OSI,HTTP协议)

对于大厂的面试来说,掌握基本的计算机网络知识十分必要,但是说实话就单单是博主觉得,看书去复习,是最好的“安眠药”,哈哈哈,所以具有针对性的去学习更加的有效果,所以直接看大厂的高频面试题,快速建立知识结构体系。以下的一些是博主通过博览众多平台的博客推文进行的汇总:1.计算机网络OSI模型,TCP/IP,五层协议的体系结构,以及各层的协议(高频)计算机网络OSI分层共分为7层:由下至上依次为:物理层,数据链路层,网络层,传输层,表示层,会话层,应用层七层的各层传输通信协议,对应的作用和代表设备,传输的

2020-12-31 22:06:34 25

原创 一文读懂JVM虚拟机的高频面试题(超详细)

1.简述Java语言中的JVM虚拟机的内存模型?在整个的JVM的结构分为类加载机制,数据内存区,执行引擎在JVM的内存模型中共分为五个部分:程序计数器,虚拟机栈,本地方法栈,java堆,方法区,在以上的5个数据区中Java堆,方法区:线程共享程序计数器,虚拟机栈,本地方法栈:线程私有程序计数器:在JVM内部是一块很小的内存区域,用来指示当前程序中线程所执行的字节码的行数指示器,为了保证线程进行上下文切换时能恢复到正确的位置,每一个线程有独立的程序计数器,故为线程私有,且不会出现内存溢出。虚拟机栈:

2020-12-24 21:50:41 19 1

原创 AI算法实现武侠小说中的“绝世武功”——动作残影特效!

关注公众号:“AI学习经历分享”,选择“设为星标”回复对应关键词,获取机器学习,深度学习,Python,Java的技术干货!​创作背景:“飞雪连天射白鹿,笑书神侠倚碧鸳”,相信很多90后知道这副对联的含义,这是武侠小说作家金庸先生的作品合集,说实话在所有的作品中我最喜欢的是倚天屠龙记和天龙八部,应该说基本都喜欢,但是这两部中的爱恨情仇最为突出,倚天屠龙记中周芷若和赵敏,张无忌,再到天龙八部中的乔峰。说起来武侠小说中的武林高手是真的帅!现在的电影制作技术越来越高超了,武术特效做的效果的做的真的很酷炫。

2020-12-20 10:32:27 152 1

原创 Java语言中链表创建新的节点的几种方式

ListNode list=new ListNode() 初始化一个空节点,无值,不提倡此种写法。ListNode list=new ListNode(0) 初始化一个节点值为0的空节点,最常用最正规写法ListNode list=null 为空,什么都没有,一般不这么写;参考:https://blog.csdn.net/woshiwangxin0/article/details/99696978...

2020-12-12 09:29:32 48

原创 IDEA开发Maven项目提示:程序包org.junit不存在解决方案

更改.xml文件的配置原来的配置文件内容:junitjunit4.12test更改为:New: <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <!-- 默认的版本为3.8.1,修改为4.x,因为3.x使用的为编程的方式,4.x为注解的形式。 --> &l

2020-12-08 21:14:29 51

原创 聊聊本科的毕业设计如何合理选题?

一. 前言说到本科的毕业设计,谈论这个的原因马上就要12月底了,有很多正在读大四的粉丝私信我说,有没有毕业设计相关的资料,或者一些比较实用的选择建议。经过整理,最终我准备通过撰写文章的形势来传达一下我一下我的心得与建议,毕竟当年确定毕业设计的时候,我也是压力山大,因为毕竟一但做了决定,在大四下学期就没有反悔更改题目的机会了。二.自我角色定位一般来说本科生的毕业设计是必需在12月底之前确定下来的,大学四年级的学弟学妹们应该处于必须要确定下来具体的题目的时候,所以在本次文章中我们将核心说明如何选择合适的

2020-12-08 14:10:16 2092 8

原创 Java开发工程师学习日记(十)

1.谈谈Java线程池使用的优势:(1)Java线程池是一定数量的线程集合,线程的频繁创建与销毁消耗了操作系统与内存的大量资源,使用线程池使得减少了线程创建与销毁的资源浪费。(2)使用线程池可以提高程序的响应速度,通过复用已存在的线程,无需等待新线程的创建便能立即执行。(3)进行线程并发数的管控,过多的创建线程会使得造成系统内存过载溢出。2.Java线程池的参数有哪些线程池的方法参数:public ThreadPoolExecutor(int corePoolSize, int maximumP

2020-12-05 21:59:19 26

原创 你是这样的“夜间工程师”吗?(深度好文)

其实今天说的这个标题,是我自己的一个反思,我现在发现自己的作息时间有一点问题,我们可以看到各大互联网公司的出了名的加班时间表,尤其是某为,某节几个公司的加班都是出了名的多。正就是所谓的互联网的狼性所在~我其实在想为什么会选择在夜间加班呢?而且不仅仅夜间加班,在白天感觉也是非常的忙,这是什么原因呢?我认为有以下的两点为主要的原因:(1)工作和业务任务确实不可否认的多,确实在我们这样一个14亿人口的大国,任何公司的业务数量都不会少,前一段时间在淘宝上买嵌入式开发板的零件,一个很小的淘宝店(哈哈,举个例子而

2020-11-30 21:18:59 44

原创 十个效果酷炫的Linux系统操作指令(黑客帝国般的效果~)

想想电影黑客帝国中的画面,估计会令很多人都叹为观止,其实最简单的只要会使用Linux操作系统就可以是简单的实现电脑屏幕的字符串雨了!是不是很高大上呢!同时Linux系统的其他几个操作指令,都有十分酷炫的效果,绝对令人叹为观止,废话不多说,直接进入主题!1. cmatrix命令首先在Linux终端中执行以下命令,安装cmatrix命令sudo apt-get install cmatrix接下来就是见证奇迹的时刻:...

2020-11-27 15:15:25 3057 4

原创 Java开发工程师学习日记(九)

1.TCP与UDP网络传输协议方面:TCP的传输报文形式比UDP的传输形式更加复杂,因此UDP头部只有四个字段,因此传输效率比较,TCP<UDP2.数组或者字符串的null值含义:null表示字段或者变量还没有确定的值,3.IP地址的分类:A类:0.0.0.0~127.255.255.255B类:128.0.0.0~191.255.255.255C类:192.0.0.0~223.255.255.2554.网络的分类:局域网(LAN):一般限定在较小的区域内(小于10km的范围),通常

2020-11-24 20:27:07 261

原创 聊聊读研究生应该怎么权衡offer的选择(适合选择恐惧症,哈哈)

关注微信公众号“AI学习经历分享”,回复对应关键词,获取机器学习,深度学习,Python,Java的技术干货!今天突然有时间聊聊这个读研究生offer的选择,一方面是因为当初都答应了一位朋友,但是因为种种原因和因素,鸽了这个约定,并且最近一段时间比较忙,但是我从来没有忘记,答应别人的事情一定要做到。最近忙的终于算是有点眉目了,就算小小的总结一下分享一下经验。因为在读研究生的时候,有几种大的选择方式与努力方向:保研,考研,直博,出国。我会对这四种选择,尽我自己的所有了解与经验信息,与你分享我的心得选择经

2020-11-19 09:17:55 337 2

原创 1122.数组的相对排序(分治+拼接)

题意:本题目刚刚接触可能会有一点想不通,这是正常的现象对题目的解释如下:arr1的数组与arr2的数组中以arr2的数组进行排序,将arr1中的但是没有在arr2中不存在的元素,与arr2进行拼接原题题干:代码:class Solution { public int[] relativeSortArray(int[] arr1, int[] arr2) { int upper=0; for(int x:arr1){ upper=Math

2020-11-14 11:53:30 28

原创 LeetCode题解328.奇偶链表(分治算法)java(详细解释,逐行代码注释)

本题是将链表进行分开,举个例子:有如下链表:1->2->3->4->5->6经过本题的算法处理后输出的listNode序列为:1->3->5->2->4->6也就是将奇数位置与偶数位置的元素聚集在一起;结合代码注释即可看懂有问题欢迎关注我的微信公众号:AI学习经历分享,还有大量算法与开发的网盘学习资源,也可以加我微信与我私聊~算法运行截图:/** * Definition for singly-linked list. *

2020-11-13 19:56:58 33

原创 解决bug“module ‘cv2.cv2‘ has no attribute ‘xfeatures2d‘”的方法(超简便!推荐)

OpenCV安装包的版本不匹配:pip install opencv-python == 3.4.2.16pip install opencv-contrib-python == 3.4.2.16即可无报错成功运行~

2020-11-12 15:38:13 20

原创 Java开发工程学习日记(八)

1.操作系统中的进程状态切换:

2020-11-09 19:50:47 8

原创 Java开发工程师学习日记(七)

1.系统中设置当前工作目录的主要目的是加快检索速度2.操作系统的CPU调度方法,时间片轮法,每个进程将得到小单位的CPU时间(时间片),通常为10-100毫秒。时间片用完该进程将被抢占并插入就绪队列末尾。所以目的是为了多个终端都能得到时间片,而每个终端系统的及时响应。3.需CPU资源最少的进程先做属于“短作业优先”调度算法。4.排序算法的时间复杂度以及空间复杂度:5.Linux操作系统中的一些操作命令:cp:复制dd :vim中删除整行fmt :编排文本文件cut :从一行上移除部分内容选择

2020-10-30 20:29:38 1037 5

原创 使用java进行验证码短信的发送的

使用java语言进行验证码的短信的分发import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.net.MalformedURLException;import java.net.URL;import java.net.URLConnection;import java.net.URLEncod

2020-10-29 08:55:23 28

原创 如何修改mysql数据库的登录密码

mysql的数据库默认的登录名为“root”win+R打开Windows终端;set password for root@localhost = password('your password')使用命令行登录mysql;mysql -u root -p 输入刚刚输入的密码:发现修改密码成功,

2020-10-28 17:36:45 43

原创 java开发工程师学习日记(七)

web.xml文件是用来初始化配置信息,web.xml是放置在WEB-INF目录中局部变量可以与成员变量重名,这时可用“this”来指向成员变量setDaemon()方法必须在线程启动之前调用,当线程正在运行时调用会产生异常。public:可以被所有其他类所访问private:只能被自己访问和修改protected:自身、子类及同一个包中类可以访问default:同一包中的类可以访问,声明时没有加修饰符,认为是friendly。5.persistent方式的MDB可以保证消息传递的可靠性,也.

2020-10-26 20:02:08 39

原创 Linux服务器下C++中printf输出的字符串的颜色控制

在Linux的系统的终端中,尤其在输出的代码调试信息较多的时候,对关键的字符串进行颜色的特殊规定,增加调试的开发效率。C++;printf("字符串");以上为正常的输出printf函数的流程规定开发的规范语句:printf("\033[字背景颜色;字体颜色m 字符串 \033[0m" ); 以下为属性表:颜色代码: QUOTE:字背景颜色范围: 40–49 字颜色: 30—3940: 黑 30:

2020-10-25 15:25:18 32

原创 使用spring boot进行输出“hello ,world”,将运行服务进行服务器的线上部署同时进行本地的http访问测试

spring boot是现如今十分具有代表性的后端框架,当然随着现如今的springcloud等全家桶的使用,springboot也开始进行淡化,我们是用springboot框架进行一个简单的应用使用的操作,并且将它部署在服务器上进行运行。1.首先下载java的SDK开发包,也就是JDK,推荐使用JDK8,2.在电脑中添加JAVA的环境变量,可以使用UI的界面的方法,也可以使用终端的命令行,Win+R的打开终端,输入以下两条指令:setx JAVA_HOME "C:\Program Files\Jav

2020-10-24 09:49:35 163

原创 Java开发工程师学习日记(六)

1.Serializable要实现序列化对象必须要实现的接口2.当在操作系统中点击或者拖动鼠标的时候,触发的是mouseEvent3.在java的正则表达式\d代表的是数字的字符4.abstract修饰符可修饰字段、方法和类5.java中的Math的取整数的接口。math.ceil:ceil可以理解为天花板,也就是向上取整数,所以math.ceil(11.3)的值为12,math.ceil(-11.3)为-11;math.floor:floor则是翻译为地板,也就是向下取整数,math.floo

2020-10-23 20:49:43 57 2

原创 LeetCode与面试中的高频题型——Top K个数的解法,使用堆数据结构与快排算法

这是LeetCode中的剑指offer的题目,原题目如下陈述:输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。这类问题我们称之为topK问题,也是给你一堆的数,你来找到其中最小的K个,或者最大的K个数据,输入就是数组,还有K个算法思想:使用JAVA语言解题十分的方便,因为java语言中有priorityqueue的大根堆与小根堆数据结构,其内部是有完全二叉树进行实现的,固定长度的K,自动进行排序。进行删除堆顶与堆

2020-10-18 16:55:51 35

原创 JAVA开发工程师学习日记(五)

1.java中GC(Garbage Collection)回收机制是当对象的所有引用都消失后,对象使用的内存将自动回收。2.final关键字可用于修饰类、变量和方法。final修饰变量时,表示该变量一旦获得了初始值就不可被改变,final既可以修饰成员变量也可以修饰局部变量、形参。3.包含抽象方法的类必须定义为抽象类; 抽象类不一定包含抽象方法,也可以包含普通方法; 抽象类有构造方法,但是不能new一个对象; java语言只支持单继承。4,java中的Struct框架,struct框架可以进行文件上传

2020-10-17 00:05:08 47

原创 java开发工程师学习日记(四)

1.JVM的内存中,方法区用于存储JVM加载的类信息、常量、静态变量、以及编译器编译后的代码等数据,是线程共享的。2.doGet/doPost 则是在 javax.servlet.http.HttpServlet 中实现的。3.Servlet的生命周期分为5个阶段:加载、创建、初始化、处理客户请求、卸载。(1)加载:容器通过类加载器使用servlet类对应的文件加载servlet(2)创建:通过调用servlet构造函数创建一个servlet对象(3)初始化:调用init方法初始化(4)处理客户

2020-10-15 20:12:50 41

原创 Java开发工程师学习日记(三)

1.Java语言中负责并发管理机制的是多线程(这道题来自牛客网,但是感觉不太对劲),Java中并发的实现机制是多线程,而不是管理机制,算了。自己理解就好。2.Java中的线程池具有什么作用?(1)合理的限制线程的数量,保证系统的稳定,防止造成资源的浪费。(2)可以持续使用创建的线程,进行循环的利用,减少了线程在创建与销毁过程中的能源消耗。(3)不用频繁的创建线程,提高了响应的速度。3.java web中的http get 和post请求的区别?get和post都是http的请求方式,http(

2020-10-14 21:39:31 31

原创 (详细注解)使用Python的扩展包numpy,matplotlib的基本操作进行绘制函数图像(中文显示)

numpy:NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。NumPy 的前身 Numeric 最早是由 Jim Hugunin 与其它协作者共同开发,2005 年,Travis Oliphant 在 Numeric 中结合了另一个同性质的程序库 Numarray 的特色,并加入了其它扩展而开发了 NumPy。NumPy 为开放源代码并且由许多协作者共同维护开发。NumPy 是一个运行速度非常快

2020-10-12 20:04:40 127

原创 java开发工程师学习日记(二)

1.hashmap与hashtable的区别?hashmap与hashtable的底层实现原理都是一样的,都是哈希表的实现原理。复习一下哈希表的实现原理:哈希表的存储类型为key-value的存储形式,采用key与value之间进行映射的数据结构。hashmap与hashtable之间的不同点:(1)Hashtable是早期提供的接口,HashMap是新版JDK提供的接口。(2)Hashtable继承Dictionary类,HashMap实现Map接口。(3)Hashtable线程安全,Hash

2020-10-12 19:44:17 20

原创 java开发工程师学习日记(一)

(1)java的int具有几个字节?int具有4个字节,一个字节具有8位,因此int类型具有32位的数据,最小值:Integer.MIN_VALUE= -2147483648 (-2的31次方,最大值:Integer.MAX_VALUE= 2147483647 (2的31次方-1)(2)java的面向对象的特性1.封装封装的定义:隐藏对象的属性及实现细节,仅对外公开访问接口,控制外部访问对外接口的访问权限,使对象内部数据及数据操作结合一个整体-类。封装的目的:增强对象的安全性及简化编程,访问者不

2020-10-11 19:51:09 25

原创 解决Warning: Using a password on the command line interface can be insecure.

在终端登录mysq数据库的时候进行报错:原因是在终端上输入密码不安全:相信你之前一定是这样输入的密码;mysql -u root -p your passwords这样登录真的不行,只要输入的是:mysql -u root -p在终端输入这样的指令终端会返回一个“Enter password”你会发现这个时候输入密码会进行星号的遮挡,输入正确的密码后成功登录Mysql数据库,并且不再爆出warning。登录流程类似服务器。...

2020-10-05 19:57:34 475

原创 使用spring boot框架开发后端应用进行测试,进行接口的访问

spring boot框架是用来进行快速开发的框架,使用java语言进行开发,spring boot具有以下的几个优点:1.创建独立的Spring应用程序2.嵌入的Tomcat,无需部署WAR文件3.简化Maven配置4.自动配置Spring5.提供生产就绪型功能,如指标,健康检查和外部配置6.开箱即用,没有代码生成,也无需XML配置首先使用spring boot 框架进行快速的开发一个后台应用:环境要求:IDEA2020.1.x64,spring boot 2.3,JAVA 8, JDK

2020-10-05 12:05:38 105

原创 科研必备:LaTeX论文排版软件的简介,安装与使用教程

现如今发论文已经成为各大高校以及研究所进行学术科研考核的。对于发表论文来说,除了idea以外,更多的是进行论文的排版,毕竟论文是要给别人看的,因此写作风格以及使用的排版软件进行排版尤为重要。LaTeX软件可以进行较快的论文格式排版,尤其是很多的高水平论文与会议的官网会发布论文的temple文件,其中包含论文规定的格式模板。LaTeX作用:LaTeX软件可以通过代码进行编程实现对写好的论文初稿,进行规定格式的布局以及字体,图片,标题等进行快速格式的排版与调试,将论文初稿进行编译成规定的格式。LaTeX软

2020-09-29 14:48:45 154

原创 机器学习会议论文(四)U-Net:用于生物医学图像分割的卷积网络

1.The address of paper:U-Net: Convolutional Networks for BiomedicalImage Segmentation论文地址:https://arxiv.org/pdf/1505.04597.pdf2.The introductionunet图像分割模型是用来进行医学图像分割的深度学习神经网络模型,unet神经网络模型是在FCN的全卷积网路模型的改进版本,图像分割与图像识别的区别比较大,图像分割是像素级别的分类,进行实例分割。即判断图像中的像素

2020-08-22 17:05:15 605

原创 基于勘智K210的人脸检测模型的部署与优化,LCD屏幕画分割检测线并显示FPS

本项目在sipeed推出的maixpy平台上实现的demo效果,使用了一些maixpy的源码,进行改进。那咱们闲言少叙,直接进入正题。人脸检测首先我们要选择yolo v2-tiny的模型,采集相应的数据进行数据集的制作,进行模型的训练,得到你的face.kmodel我在这里使用的是sipeed的官方人脸检测,附上模型的网址;https://github.com/sipeed/MaixPy_scripts/tree/master/machine_vision/models使用face.kfpkg 现

2020-08-21 22:30:56 461

原创 深度学习模型压缩部署(一)深度学习模型压缩部署简介

现如今深度学习的模型可以说的上是天花乱坠,各种新奇的模型可以说的上是千奇百怪,每年的顶会论文例如CVPR,ICCV,ECCV,ICML等机器学习的顶级会议,每年都会有很多新奇怪的模型,但是这些模型都不一定等落地了。何为落地?就是要把这些模型实实在在的用起来,投入到工业生产中去,但是工业部署的深度学习模型具有以下几个特点:(1)精度与准确率要求严格,尤其一些十分重要的场合,比如电力行业的电线识别与故障检测,所以工业级使用的模型一般就是十分成熟的模型。(2)速度快,最好达到实时检测的效果。因为工业部署的模

2020-08-19 01:24:51 141

原创 C++研发工程师学习笔记(二)

(一)C++语言基础:(1)c++中四种cast转换方式:C++中四种类型转换是:static_cast, dynamic_cast, const_cast, reinterpret_cast1、const_cast用于将const变量转为非const2、static_cast用于各种隐式转换,比如非const转const,void*转指针等,static_cast能用于多态向上转化,如果向下转能成功但是不安全,结果未知;3、dynamic_cast用于动态类型转换。只能用于含有虚函数的类,

2020-08-17 02:09:07 66

MATLAB实现基于直方图视频图像分割算法

直方图算法进行视频图像分割,将视频进行分成图像的单独图片,对每一张图片进行直方图分割算法,在合成视频,用于无人驾驶

2020-10-22

图像格式的转换(MATLAB编程实现代码)

将图像进行bmp格式转换为JPG格式的图片,使用MATLAB进行编程实现,代码十分简单,上手即可使用。

2020-10-23

卷积神经网络的mnist手写数字识别

手写数字识别的Tensorflow完整代码,### 1. MNIST机器学习入门 **1.1.1 简介** 下载MNIST数据集,并打印一些基本信息: ``` python download.py ``` **1.1.2 实验:将MNIST数据集保存为图片** ``` python save_pic.py ``` **1.1.3 图像标签的独热表示** 打印MNIST数据集中图片的标签: ``` python label.py ``` **1.2.1 Softmax 回归** ``` python softmax_regression.py ``` **1.2.2 两层卷积网络分类** ``` python convolutional.py ``` #### 可能出现的错误 下载数据集时可能出现网络问题,可以用下面两种方法中的一种解决:1. 使用合适的代理 2.在MNIST的官方网站上下载文件train-images-idx3-ubyte.gz、train-labels-idx1-ubyte.gz、t10k-images-idx3-ubyte.gz、t10k-labels-idx1-ubyte.gz,并将它们存储在MNIST_data/文件夹中。 #### 拓展阅读 - 本章介绍的MNIST 数据集经常被用来检验机器学习模型的性能,在它的官网(地址:http://yann.lecun.com/exdb/mnist/ )中,可以找到多达68 种模型在该数据集上的准确率数据,包括相应的论文出处。这些模型包括线性分类器、K 近邻方法、普通的神经网络、卷积神经网络等。 - 本章的两个MNIST 程序实际上来自于TensorFlow 官方的两个新手教程,地址为https://www.tensorflow.org/get_started/mnist/beginners 和 https://www.tensorflow.org/get_started/mnist/pros 。读者可以将本书的内容和官方的教程对照起来进行阅读。这两个新手教程的中文版地址为http://www.tensorfly.cn/tfdoc/tutorials/mnist_beginners.html 和http://www.tensorfly.cn/tfdoc/tutorials/mnist_pros.html。 - 本章简要介绍了TensorFlow 的tf.Tensor 类。tf.Tensor 类是TensorFlow的核心类,常用的占位符(tf.placeholder)、变量(tf.Variable)都可以看作特殊的Tensor。读者可以参阅https://www.tensorflow.org/programmers_guide/tensors 来更深入地学习它的原理。 - 常用tf.Variable 类来存储模型的参数, 读者可以参阅[https://www.tensorflow.org/programmers_guide/variables](https://www.tensorflow.org/programmers_guide/variables) 详细了解它的运行机制, 文档的中文版地址为http://www.tensorfly.cn/tfdoc/how_tos/ variables.html。 - 只有通过会话(Session)才能计算出tf.Tensor 的值。强烈建议读者 在学习完tf.Tensor 和tf.Variable 后,阅读https://www.tensorflow.org/programmers_guide/graphs 中的内容,该文档描述了TensorFlow 中 计算图和会话的基本运行原理,对理解TensorFlow 的底层原理有很 大帮助。

2020-03-20

空空如也

空空如也

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

TA关注的人 TA的粉丝

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