- 博客(193)
- 资源 (8)
- 收藏
- 关注
原创 给图像添加Logo
介绍给图像加上logo,这里介绍两种融合方法方法传统方法直接替换seamlessClone方法传统方法直接替换直接上代码def add_logo(cv_logo_img, cv_src_img): rows, cols, channels = cv_logo_img.shape roi = cv_src_img[0:rows, 0:cols] im...
2020-03-30 22:10:23 822
原创 图像特征匹配
简介本文主要演示利用opencv自带的特征检测算子做图像的特征匹配。检测算子包括SIFTSURFORB特征描述子提取算子包括SIFTSURFORBVGG匹配算法FlannBasedMatcher本文不对相关原理做介绍,只演示其用法,如果对原理感兴趣可以查阅相关文档学习。首先,包含所需要的头文件#include <opencv2/opencv.hpp&...
2020-03-28 10:46:54 1529
原创 imagezmq
简介imagezmq是使用PyZMQ消息将opencv图像从一个计算机传递到另一个计算机的一系列的Python类。安装方法如果是mac或者linux可以直接通过pip安装,window可能需要通过源码安装,其地址如下https://github.com/jeffbass/imagezmq.gitpip3 install -i https://pypi.tuna.tsinghua.edu.c...
2020-03-26 23:24:23 2679
原创 opencv中的filesystem
c++中缺乏对文件的相关操作,以前用的是stlplus中的文件操作,无意中发现opencv中也有相关实现,记录一下方便查询。#include <iostream>#include <opencv2/opencv.hpp>#include <opencv2/core/utils/filesystem.hpp>using namespace std;...
2020-03-16 20:18:56 1092
原创 生成库文件
在项目开发过程中,有时我们不想将我们的某些功能如何实现暴露出来,我们可以只提供声明的头文件+对应的库文件来实现,下面介绍一下如何生成库文件以及如何使用。创建项目创建一个glibrary的文件夹在该文件夹下创建如下几个文件CMakeLists.txt、build、include、src、use_library.cpp在inlude目录下创建一个test.h文件,其代码如下#ifndef...
2020-03-15 18:02:00 577
原创 emplace_back和push_back性能对比
push_back()函数向容器中加入一个临时对象(右值元素)时, 首先会调用构造函数生成这个对象,然后条用拷贝构造函数将这个对象放入容器中, 最后释放临时对象。emplace_back()函数向容器中中加入临时对象, 临时对象原地构造,没有赋值或移动的操作#include <opencv2/opencv.hpp>#include <iostream>#includ...
2020-03-11 11:42:15 1018
原创 mac多进程异常
objc[13262]: +[__NSPlaceholderDate initialize] may have been in progress in another thread when fork() was called.objc[13262]: +[__NSPlaceholderDate initialize] may have been in progress in another t...
2020-02-08 11:11:23 2493 1
原创 supervisor笔记
1. 什么是supervisor superviosr是一个Linux/Unix系统上的进程监控工具,他/她upervisor是一个Python开发的通用的进程管理程序,可以管理和监控Linux上面的进程,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。不过同daemontools一样,它不能监控daemo...
2020-01-21 17:47:42 353
原创 监控文件
当python文件发生变更时,每次手动杀掉进程然后重启这种操作台繁琐了。利用watchdog可以监控目录文件的变化,无需手动定时扫描,可以利用操作系统的API来监控目录文件的变化并发送通知。 首先安装watchdogpip3 install watchdog示例代码from watchdog.observers import Obser...
2020-01-20 20:30:41 279
原创 计算两条线段的交点
def isLineCross(pt1_1 , pt1_2 , pt2_1 , pt2_2): ''' 判断两条线是否相交 :param pt1_1: :param pt1_2: :param pt2_1: :param pt2_2: :return:True相交 ''' ret = min(pt1_1[0] , pt1_2[...
2019-07-11 18:02:03 2178
原创 linux下的一些bash命令
linux中的一些小技巧可以大大提高你的工作效率,本文就细数那些提高效率或者简单却有效的linux技巧,欢迎大家补充。删除从开头到光标处的文本ctrl +u删除光标到结尾处的文本ctrl +k光标移动到开头ctrl +a光标移动到结尾ctrl +e光标向前移动一个单词alt f命令行下复制和粘贴ctrl +insertshift +ins...
2019-06-17 19:32:14 753
原创 keras.backend.sum用法
#沿着指定轴计算张量之和from keras import backend as Kimport numpy as npimport tensorflow as tfa = np.arange(0 , 6).reshape(2 , 3)print(a)[[0 1 2] [3 4 5]]sum_a_keepdims = K.sum(a , axis=-1 , keepdims...
2019-06-16 00:32:23 10812
原创 vscode自动缩进
Windows系统: Shift + Alt + FMac系统: Shift + Option + FLinux系统: Ctrl + Shift + I
2019-05-15 15:02:40 10253
原创 opencv-python imshow()时报错
ApplePersistenceIgnoreState: Existing state will not be touched. New state will be written to (null)objc[25692]: Class QCocoaColorPanelDelegate is implemented in both /usr/local/lib/python2.7/site-pa...
2019-01-18 00:59:23 3727
原创 python字典合并
字典合并,相同的键对应的值相加import osa = {"han":1 , "sh":2}b = {"han":2}d = {'han':1 , "sh":3}def union_dict(*objs): keys = set(sum([obj.keys() for obj in objs] , [])) total = {} for key in keys:...
2018-09-19 20:18:01 894
转载 tensorflow教程——tf.GraphKeys
2018年05月21日 22:16:02 阅读数:317更多 个人分类: TensorFlow GraphKeys tf.GraphKeys包含所有graph collection中的标准集合名,有点像Python里的build-in fuction。首先要了解graph collection是什么。graph collection 在官方教程——图和会话中,介绍什么是tf.Gra...
2018-09-06 14:19:05 521
原创 tensorflow模型变量
#coding:utf-8import tensorflow as tffrom tensorflow.contrib import slimweights = slim.variable('weights' , shape=(3 , 3) , initializer=tf.truncated_normal_initializer(stddev=0.1) , regularizer=sli...
2018-03-22 17:45:39 454 1
原创 keras concatenate函数
concatenate从名字可以看出是连接两个数组,下面用一个小例子演示其用法import numpy as npimport cv2import keras.backend as Kimport tensorflow as tfa = K.variable(np.array([[1 , 2, 3]]))b = K.variable(np.array([[3 , 2, 1]]))...
2018-03-08 18:34:32 31709
原创 tensorflow 物体识别
tensorflow推出的object detection模块,为我们做物体检测提供了极大的便利,如果还没有安装该模块,可以参照 http://blog.csdn.net/hanshuobest/article/details/79222685 下面的示例演示如何用已训练的模型做物体检测import numpy as npimport osimport tensorflow as
2018-02-04 18:09:09 5888
原创 保存和加载pb模型
将模型保存为pbimport tensorflow as tffrom tensorflow.python.framework import graph_utillogdir='output/'with tf.variable_scope('conv'): w=tf.get_variable('w',[2,2],tf.float32,initializer=tf.ran
2018-01-31 22:20:07 5258 2
原创 git拉取某个分支到本地
git clone ****git fetch origin 分支名称git checkout -b origin/分支名称git pull origin 分支名称git branch -a 可以查看本地是否具有dev分支----------------------------------------强制覆盖本地git fetch --all git reset --hard o...
2018-01-31 22:14:13 1441
原创 tensorflow object detection模块
本文只是介绍一下tensorflow object detection模块的安装与使用。 1、下载tensorflow 的models模块https://github.com/tensorflow/models.git2、编译Protobuf库,在object_detection同级目录下打开终端运行: protoc object_detection/protos/*.prot...
2018-01-31 22:12:19 2415
原创 解决pip安装软件速度慢的问题
在ubuntu下经常用pip 安装一些第三方python库,pip是一个很方便的工具,但是有时用pip速度非常慢,甚至经常失败,令人十分苦恼,现在只需如下一条命令即可解决sudo pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensor2tensor这里我安装的是tensor2tensor,只需要替换程你想安装的第三方
2018-01-31 22:06:50 1337 1
原创 tensorflow显存设置
为避免训练时占用全部的gpu显存,只需设置如下代码import numpy as npimport tensorflow as tfimport osos.environ['CUDA_VISIBLE_DEVICES'] = '0'# 程序最多占用制定gpu的50%显存gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.
2017-12-28 10:16:36 414
原创 tensorflow 部分函数笔记
tf.identity(input, name=None) 返回一个一模一样的新tensor 示例:import tensorflow as tfa = tf.constant(1.0 , tf.float32)init = tf.global_variables_initializer()b = tf.identity(a)with tf.Session() as sess:
2017-12-25 00:37:11 225
原创 np.ravel()和np.flatten()
两者的功能是一致的,将多维数组降为一维,但是两者的区别是返回拷贝还是返回视图,np.flatten(0返回一份拷贝,对拷贝所做修改不会影响原始矩阵,而np.ravel()返回的是视图,修改时会影响原始矩阵 示例: import numpy as npa = np.array([[1 , 2] , [3 , 4]])b = a.flatten()print('b:' , b)c = a.ra
2017-12-23 21:57:04 39213
原创 keras 的LearningRateScheduler
keras.callbacks.LearningRateScheduler(schedule) 该回调函数是用于动态设置学习率 参数: ● schedule:函数,该函数以epoch号为参数(从0算起的整数),返回一个新学习率(浮点数)示例:from keras.callbacks import LearningRateSchedulerlr_base = 0.001e
2017-12-23 21:36:00 13370
原创 tf.stack和tf.unstack
tf.stack和tf.unstack分别表示矩阵的合并和分解,下面用一个小示例演示用法import tensorflow as tfimport sysimport osimport numpy as npa = tf.constant([1 , 2 , 3])b = tf.constant([4 , 5 , 6])c = tf.stack([a , b] , axis=0)d = tf
2017-12-23 21:17:21 1990
原创 判断两个矩形是否相交
原理就不多说了 ,这里直接上代码,经过测试是没有问题,如有发现问题欢迎指正!def isIntersection(xmin_a, xmax_a, ymin_a, ymax_a, xmin_b, xmax_b, ymin_b, ymax_b): intersect_flag = True minx = max(xmin_a , xmin_b) miny = max(ymin_a
2017-12-19 17:48:35 2622
原创 face_recognition安装
本文主要介绍一下face_recognition的安装方法,总结一下安装过程 ,希望大家能少走弯路,节约时间。安装ananconda,我这里选择的是ananconda3安装dlib,这里给出下载地址 https://pan.baidu.com/s/1eR43bXK 安装dlib比较费事 ,中间遇到了各种各样的奇怪问题 ,所以建议再安装的时候严格按照下面的要求。 我这里的开发环境是vs
2017-12-17 00:52:05 5640 2
原创 读取xml文件小示例
刚好用到了读取xml文件,这里就用一个小例子加深记忆,也方便以后查找。 下面是一个xml文件<annotation> <folder>VOC2012</folder> <filename>2007_000027.jpg</filename> <source> <database>The VOC2007 Database</database>
2017-11-22 15:59:50 1239
原创 numpy diff函数
numpy.diff(a, n=1,axis=-1)沿着指定轴计算第N维的离散差值 参数: a:输入矩阵 n:可选,代表要执行几次差值 axis:默认是最后一个 示例:import numpy as npA = np.arange(2 , 14).reshape((3 , 4))A[1 , 1] = 8print('A:' , A)#
2017-11-17 11:00:47 93236
原创 tf.nn.embedding_lookup函数
tf.nn.embedding_lookup(params, ids, partition_strategy='mod', name=None, validate_indices=True, max_norm=None)简单的来讲,就是将一个数字序列ids转化成embedding序列表示。 假设params.shape=[v,h], ids.shape=[m], 那么该函数会返回一个shape=
2017-11-16 16:09:01 536
原创 keras加载保存模型相关函数
*将模型保存为json json_string = model.to_json() 将模型保存为yaml yaml_string = model.to_yaml() 从保存的json中加载模型 from keras.modelsimport model_from_json model = model_from_json(json_string) 从保存的yaml中加载模型 model
2017-11-08 17:23:18 1140
原创 keras线性回归拟合直线
# -*- coding: utf-8 -*-"""Created on Sat Aug 26 18:25:28 2017线性回归拟合直线@author: Han"""from keras.models import Sequentialfrom keras.layers import Denseimport numpy as np# 创建一个等差数列trX = np.linspa
2017-11-08 16:23:36 1915
原创 快速排序
/************************************************************************//* 快速排序 *//**********************************************
2017-09-13 13:37:18 249
原创 二叉树
#include<iostream>#include<string>#include <stack>#include <queue>using namespace std;template <class T>struct BiNode //二叉树的结点结构{ T data; BiNode<T> *lchild, *rchild;};template <class
2017-09-13 13:16:28 487
原创 分割车牌
cv::Mat src = cv::imread("2.jpg" , 1); cv::Mat img_gray; cv::cvtColor(src, img_gray , CV_BGR2GRAY); // 图像滤波处理 cv::blur(img_gray, img_gray, cv::Size(5, 5)); cv::Mat src_filter; cv:
2017-09-10 22:13:48 815
原创 求输入向量的任何连续子向量的最大和
在编程珠玑里看到的,就随手写了一个,运行时间是O(n*n)后期再优化。#include <iostream>int calcMax(int array[], int length , int &start , int &end){ int sumMax = array[0]; for (int i = 0; i < length; ++i) { int su
2017-09-10 19:42:31 310
原创 递归二分搜索
#include <iostream>int binarysearch(int datas[], int x, int low, int high){ if (low > high) { return -1 ; } int mid = (int)(low + high) * 0.5; if (x == datas[mid]) {
2017-09-09 18:45:04 211
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人