cv2.imshow()和plt.imshow()显示的色差问题

原图: 用opencv读入图像数据并进行灰度处理之后,用 matplot.pyplot 对灰度图进行输出 import matplot.pyplot as plt import cv2 srcImage = cv2.imread("/home/jinyan/anaconda3/envs/tensorflow/models/research/object_detection/sm_products/111/A0002551.jpg") grayImage = cv2.cvtColor(srcIm
分类: 其他 发布时间: 04-25 23:45 阅读次数: 0

opencv用函数cv2.imwrite 保存的图像为黑色

在实践过程中涉及到用opencv保存图像,但是保存下来的图像是全黑的,但是用matplot.pyplot显示却是正常的。 解决办法:将其换成uint8格式就能正常显示保存了 noise_img_norm = cv2.normalize(noise_img, None, 0, 255, cv2.NORM_MINMAX, cv2.CV_8U)
分类: 其他 发布时间: 04-25 23:44 阅读次数: 0

TensorFlow物体检测网络模型加载过程

了解程序加载模型的具体细节 模型训练的主文件是train.py。在该文件中通过 model_config, train_config, input_config = get_configs_from_pipeline_file() 获取配置文件的信息,其中是调用protobuf进行文件解析。 分别得到model_config, train_config, input_config三个配置文件(训练格式)。 后通过functools.partial函数对model_builder.build函
分类: 其他 发布时间: 04-25 23:44 阅读次数: 0

python第三方库和conda操作

以numpy为例 安装 pip install numpy conda install numpy 更新 pip install -U numpy conda update numpy 移除、卸载 pip uninstall numpy ———————————————————————————————————————————————————————— anaconda命令 1、检查conda是否安装以及版本 conda -V conda --version 2、升级当前版本的con
分类: 其他 发布时间: 04-25 23:44 阅读次数: 0

GPU和CPU跑程序的代码区别

用GPU跑比用CPU跑要在程序中多加一行代码,0表示第1块GPU设备 import os os.environ['CUDA_VISIBLE_DEVICES'] = "0"
分类: 其他 发布时间: 04-25 23:44 阅读次数: 0

ubuntu下u盘变成只读模式

由于不正确插拔导致U盘中的所有文件图标上面都有一个小锁子,所有文件变成只读模式,无法进行复制和粘贴 1.查看相关信息 打开终端,输入以下命令: df -h 找到最后一行显示 /dev/sdc 32G 7.0G 25G 23% /media/xxx/u盘名 2.卸载u盘 注:不需要拔掉U盘 sudo umount /media/xxx/u盘名 3.修复U盘 sudo dosfsck -v -a /dev/sdc
分类: 其他 发布时间: 04-25 23:43 阅读次数: 0

RuntimeWarning: More than 20 figures have been opened.

绘图出现以下警告: RuntimeWarning: More than 20 figures have been opened. Figures created through the pyplot interface (matplotlib.pyplot.figure) are retained until explicitly closed and may consume too much memory. 这是因为循环太多,每个循环里面画了一张图,所以可以在每个循环内把plt关闭。 plt
分类: 其他 发布时间: 04-25 23:43 阅读次数: 0

ubuntu命令卸载软件

1.获取已安装软件列表 dpkg --list 2.找到需要卸载的软件名称 3.完全卸载该软件 sudo apt-get --purge remove 包名 该命令将软件及其配置文件一并删除 4.若只卸载程序,但保留配置文件 sudo apt-get remove 包名
分类: 其他 发布时间: 04-25 23:42 阅读次数: 0

ubuntu下将tensorflow训练好的模型移植到安卓端

1.下载tensorflow源码 git clone --recurse-submodules https://github.com/tensorflow/tensorflow.git 2.通过export_tflite_ssd_graph.py将训练后的模型导出所需要的文件 配置参数为 --pipeline_config_path=/home/jinyan/anaconda3/envs/tensorflow/models/research/object_detection/sm_produ
分类: 其他 发布时间: 04-25 23:42 阅读次数: 0

ubuntu下字体位置

/usr/share/fonts/truetype/dejavu 个人用户字体文件:~/.local/share/fonts 系统字体文件:/usr/share/fonts 字体配置文件:/etc/fonts/
分类: 其他 发布时间: 04-25 23:42 阅读次数: 0

tensorflow移植识别

DetectorActivity.java中MINIMUM_CONFIDENCE_TF_OD_API 变量是检测到的目标的置信度,也即是说模型判定的这个框为该目标的可信程度.该值越高框越准确. 当出现数组越界的情况,可尝试在txt文件首行中添加 " ???" 可移植到安卓端的tensorflow模型为 https://tensorflow.google.cn/lite/guide/hosted_models
分类: 其他 发布时间: 04-25 23:42 阅读次数: 0

使python2 python3兼容

使python2 python3的print互相兼容: from __future__ import print_function
分类: 其他 发布时间: 04-25 23:41 阅读次数: 0

卷积神经网络中卷积层和池化层的作用

假如有一幅1000*1000的图像,如果把整幅图像作为向量,则向量的长度为1000000( 10610^6106)。在假如隐含层神经元的个数和输入一样,也是1000000;那么,输入层到隐含层的参数数据量有 101210^{12}1012。所以,我们还得降低维数,同时得以整幅图像为输入(人类实在找不到好的特征了)。 CNN网络一共有5个层级结构: 输入层 卷积层 激活层 池化层 全连接FC层 卷积层 局部感知:人的大脑识别图片的过程中,并不是一下子整张图同时识别,而是对于图片中的每一个特征首先
分类: 其他 发布时间: 04-25 23:41 阅读次数: 0

Blockly-可视化编程工具入门待更新

版权声明:fromZjy QQ1045152332 https://blog.csdn.net/qq_36762677/article/details/88422191 概述 基于Web的、开源的、可视化程序编辑器。 Blockly 是一个完全客户端应用,它无需服务端的任何支持(除非你要使用云存储等服务端功能),且没有第三方的依赖(除非你想重新编译内核),一切都是开源的。 优势 代码可导出 - Blockly 直接支持 JavaScript、Python、PHP、Lua、Dart 语言源码的导
分类: 其他 发布时间: 04-25 23:40 阅读次数: 0

docker1-docker常用命令|Dockerfile|网络类型

版权声明:fromZjy QQ1045152332 https://blog.csdn.net/qq_36762677/article/details/88428894 基本概念 基于GO语言 软件容器化 docker是一个装应用的容器(类似于虚拟机高于虚拟机) 解决痛点: 解决运行环境不一致的问题 每个容器独立不影响 增加容器更加简便 不用记录存储位置 启动速度显著增加 时势造英雄: 统一云计算/敏捷开发(PaaS平台即服务,平台提供了存储,数据库,网络,负载均衡,自动扩展的功能) 架构图
分类: 其他 发布时间: 04-25 23:40 阅读次数: 0

docker2-docker存储持久化|数据管理

版权声明:fromZjy QQ1045152332 https://blog.csdn.net/qq_36762677/article/details/88429114 按照 Docker 最佳实践的要求,容器不应该向其存储层内写入任何数据,容器存储层要保持无状态化。 查看容器内应用产生的数据,或者需要把容器内的数据进行备份,甚至多个容器之间进行数据的共享,这必然涉及容器的数据管理操作。 所有的文件写入操作,都应该使用 数据卷(Volume)、或者绑定宿主目录,在这些位置的读写会跳过容器存储层
分类: 其他 发布时间: 04-25 23:40 阅读次数: 0

Go语言实战(第一章)-基础知识

版权声明:fromZjy QQ1045152332 https://blog.csdn.net/qq_36762677/article/details/86631984 Go初识 简洁、快速 C 和 C++这类语言提供了很快的执行速度, Ruby 和 Python 这类语言则擅长快速开发。 Go 语言在这两者间架起了桥梁 安全 并行 开源 内存管理、数组安全、编译迅速 一、特点 运行效率高(编译型语言),开发高效(语法少,关键字少),部署简单 支持并发,易于利用多核实现并发 内置runtime
分类: 其他 发布时间: 04-25 23:39 阅读次数: 0

项目-版本控制必会svn|git

版权声明:fromZjy QQ1045152332 https://blog.csdn.net/qq_36762677/article/details/84235502 两者区别 最核心的区别Git是分布式的,而Svn不是分布的。 Git把内容按元数据方式存储,而SVN是按文件 git离线可查看原来版本和log git 分布式版本控制系统 下载 状态:已修改–>已暂存–>已提交 每次提交都有一个摘要值 针对所有仓库 执行命令git config --global user.name "你的用户
分类: 其他 发布时间: 04-25 23:39 阅读次数: 0

redis4-做缓存时解决缓存雪崩、缓存穿透问题

版权声明:fromZjy QQ1045152332 https://blog.csdn.net/qq_36762677/article/details/88642810 一、缓存雪崩 为什么使用缓存 提高性能(内存速度>访问硬盘速度) 提高并发能力(缓存承担部分压力) 缓存雪崩发生原因: 1.如果我们的缓存挂掉了,这意味着我们的全部请求都跑去数据库了。 2.Redis需要对数据设置过期时间,并采用的是惰性删除+定期删除两种策略对过期键删除。如果缓存数据设置的过期时间是相同的,并且Redis恰好
分类: 其他 发布时间: 04-25 23:39 阅读次数: 0

spring boot使用三种拦截器

版权声明:fromZjy QQ1045152332 https://blog.csdn.net/qq_36762677/article/details/88664487 过滤器(Filter):可以拿到原始的http请求,但是拿不到你请求的控制器和请求控制器中的方法的信息。 拦截器(Interceptor):可以拿到你请求的控制器和方法,却拿不到请求方法的参数。 切片 (Aspect): 可以拿到方法的参数,但是却拿不到http请求和响应的对象 使用AOP处理请求或记录日志 AOP面向切面 _
分类: 其他 发布时间: 04-25 23:39 阅读次数: 0