自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

lin

  • 博客(119)
  • 资源 (19)
  • 收藏
  • 关注

原创 SSD:运行你的第一个SSD模型进行目标检测

案例1:仅仅测试该案例适合于你只是想测试一下SSD,用几张自己的图测试,得到结果,不自己训练模型。代码1使用方法:本人环境:默认是装的ubuntu、安装了tensorflow-gpu、cuda、cudnn等环境、anacond3(py3.x)下载好代码后,进入./checkpoint文件夹,解压文件。unzip ssd_300_vgg.ckpt.zip打开终端,启动jupyte...

2019-03-27 16:42:42 2137 1

转载 基于深度学习的语义分割代码库

截至: 2018-04-16Awesome Semantic SegmentationNetworks by architectureSemantic segmentationU-Net [https://arxiv.org/pdf/1505.04597.pdf] https://github.com/zhixuhao/unet [Keras]https:...

2018-04-16 21:29:31 2988

转载 Python面试中的一些问题

Table of ContentsPython语言特性 1 Python的函数参数传递2 Python中的元类(metaclass)3 @staticmethod和@classmethod4 类变量和实例变量5 Python自省6 字典推导式7 Python中单下划线和双下划线8 字符串格式化:\x和.format9 迭代器和生成器10 *args and **kwa...

2018-03-02 19:55:30 1314

原创 2018测试岗位:面试问的问题

总结一些面试遇到的问题经历一:国内某半导体公司测试岗面试 1、循环输出一个数组 2、冒泡排序 3、局部变量、全局变量、静态局部变量 4、数组与链表的区别 5、结构体与联合体的区别(存储方式) 6、队列与栈的区别 7、简单的Linux指令。按时间排列查询 8、linux创建文件(指令) 9、如何到点执行任务(类似于定时执行) 10、进程与线程的区别 11、面向对象的特征:...

2018-03-02 14:32:51 6614 2

原创 Tensorflow 实现迁移学习的一个简单例子

Tensorflow 实现迁移学习实现效果: 运用Inception-V3的网络框架实现花的种类的图片分类。数据模型文件结构 -transfer_learning -flower_data //存放原始图片的文件夹,有5个子文件夹, 每个子文件夹的名称为一种花的名称 -daisy //daisy类花图片的文件夹 -dandel...

2018-02-18 13:54:03 8476 8

原创 Matlab将图片存为.mat文件

将图片存为.mat文件原因 :由于做深度学习相关研究的时候,需要将图片存为.mat作为网络的输入,故写了该程序。有时候我们会有将图片与标签存为一个.mat文件,做到一一对应的效果。例如做fcn分割的时候图片与mask。我们的做法是首先将img和mask加载到工作空间,然后用img=imread('000.jpg');mask = imread('000.jpg');save('m...

2018-02-09 15:42:46 22312 1

原创 U-net:运行你的第一个U-net进行图像分割

Unet进行图像分割注意:本文运行环境为:python3.5、tensorflow 1.4.0Unet进行图像分割数据准备程序准备运行网络测试结果如下参考数据准备原始数据:首先准备数据,参考数据来自于 ISBI 挑战的数据集。数据可以在 这里 下载到,含30张训练图、30张对应的标签。30张测试图片,均为.tif 格式文件。增强后的数据 :谷歌云盘...

2018-02-08 16:00:01 56985 323

原创 win10+vs 2013/vs2015+open CV 3.2/open CV 2.4.13配置

注意:一定要按照写的步骤一步一步来,结果肯定可以配置成功。方法一为一次性配置,每次写程序都会自动加载opencv库;方法二为每次需要手动添加加载opencv库,可以根据自己需要来选择适合自己的方法。方法一:win10+VS2015+OpenCV 3.2.0配置环境变量:打开我的电脑选择->该机系统环境设置 --->(系统变量)环境变量的变量值为: (…安装目

2018-01-21 12:34:10 1316

原创 python sort多条件排序

单条件 sort / sorted1、常规不多讲,a.sort() 在a原地排序,排序后a顺序改变, sorted(a)返回排序后的序列,a本身顺序不改变。可选为reverse, True标识倒序,默认False, 从小到大排列。a = [3, 2, 5, 1]b = sorted(a)# b= [1, 2, 3, 5]# a = [3, 2, 5, 1]c = [3, 2, 5, 1]c.sort()# c = [1, 2, 3, 5]2、带lambda表达式的sort或者so

2021-05-22 14:59:46 8668 3

原创 c++ using用法

三种情况:命名空间在子类中引用基类成员别名指定命名空间:using namesapce std;#...#...在子类中引用基类成员#include<string>#include<iostream>using namespace std;class My{public: My() {}; void fun() { std::cout << "my::fun()" << std::endl; }; void fun(

2021-01-10 16:08:58 350

原创 在python中使用GRPC进行通信

在python中使用GRPC进行通信步骤:1、装依赖2、写proto文件3、生成代码4、写server、client1、装依赖pip install grpciopip install protobufpip install grpcio-tools2、写proto//demo.protosyntax = "proto3";package demo;service Demo { rpc demo_func (demo_request) returns (demo_

2020-12-11 23:54:00 804

原创 搭建自己的harbor(docker托管)

harbor:用于托管docker镜像,如git托管代码一样。安装docker && docker-compose# installyum install docker# run dockersystemctl start docker#install docker-composecurl -L https://github.com/docker/compose/releases/download/1.13.0/docker-compose-`uname -s`-`uname

2020-11-29 23:45:06 345

原创 搭建自己的TFS(分布式文件系统)

搭建自己的TFS(Taobao FileSystem)分布式文件系统:下载:可选版本:TFS 2018或者2019版:Azure DevOps Server 2020 安装:下载了iso文件后,双击安装,基本是下一步下一步就好了。其中会设置一些密码等用于后期登录。最后,安装结束后,可通过Chrome访问:http://tfsserver:8080/tfs如下所示,就可以开始使用了。参考:链接1链接2...

2020-11-29 23:11:17 866

原创 搭建自己的pypi server

目的: 搭建自己的pypi server安装:pip install pypiserver创建packages包文件夹window下默认在:C:\Users\youname\packages启动server:pypi-server特殊需求改为非8080端口启动:例如改为8081pypi-server -p 8081修改包的存放位置:例如放到D:/packagespypi-server -P D:/packages本地找不到时候,设置一个请求转发:例如本地没有就去清华源找py

2020-11-29 22:16:00 593

原创 Mysql实现自动升级

文章目录一、mysql表设计二、mysql orm生成三、修改orm四、mysql orm刷回数据库五、参考背景: 建立一个数据库mydb, 含有一个表employee, employee_single通过id外键关联,实现删除employee记录关联删除employee_single对应的记录。然后实现修改orm后可以自动将表修改部分刷回数据库。一、mysql表设计建库:CREATE DATABASE mydb;建表:employee 、employee_singleCREATE TABL

2020-11-29 18:43:54 642 1

原创 用队列进行多线程通信

在线程中,传入队列名,然后不听从队列里面取消息,也可以王队列里面放消息。通常一个线程放,一个线程取。代码如下:一个生产者向两个队列丢消息,两个消费者各一个队列,取各自队列的消息。当取到特定消息时候,退出该线程。# coding=utf8import timefrom queue import Queuefrom threading import Thread_terminal = object()def producer(out_q, out_q2): n = 3 w

2020-08-15 15:43:03 502

原创 Leecode101_isSymmetric

Leecode 101给定一个二叉树,检查它是否是镜像对称的。方法一:递归判断,类似于判断两个树是否相等,不过这次左右树交叉判断。代码: bool Check(TreeNode* p, TreeNode* q) { if (!p && !q) return true; if (!p || !q) return false; return p->val == q->val && Check(p->left, q->right) &a

2020-08-03 21:25:13 156

原创 Leecode42_trap

思路:为了减少遍历次数,采用左右向中间走的方式,同时维护一个左侧的最大值和右侧的最大值,当前值和最大值的差值则为当前块增加的水量。int Leecode42_trap(std::vector<int>& height) { int left = 0, right = height.size() - 1; int ans = 0,left_max = 0, right_max = 0; while (left < right) { if (height[left] &l

2020-08-03 21:24:42 120

原创 Leecode12_intToRoman

题目:给定一个数字,将其转为罗马文字思路:直接贪心法,先从最大的M开始,如果num比1000大,那么则除以他后再比,如果除后不大于当前标识符,则除以第二大的900,依次下去,直到除到个位 I。类似于找去商店买东西找零。代码:std::string Leecode12_intToRoman(int num) { int values[] = { 1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1 }; std::string symbols[]

2020-08-03 21:24:10 119

原创 Leecode45_jump

题目:给定数组,数组值为可以向前进得最大次数,求跳到最后一个位置的最少步数。建设数组不含0.思路:由于存的值是当前可跳的最远的步数,那么肯定尽量跳得远咯。从头开始,维护一个上次可以跳得最远位置,和当前的可跳的最远的位置,取大的。代码:int Leecode45_jump(std::vector<int>& nums) { int maxPos = 0, end = 0, step = 0; for (int i = 0; i < nums.size() - 1; ++

2020-08-03 21:23:54 142

原创 Leecode415_addString

Leecode 415代码:std::string Leecode415_addString(std::string num1, std::string num2) { int len1 = num1.size() - 1; int len2 = num2.size() - 1; int car = 0; std::string result = ""; while (car == 1 || len1 >= 0 || len2 >= 0) { int x = len1 >

2020-07-15 22:42:05 128

原创 小白鼠喝药问题

题目:大概是这样:有100瓶水,其中只有一瓶含有毒药,小白鼠喝下毒药水后会在1小时内死亡,那么如何用最少数量的小白鼠在1小时内找出这瓶毒药水?1、常规思路假设有n只小白鼠可用于试毒,编号1~n,那么运用排列组合,根据小白鼠的生存状态判断,我们做出如下尝试:1只小白鼠,只能测试其中1瓶水是否含毒,即 21−12^{1}-121−1瓶;2只小白鼠,分别先测试其中的2瓶水,再同时测试第3瓶水,最多可测试22−12^{2}-122−1瓶;3只小白鼠,分别先测试其中的3瓶水,再两两结合分别测试其他的3瓶水

2020-07-15 22:22:23 2383 1

原创 消除相邻字符

字符串消消乐?给定一个字符串,删除相邻两个相同的字符。例如:给定: “abbabc”输出:“bc"思路:1、乍一看,是不是应该挨个便利,每次遍历消去原始就两两相邻的,在第二遍来消除剩下的,直到没有相同的,咋直到消除完了?直接看某一次长度不在变化,可能来个flag 辅助判断。会遍历几次?两两相消,那么最多字符串的一半那么多次。2、想一想,其实遍历那么多次是不是不需要的,每次找到相邻的以后,直接消除,消除后下一个和之前没有消除的比较,看相同不,直到到达字符串结尾。刚好栈就可以完成这一任务注意点:

2020-07-14 21:12:22 1460

原创 删除单链表指定元素

题目:给定单链表,删除链表中指定等于指定元素的节点。代码:/** * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ListNode* removeElements(ListNode* head, int target) { if (head != NULL && head->val == ta

2020-07-14 17:53:50 6415 5

原创 Leecode49_groupAnagrams

Leecode49思路:对每个元素排序,然后用map来存储,用元素做键,同样字母的组成的字符串的列表做值。最后按值返回列表代码:class Solution { public List<List<String>> Leecode49_groupAnagrams(String[] strs) { if (strs.length == 0) return new ArrayList(); Map<String, List> ans = new Ha

2020-07-09 23:29:46 179

原创 Leecode43_multiply

Leecode 43思路:三个数组,从右往左相加,最后处理最高位有进位情况。代码:std::string Leecode43_multiply(std::string num1, std::string num2) { std::string ans; std::vector<int> a, b, c; c.resize(num1.size() + num2.size() - 1); for (int i = num1.size() - 1; i >= 0; i--) a.

2020-07-08 23:32:54 155

原创 Leecode36_isValidSudoku

Leecode 36思路:最简单暴力方法,三次便利,按行,按列,按小块。另外一种方法,一次便利,用三个hash表记录分别记录行、列、块。然后看如果出现的次数多于一次,那么返回false。代码://貌似有点问题bool Leecode36_isValidSudoku(std::vector<std::vector<char>>& board) { std::vector<std::map<int, int>> rows; std::vecto

2020-07-07 23:34:51 979

原创 Leecode46_permute

Leecode 46思路:全排列,一般会用回溯法代码:class Leecode46 { std::vector<std::vector<int>>Leecode46_permute(std::vector<int>& nums) { std::vector<std::vector<int>> res; backtrack(res, nums, 0, nums.size()); return res; } void

2020-07-06 23:31:38 991

原创 Leecode34_searchRange

Leecode 34思路:还是二分查找,查找的不只是目标对象。第一次二分查找早左边界,第二次查找右边界。代码:class Leecode34 { std::vector<int> Leecode34_searchRange(std::vector<int>& nums, int target) { std::vector<int> no_find = { -1,-1 }; int left_index = extreamIndex(nums, t

2020-07-05 16:42:04 2701

原创 Leecode33_search

Leecode 33思路:由于复杂度限制,故不能直接遍历查找,也不能直接用std::find,因为二者是线性查找。有序,就用二分查找。旋转一半,那么肯定有一半是有序的,另外一半可能混合的,那么就看目标是在有序的那一边还是无序的那一边。不停折半,多几次二分查找就可以了。代码:int Leecode33_search(vector<int>& nums, int target) { int n = (int)nums.size(); if (!n)

2020-07-05 16:00:06 2663

原创 Leecode31_nextPermutation

Leecode 31思想:直接排列复杂度太高。当前排列的下一个序列,就是序列从后往前,达到非降序的哪一个数,与在后一个序列中比当前数大一点的数,换了位置,然后讲最后的原来降序排列就好了。即从下面图中,a[i-1]和a[j]换,然后从a[i]到结尾重新排序(降序)代码:void Leecode31_nextPermutation(std::vector<int>& nums) { int i = nums.size() - 2; while (i >= 0 &&

2020-07-05 14:40:38 2539

原创 Leecode24_swapPairs

代码:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* Leecode24_swapPairs(ListNode* head) { if (head ==

2020-07-04 20:22:20 3262

原创 Leecode22_generateParenthesis

Leecode 22:代码:class Leecode22 { std::vector<std::string> result; std::vector<std::string> Leecode22_generateParenthesis(int n) { dfs(n, n, ""); return result; } void dfs(int left, int right, std::string curStr) { if (left == 0 &

2020-07-04 20:07:24 3029

原创 Leecode18_fourSum

Leecode 18思路:两数之和用双指针,三数之和,固定第一个,再用双指针,四数之和再三数之和上多家一层循环就好了,另外注意同一个位置得前后两个数字不要重复。代码:std::vector<std::vector<int>> Leecode18_fourSum(std::vector<int>& nums, int target){ sort(nums.begin(), nums.end()); std::vector<std::vector&l

2020-07-04 18:21:24 3391

原创 Leecode16_threeSumClosest

Leecode 16思路:固定一个,再运用双指针。先固定第一个,然后运用双指针,一个变量记录最小差值,一个记录三个最近值得和,如果差值为0直接返回,否者返回最近得值。代码:int Leecode16_threeSumClosest(std::vector<int>& nums, int target) { int result = INT_MAX; int last_closet = INT_MAX; int len = nums.size(); if (len <

2020-07-04 17:14:25 3912

原创 Leecode15_threeSum

Leecode15思路:首先对数组进行排序,排序后固定一个数 nums[i],再使用左右指针指向 nums[i]后面的两端,数字分别为 nums[L] 和 nums[R],计算三个数的和 sum 判断是否满足为 0,满足则添加进结果集。如果 nums[i]大于 0,则三数之和必然无法等于 0,结束循环如果 nums[i]= nums[i-1],则说明该数字重复,会导致结果重复,所以应该跳过当 sum = 0 时,nums[L]= nums[L+1] 则会导致结果重复,应该跳过,L++当 sum

2020-07-04 15:05:23 4172

原创 Leecode11_maxArea

Leecode 11思路:毫无疑问,盆子越宽装的越多,那么从两边向中间靠,谁短谁移动,直到相遇。代码int Leecode11_maxArea(std::vector<int>& height) { int max_area = 0; for (int i = 0, j = height.size() - 1; i <= j;) { int current_area = (j - i) * std::min(height[j], height[i]); max_a

2020-07-04 14:00:44 3906

原创 Leecode8_myAtoi

Leecode8代码:如下,很简单,一看就明白的。int Leecode8_myAtoi(std::string str) { int res= 0; int i = 0; int flag = 0; while (str[i] == ' ') i++; if (str[i] == '-') flag = -1; if (str[i] == '+' || str[i] == '-') i++; while (i < str.size() && isdigi

2020-07-04 11:31:45 4275

原创 Leecode5_longestPalindrome

Leecode 5最长回文串方法一:动态规划法,对于一个子串而言,如果它是回文串,并且长度大于 22,那么将它首尾的两个字母去除之后,它仍然是个回文串。例如对于字符串 "ababa’’ 如果我们已经知道 `bab’'是回文串,那么ababa一定是回文串,这是因为它的首尾两个字母都是 “a”。边界条件就是i=j的时候,肯定是回文串,如果为2,当两个字符相同时候也为回文串。代码std::string Leecode5_longestPalindrome(std::string s) { int n

2020-06-11 23:36:26 120

原创 Leecode3_lengthOfLongestSubString

Leecode 3给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。方法一:SET最长子串,就需要直到开始和结束,开始用一个字符表示,另外一个一直吵右走,直到遇到重复的串。重复的串采用unordered_set来保证,如果再set里面找到了,那么就移动左侧开始位置。同时查找当前的串长度和最大长度谁大,更新最大长度。代码:int Leecode3_2_lengthOfLongestSubString(std::string s) { if (s.size() == 0) return

2020-06-08 23:46:57 175

dipum_toolbox

dipum_toolbox。数字图像处理的Matlab实现代码,工具箱,.m文件

2018-03-04

dipum_toolbox_2.0.2

冈萨雷斯一书的程序集,及dipum工具箱代码,数字图像处理的Matlab实现的,.p文件

2018-03-04

Springer 计算机论文模板

Springer 论文投递的word2003模板,具体使用方法在压缩包里面

2018-02-26

Deep learning with python english edition

一本python深度学习新著作,对于从事数据挖掘、深度学习的人来讲是一本不可多得的书!

2018-02-07

数字图像处理,冈萨雷斯,第二版,中文版

冈萨雷斯、数字图像处理第二版,经典的图像处理教材。值得一看。

2018-02-07

Deep Learning with Python 2017

Deep Learning with Python 2017 非常好的学习用书,推荐

2017-12-23

Python计算机视觉编程(pdf+azw3)

Python计算机视觉编程,包内含PDF版本和azw3版本,适合不同人的需求

2017-11-14

OpenCV with Python Blueprints

OpenCV with Python Blueprints,英文版电子书。适合学习opencv python

2017-11-14

OpenCV With Python by Example

Build real-world computer vision applications and develop cool demos using OpenCV for Python, About This Book, Learn how to apply complex visual effects to images using geometric transformations and image filtersExtract features from an image and use them to develop advanced applicationsBuild algorithms to help you understand the image content and perform visual searches, Who This Book Is For, This book is intended for Python developers who are new to OpenCV and want to develop computer vision applications with OpenCV-Python. This book is also useful for generic software developers who want to deploy computer vision applications on the cloud. It would be helpful to have some familiarity with basic mathematical concepts such as vectors, matrices, and so on., What You Will Learn, Apply geometric transformations to images, perform image filtering, and convert an image into a cartoon-like imageDetect and track various body parts such as the face, nose, eyes, ears, and mouthStitch multiple images of a scene together to create a panoramic imageMake an object disappear from an imageIdentify different shapes, segment an image, and track an object in a live videoRecognize an object in an image and build a visual search engineReconstruct a 3D map from imagesBuild an augmented reality application, In Detail, Computer vision is found everywhere in modern technology. OpenCV for Python enables us to run computer vision algorithms in real time. With the advent of powerful machines, we are getting more processing power to work with. Using this technology, we can seamlessly integrate our computer vision applications into the cloud. Web developers can develop complex applications without having to reinvent the wheel., This book will walk you through all the building blocks needed to build amazing computer vision applications with ease. We start off with applying geometric transformations to images. We then discuss affine and projective transformations and see how we can use them to apply cool geometric effects to photos. We will then cover techniques used for object recognition, 3D reconstruction, stereo imaging, and other computer vision applications., This book will also provide clear examples written in Python to build OpenCV applications. The book starts off with simple beginner's level tasks such as basic processing and handling images, image mapping, and detecting images. It also covers popular OpenCV libraries with the help of examples., The book is a practical tutorial that covers various examples at different levels, teaching you about the different functions of OpenCV and their actual implementation., Style and approach, This is a conversational-style book filled with hands-on examples that are really easy to understand. Each topic is explained very clearly and is followed by a programmatic implementation so that the concept is solidified. Each topic contributes to something bigger in the following chapters, which helps you understand how to piece things together to build something big and complex.

2017-11-14

Tensorflow 实战Google深度学习框架

Tensorflow 实战Google深度学习框架,文档为扫描版,仅供学习,请购买正版

2017-11-14

图片中提取红色区域

一个简单的提取图片里面红色区域的实例代码,程序为puthon2.X +opencv 2.X.

2017-11-14

MNIST测试程序代码

几个手写数字程序实现的程序,注意,本文件需要用jupyter notebook 打开,用python 写的,包含4个程序:无隐层实现、单隐层、双隐层、卷积实现。

2017-11-14

python核心编程(第二、三版)

python核心编程(第二、三版),分别对应于python2.X和python3.X。可以对照起来看。

2017-11-14

机器学习实战,中文+英文pdf+code

机器学习实战,中文+英文pdf+code,一次性下载,中英文对照看。

2017-11-10

Python数据分析与挖掘实战(pdf+code)

Python数据分析与挖掘实战,压缩包里面包含文档pdf与文档配套的代码

2017-11-10

OpenCV 3计算机视觉:Python语言实现

OpenCV 3计算机视觉:Python语言实现,代码+pdf文档,适合于计算机视觉研究者

2017-11-09

Python数据分析基础教程:NumPy学习指南(第2版)代码+书籍pdf

Python数据分析基础教程:NumPy学习指南(第2版),包含文档pdf和文内的配套代码,后续更新可以在github上获得

2017-11-09

莫烦python,tensorflow

本文的内容为视频莫烦python的配套代码,视频可以在优酷或者youtube上观看,视屏是短视频,每个视频10分钟以内,很好的初学者材料。还有tensorflow示例

2017-11-09

空空如也

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

TA关注的人

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