自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Elag的专栏

坚其志,苦其心,劳其力,事无大小,必有所成

  • 博客(60)
  • 资源 (7)
  • 收藏
  • 关注

原创 opencv python 轮廓特征/凸包/外接矩形/外接圆/拟合矩形/拟合直线/拟合圆

1.图像的矩cv2.moments()图像的矩可以帮助计算物体的某些特征,如对象的质心,对象的区域等.import cv2import numpy as npimg = cv2.imread('img7.png',0)ret,thresh = cv2.threshold(img,127,255,0)im2,contours,hierarchy = cv2.findContours(...

2018-12-25 17:44:31 5596

转载 OpenCV笔记大集锦

1:OpenCV学习笔记 作者:CSDN 数量:55篇博文 网址:http://blog.csdn.net/column/details/opencv-manual.html2:部分OpenCV的函数解读和原理解读 作者:梦想腾飞 数量:20篇博文 网址:http://blog.csdn.net/xidianzhimeng/article/category/15938593: ...

2018-08-08 13:49:11 329

原创 linux 编译安装TRMPdump(libRTMP)

需要编译libRTMP,首先需要安装配置编译环境。网上能够找到的资料多是在Windows环境编译。这里介绍一下在Linux系统中编译安装libRTMP,一来给后来者一个参考,二来也给自己做一个备忘录。 编译libRTMP之前,需要安装下面三个软件:openssl , zlib, libssl-dev(一)openssl安装这里需要特别的注意:openssl 版本不能太高,太高有些接口...

2018-07-30 12:24:11 1829

原创 Shell脚本8种字符串截取方法总结

主要是用 #和% 进行截取,#从左边开始截取,%从右边开始截取 假设有变量 var=http://www.aaa.com/123.htm.1.# 号截取,删除左边字符,保留右边字符,匹配第一个。 echo ${var#*//},其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个//号及左边的所有字符,即删除http://,结果是 :www.aaa.com/123.ht...

2018-06-21 10:57:18 1277

转载 52个有用的机器学习和预测API

面部和图像识别1.Animetrics Face Recognition:该 API 能用来检测图片上的人物面部,并且将其和已知的面部特征进行比对。该 API 还能在可搜索的图库中添加或移除搜索主题,也可以在某个主题中添加或删除某张脸。链接:http://api.animetrics.com2.Betaface:一个面部识别和检测的网页服务。提供了包括多面部识别、面部遮蔽、123 个面...

2018-06-12 13:33:10 1138

转载 OpenCV 形态学转换

综述OpenCV中的形态学转换操作有七种:腐蚀,膨胀,开运算,闭运算,形态学梯度,礼帽,黑帽。API参照表 中文名 英文名 api 原理 个人理解 腐蚀 erode erosion = cv2.erode(src=girl_pic, kernel=kernel) 在窗中,只要含有0,则窗内全变为0,可以去浅色噪点 浅色成分被腐蚀 ...

2018-06-11 12:59:36 331

原创 做人,良心排第一

人,丑不怕,穷不怕, 最怕又丑又穷还奸诈, 人丑,心善,是美德, 人穷,努力,会发财, 人一旦奸诈了, 就没有什么大出息。人活着, 钱不是第一,名不是第一, 良心是第一。 有良心的人,堂堂正正做人; 有良心的人,正正经经做事。最怕良心变黑, 为了钱,坑蒙拐骗, 为了利,勾心斗角, 把朋友卖,把家人弃, 最后, 落得独自一人,万人嫌弃。做人,一旦丢了良心, ...

2018-06-07 13:20:39 757 1

原创 OpenCV VideoCapture.get()参数详解

param define cv2.VideoCapture.get(0) 视频文件的当前位置(播放)以毫秒为单位 cv2.VideoCapture.get(1) 基于以0开始的被捕获或解码的帧索引 cv2.VideoCapture.get(2) 视频文件的相对位置(播放):0=电影开始,1=影片的结尾。 cv2.VideoCapture....

2018-06-07 09:45:57 32238 3

原创 gif动态图合成

import imageiodef create_gif(image_list, gif_name): frames = [] for image_name in image_list: frames.append(imageio.imread(image_name)) # Save them as frames into a gif ...

2018-06-06 13:19:47 178810

原创 OpenCV 视频植入广告

import cv2import osimport random# 广告列表video_dir = 'C:\\Elag\\video\\'video_list = os.listdir(video_dir)random.shuffle(video_list)video_capture = cv2.VideoCapture('C:\\Users\\user\\PycharmProjec...

2018-06-05 16:24:56 814 5

原创 Python 下载文件

import urllib.requesturllib.request.urlretrieve('http://...hxbl.rar','hxbl.rar')

2018-05-31 15:19:04 1869

原创 OpenCV-切割视频

import cv2video_capture = cv2.VideoCapture('C:\\Users\\user\\Desktop\\Bing_S01E60_Wellies.mp4') # 读入视频文件c = 10fps = video_capture.get(5)print(video_capture.isOpened())print("fps", video_capture...

2018-05-31 13:39:24 7830

原创 ICDAR2015标注转换成PASCAL VOC格式

在图像标注的数据集中,有些格式是x1,y1,x2,y2,x3,y3,x4,y4 label这种格式的,但在转成tfrecord的时候都是PASCAL VOC格式,因此需要转一下#!/usr/bin/env python# coding:utf-8from lxml.etree import Element, SubElement, tostringfrom xml.dom.minid...

2018-05-29 14:18:20 1606 2

原创 Tensorflow-API :tf.cond

tf.cond()是一个条件函数,根据条件返回的True或False 返回相应的结果 第一个参数是条件 bool 类型,第2个和第3个参数是返回的值,如果条件是True 返回第二个参数,如果条件是False 则返回第三个参数import tensorflow as tfa = tf.constant(2)b = tf.constant(3)x = tf.constant(4)y =...

2018-05-24 10:22:10 399

原创 Tensorflow-API :tf.stack()和tf.unstack()

tf.stack():矩阵拼接tf.unstack():矩阵分解import tensorflow as tfa = tf.reshape(tf.range(0, 12), [3, 4])b = tf.reshape(tf.range(100, 112), [3, 4])# 按第0维拼接stack0 = tf.stack([a, b], axis=0)# 按第1维拼接...

2018-05-24 06:37:06 525

原创 Tensorflow-API :tf.where

返回输入矩阵中true的索引位置,x和y必须同时有(维度必须相同)或没有import tensorflow as tfwhere = tf.where([True,False,True,False,True,True])where1 = tf.where([True,False,True,False,True,True],x=[1.,0.2,0.5,0.,2.,3.],y=[1,2,3,...

2018-05-23 16:36:37 366

原创 Tensorflow-API :比较函数

比较两个数,返回一个 bool 类型的张量import tensorflow as tf#判断每一个数是否大于0.5greater = tf.greater([1.,0.2,0.5,0.,2.,3.], 0.5)#判断每一个数是否小于0.5less = tf.less([1.,0.2,0.5,0.,2.,3.], 0.5)#判断每一个数是否大于等于0.5greater_equal=...

2018-05-23 16:22:43 6678

原创 Tensorflow-API : tf.gather

tf.gather 根据索引从参数轴上收集切片,索引必须是任何维度的整数张量 (通常为 0-D 或 1-D)import tensorflow as tft1 = tf.reshape(tf.range(0,16),[2,2,4])# [[[ 0 1 2 3]# [ 4 5 6 7]]## [[ 8 9 10 11]# [12 13 14 15]...

2018-05-23 16:05:26 351

原创 tensorflow-自定义op

在处理数据时需要自定义处理方法,这时就可以使用tf.py_func(func, inp, Tout, stateful=True, name=None)来进行处理具体例子import tensorflow as tfimport cv2import numpy as npdef forward_convert(coordinate, with_label=True): ...

2018-05-23 15:29:24 715

原创 tensorflow-tfrecord

在深度学习训练中,如果训练数据较小可以使用feed_dict 方式喂数据,但如果数据量较大,一般采用tensorflow 自己的数据格式tfrecord,一个是避免内存不足以存储所有训练数据,另一个是对数据的读取进行提速,因为tfrecord格式的数据读取时异步的。下面用PASCAL VOC数据集格式进行转换# -*- coding: utf-8 -*-from __future__ i...

2018-05-23 15:17:01 619 6

原创 OpenCV-坐标转换

在目标检测中,图像标注一般是4个顶点坐标或者是bbox的中心坐标、宽高和旋转角度,在特定的处理函数中会用到不同的标注方法,这时就需要对坐标进行转换,具体方法如下# -*- coding: utf-8 -*-from __future__ import absolute_importfrom __future__ import divisionfrom __future__ impo...

2018-05-23 14:59:04 5123

原创 tensorflow-Tensorboard

Tensorboard 是 Tensorflow 官方推出的可视化工具,他可以将模型训练过程中的各种汇总数据展示出来,如标量(Scalars)、图片(image)、音频(Audio)、计算图(Graph)、数据分布(Distributions)、直方图(Histograms)和嵌入向量(Embeddings)。我们在使用TensorFlow训练大型深度学习神经网络时,中间的计算过程可能非常复杂...

2018-05-23 13:37:04 949

原创 tensorflow-保存和恢复变量

保存import tensorflow as tf# Create some variables.v1 = tf.get_variable("v1", shape=[3], initializer = tf.zeros_initializer)v2 = tf.get_variable("v2", shape=[5], initializer = tf.zeros_initializer)...

2018-05-23 10:37:10 482

原创 tensorflow-命令行参数

from tensorflow import appfrom tensorflow.python.platform import flagsFLAGS = flags.FLAGS# yapf: disableflags.DEFINE_integer('task', 0, 'The Task ID. This value is used whe...

2018-05-23 10:25:16 686

原创 从RCNN到Faster RCNN

R-CNN (Region-based CNN features)性能:RCNN在VOC2007上的mAP是58%左右。简述:R-CNN要完成目标定位,其流程主要分为四步:1.输入图像2.利用选择性搜索(Selective Search)这样的区域生成算法提取Region Proposal 提案区域(2000个左右)3.将每个Region Proposal分别resize(因为训...

2018-05-23 09:03:13 1335

原创 OpenCV-扩充图像的边界

import cv2import matplotlib.pyplot as pltimg = cv2.imread('C:\\Elag\\data\\kaggle\\landmark-recognition-challenge\\data\\test\\00b8b0b4a977c786.jpg')# 填充固定像素值img1 = cv2.copyMakeBorder(img,50,50,...

2018-05-21 16:01:37 13540

原创 世界上最棒的10种思维

思维以感知为基础又超越感知的界限。它探索与发现事物的内部本质联系和规律性,是认识过程的高级阶段。上帝思维“关爱别人,受益自己。”上帝说,天堂里的居民,凡事都是这么想的,世人要是拥有爱的思维,那他无论身处何方,都是活在天堂里。司马光思维打破,才能得生机。这,就是司马光思维的精髓所在:只有打破旧思维的桎梏,思路才会见光明。孙子思维孙子曰:“知已知彼,百战不殆。”这句...

2018-05-18 11:56:21 190

原创 Vim命令合集

命令历史以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。启动vim在命令行窗口中输入以下命令即可vim 直接启动vim vim filename 打开vim并创建名为filename的文件文件命令打开单个文件vim file同时打开多个文件vim file1 file2 file3 ...在vim窗口中打开一个新文件...

2018-05-16 20:08:45 119

原创 No module named yaml

pip install PyYAML

2018-05-16 16:20:45 16146 3

原创 如何倒出2两酒(5)

据说有人给酒肆的老板娘出了一个难题:此人明明知道店里只有两个舀酒的勺子,分别能舀7两和11两酒,却硬要老板娘卖给他2两酒。聪明的老板娘毫不含糊,用这两个勺子在酒缸里舀酒,并倒来倒去,居然量出了2两酒,聪明的你能做到吗?为什么多了一块(4) 题目以及答案 今日题目:这是一道马云在一次面试中的题目,当时只有一个人答对了。题目如下图所示,看看你的推算能力如何! 为什么??? 答案:...

2018-05-15 11:06:05 388

原创 object-detection

awesome-object-detectionAwesome Object Detection based on handong1587 github(https://handong1587.github.io/deep_learning/2015/10/09/object-detection.html,https://github.com/amusi/awesome-object-dete...

2018-05-14 11:55:19 1465

原创 ROI Pooling原理及实现

目标检测architecture通常可以分为两个阶段: (1)region proposal:给定一张输入image找出objects可能存在的所有位置。这一阶段的输出应该是一系列object可能位置的bounding box。这些通常称之为region proposals或者 regions of interest(ROI),在这一过程中用到的方法是基于滑窗的方式和selective sear...

2018-05-11 11:54:09 73588 40

原创 Selective Search原理及实现

在目标检测时,为了定位到目标的具体位置,通常会把图像分成许多子块,然后把子块作为输入,送到目标识别的模型中。分子块的最直接方法叫滑动窗口法。滑动窗口的方法就是按照子块的大小在整幅图像上穷举所有子图像块。这种方法产生的数据量想想都头大。和滑动窗口法相对的是另外一类基于区域(region proposal)的方法。selective search就是其中之一!首先通过简单的区域划分算法,将图片划分...

2018-05-11 10:12:16 32245 3

原创 你只负责好好做人,上天自有安排

生活总会给你答案一个旅行者,在一条大河旁看到了一个婆婆,正在为渡水而发愁。已经精疲力竭的他,用尽浑身的气力,帮婆婆渡过了河,结果,过河之后,婆婆什么也没说,就匆匆走了。旅行者很懊悔。他觉得,似乎很不值得耗尽气力去帮助婆婆,因为他连“谢谢”两个字都没有得到。哪知道,几小时后,就在他累得寸步难行的时候,一个年轻人追上了他。年轻人说,谢谢你帮了我的祖母,祖母嘱咐我带些东西来,说你用得着。...

2018-05-11 08:44:15 485

原创 linux 查看某个文件或目录占用磁盘空间的大小

du查看某个文件或目录占用磁盘空间的大小常用参数-h:以人类可读的方式显示   -s:显示目录占用的磁盘空间大小,不要显示其下子目录和文件占用的磁盘空间大小 -c:显示几个目录或文件占用的磁盘空间大小,还要统计它们的总和   –apparent-size:显示目录或文件自身的大小   -l:统计硬链接占用磁盘空间的大小   du -ah –max-depth=1 显示目录下...

2018-05-10 17:14:12 3354

原创 为什么多了一块(4)

假如每3个空啤酒瓶可以换一瓶啤酒,某人买了10瓶啤酒,那么他最多可以喝到多少瓶啤酒? 答案: 1.如果能借酒瓶的话:15 喝完10瓶后用9个空瓶换来3瓶啤酒(喝完后有4个空瓶)喝完这三瓶又可以换到1瓶啤酒(喝完后有2个空瓶),这时他有2个空酒瓶,如果他能向老板先借一个空酒瓶,就凑够了3个空瓶可以换到一瓶啤酒,把这瓶喝完后将空瓶还给老板就可以了。所以他最多可以喝10+3+1+1=15瓶。 2...

2018-05-10 13:04:16 165

原创 最多能喝多少啤酒(3)

题目: 这是一道“美国FBI特别刑事组”招聘的测试题。这个组是专门对付那些穷凶极恶的凶残变态罪犯的——那些人间极品人渣!这需要执法者不仅具有超常的逻辑力,还需要具有比他们更变态,更超常的想象力,才能了解他们的思维和行为模式,以及对付他们。今天偶尔上网一搜,发现已经被流传到网上了。但,那些答案,没有一个是对的。据说,正常人群,能回答对这道题的几率,只有万分之一。来测试一下,看看你够不够“逻辑力”,...

2018-05-10 13:02:29 302

原创 10人电梯(2)

答案:先打开第一个开关,开一会再关上,然后打开第二个开关进入房间再摸一下每个灯,发热的那盏是第一个开关的,亮的那盏是第二个开关的,没变化的那盏是第三个开关的 。剑指offer—10人电梯(2) 这是一道“美国FBI特别刑事组”招聘的测试题。这个组是专门对付那些穷凶极恶的凶残变态罪犯的——那些人间极品人渣!这需要执法者不仅具有超常的逻辑力,还需要具有比他们更变态,更超常的想象力,才能了解他...

2018-05-10 12:37:29 571

原创 灯管问题(1)

在房里有三盏灯,房外有三个开关,在房外看不见房内的情况,你只能进门一次,你用什么方法来区分那个开关控制那一盏灯?. . . . . . . . . . . . . . . . . . . . . . . . . . . . .答案:先打开第一个开关,开一会再关上,然后打开第二个开关进入房间再摸一下每个灯,发热的那盏是第一个开关的,亮的...

2018-05-10 12:34:10 401

原创 一个人不成熟,有三大表现

多说话多说话,这是人最大的不成熟。多说话的人,总在不知不觉中伤害到别人,而自己浑然不知。还总为自己的夸夸其谈感觉良好。墨子的弟子问墨子,老师,多说话好吗?墨子告诉徒弟,你看那蛤蟆,整天呱呱乱叫,不仅没什么用,反而还惹人厌烦。而雄鸡,只在破晓时刻准时啼叫,让所有生物知道天亮了。可见,说话要讲究时机和分寸。有些话,只能在合适的场合说,否则就会得罪人。古人把说出的话比作射出去的箭...

2018-05-10 08:51:32 4079 2

numpy-ref-1.14.2

NumPy系统是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix))

2018-05-11

Json 格式化工具

jsonview是chrome浏览器的一个插件,用来在浏览器中查看json数据。比如你在浏览器中可以查看从服务器端传回来的json数据,这些数据可能没有经过格式化的,也或者是经过了unicode编码,没有缩进,没有换行等等,造成阅读有一定困难。那么使用jsonview,可以自动对json数据转码,缩进,格式化,使得开发人员可以更好的阅读信息。

2014-02-28

java 23种设计模式

设计模式主要分三个类型:创建型、结构型和行为型。 其中创建型有: 一、Singleton,单例模式:保证一个类只有一个实例,并提供一个访问它的全局访问点 二、Abstract Factory,抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们的具体类。 三、Factory Method,工厂方法:定义一个用于创建对象的接口,让子类决定实例化哪一个类,Factory Method使一个类的实例化延迟到了子类。 四、Builder,建造模式:将一个复杂对象的构建与他的表示相分离,使得同样的构建过程可以创建不同的表示。 五、Prototype,原型模式:用原型实例指定创建对象的种类,并且通过拷贝这些原型来创建新的对象。 行为型有: 六、Iterator,迭代器模式:提供一个方法顺序访问一个聚合对象的各个元素,而又不需要暴露该对象的内部表示。 七、Observer,观察者模式:定义对象间一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知自动更新。 八、Template Method,模板方法:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,TemplateMethod使得子类可以不改变一个算法的结构即可以重定义该算法得某些特定步骤。 九、Command,命令模式:将一个请求封装为一个对象,从而使你可以用不同的请求对客户进行参数化,对请求排队和记录请求日志,以及支持可撤销的操作。 十、State,状态模式:允许对象在其内部状态改变时改变他的行为。对象看起来似乎改变了他的类。 十一、Strategy,策略模式:定义一系列的算法,把他们一个个封装起来,并使他们可以互相替换,本模式使得算法可以独立于使用它们的客户。 十二、China of Responsibility,职责链模式:使多个对象都有机会处理请求,从而避免请求的送发者和接收者之间的耦合关系 十三、Mediator,中介者模式:用一个中介对象封装一些列的对象交互。 十四、Visitor,访问者模式:表示一个作用于某对象结构中的各元素的操作,它使你可以在不改变各元素类的前提下定义作用于这个元素的新操作。 十五、Interpreter,解释器模式:给定一个语言,定义他的文法的一个表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。 十六、Memento,备忘录模式:在不破坏对象的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。 结构型有: 十七、Composite,组合模式:将对象组合成树形结构以表示部分整体的关系,Composite使得用户对单个对象和组合对象的使用具有一致性。 十八、Facade,外观模式:为子系统中的一组接口提供一致的界面,fa?ade提供了一高层接口,这个接口使得子系统更容易使用。 十九、Proxy,代理模式:为其他对象提供一种代理以控制对这个对象的访问 二十、Adapter,适配器模式:将一类的接口转换成客户希望的另外一个接口,Adapter模式使得原本由于接口不兼容而不能一起工作那些类可以一起工作。 二十一、Decrator,装饰模式:动态地给一个对象增加一些额外的职责,就增加的功能来说,Decorator模式相比生成子类更加灵活。 二十二、Bridge,桥模式:将抽象部分与它的实现部分相分离,使他们可以独立的变化。 二十三、Flyweight,享元模式

2014-01-10

java反编译工具

最易操作 简单明了 轻松看源码 下载就能用

2014-01-10

EasyUI 官方API 中文版

jQuery EasyUI是一组基于jQuery的UI插件集合,而jQuery EasyUI的目标就是帮助web开发者更轻松的打造出功能丰富并且美观的UI界面。

2014-01-10

JQuery电子手册

jQuery是一套跨浏览器的JavaScript库,简化HTML与JavaScript之间的操作。

2014-01-06

算法导论 第三版 英文 高清

算法导论 第三版 英文 高清 绝对超值

2013-10-23

空空如也

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

TA关注的人

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