图像金字塔 1.在从cv2.resize中,传入参数时先列后行的 2.使用了python中的生成器,调用时使用for i in pyramid即可 3.scaleFactor是缩放因子,需要保证缩放后的图不小于最小尺寸,对应神经网络就是训练尺寸 '''图像金字塔''' def resize(img, scaleFactor): # cv2.resize先接收列后接收行,返回亦然 return cv2.resize(img, (int(img.shape[1] * (1/scaleFactor))…
date: 2017-07-21 16:48:02 非极大值抑制算法(Non-maximum suppression, NMS) 算法原理 非极大值抑制算法的本质是搜索局部极大值,抑制非极大值元素. 算法用途 如在物体检测中可以通过应用NMS算法来消除多余的交叉重复的窗口,使在同一物体的多个检测窗口中保留下得分最高的窗口. NMS算法亦可用于视频跟踪/数据挖掘/3D重建以及文理分析等. 算法实现思路 首先迭代所有的点,迭代每一个点的时候判断该点是否符合局部最大值的条件. NMS算法在三邻域情况下…
图像金字塔原理 expand = 扩大+卷积 拉普拉斯金字塔 PyrDown:降采样 PyrUp:还原 example import cv2 as cv import numpy as np # 图像金字塔和拉普拉斯金字塔(L1 = g1 - expand(g2)):reduce:高斯模糊+降采样,expand:扩大+卷积 # PyrDown降采样,PyrUp还原 def pyramid_demo(image): level = 4 temp = image.copy() pyramid_ima…
self的认识 & __getattr__()特殊方法 将字典调用方式改为通过属性查询的一个小class, class Dict(dict): def __init__(self, **kw): super(Dict, self).__init__(**kw) def __getattr__(self, key): try: print(self) return self[key] except KeyError: raise AttributeError(r"'Dict' object…
一段简短的实现图像旋转的代码,使用了skimage库,据说和PIL相比,skimage对numpy等科学计算库的支持更好,这里是为了完成师兄给的帮他修改程序的任务,如果以后有需求的话可能会对python图像处理库做个梳理或者根据自己的需求做个筛选后深入了解一下. from skimage import io,transform import matplotlib.pyplot as plt '''图片旋转''' img2 = io.imread('./bg-body-3.jpg') img2 =…
Python 的 简单多线程实现 用 dummy 模块 一句话就可以搞定,但需要对线程,队列做进一步的操作,最好自己写个线程池类来实现. Code: # coding:utf-8 # version: 0.1 import re,time from requests import get from Queue import Queue, Empty from threading import Thread # 全局变量 COUNT = 0 # 爬虫类 class Spider(Thread):…
#### 20160712 更新 原API的访问方式是以 HTTP 的方式访问的,根据官网最新文档,现在已经修改成 HTTPS 方式,测试可以正常使用API了. 0x 00 前言 ZoomEye 的 API 在前几天正式对外部开发,这对网络渗透人员来说是一件开心的事 可以说“妈妈再也不用担心批量测(x)试(zhan)没有资源了.” 官方的 API 帮助文档在下面: https://www.zoomeye.org/api/ 看了下,使用方法是先提交账户,密码获得一个唯一的访问令牌(access_t…
一.问题描述 Python中的垃圾回收是以引用计数为主,分代收集为辅,引用计数的缺陷是循环引用的问题.在Python中,如果一个对象的引用数为0,Python虚拟机就会回收这个对象的内存. sys.getrefcount(a)可以查看a对象的引用计数,但是比正常计数大1,因为调用函数的时候传入a,这会让a的引用计数+1 导致引用计数+1的情况: 对象被创建,例如a=23 对象被引用,例如b=a 对象被作为参数,传入到一个函数中,例如func(a) 对象作为一个元素,存储在容器中,例如list1=…
1.安装指定版本的tensorflow 虽然官网有4种安装方式,并且推荐用anaconda的方式,但是有时候我们需要指定版本的tensorflow,而pip可以做到. 比如我装的是anaconda3.6.0,我根据代码,我只需要用下面. pip install https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.4.0-cp36-cp36m-linux_x86_64.whl 稍微改改,主要是1.4.0改1.4.…
一.参考 作者:zhijun liu 链接:https://www.zhihu.com/question/26930016/answer/99243411 来源:知乎 建议大家去原答案浏览 二.装饰器作用 内裤可以用来遮羞,但是到了冬天它没法为我们防风御寒,聪明的人们发明了长裤,有了长裤后宝宝再也不冷了,装饰器就像我们这里说的长裤,在不影响内裤作用的前提下,给我们的身子提供了保暖的功效. 再回到我们的主题 装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外…