python numpy初始化一个图像矩阵
mask_all = np.zeros((256, 256), dtype='uint8') 单通道
mask_all_enlarge = np.zeros((256, 256, 3), dtype='uint8' 三通道
#为三通道图像赋值,这里我用的是循环,因该还有更简单的方式
img_base = np.zeros((256, 256, 3), np.uint8)
for i in range(256):
for j in range(256):
img_base[i, j, 0] = np.uint8(123.7)
img_base[i, j, 1] = np.uint8(116.8)
img_base[i, j, 2] = np.uint8(103.9)
#为图像的一部分赋值为另外一附图像
img_base[64: 192, 104: 152] = img
#两幅图像之间可以直接进行或运算:
mask_all = mask_all | r['masks'][:, :, i]
mask_all = mask_all | r['masks'][:, :, person_index]
#将单通道图像依次填充到三通道图像中:
mask_all_enlarge[:, :, 0] = mask_all
mask_all_enlarge[:, :, 1] = mask_all
mask_all_enlarge[:, :, 2] = mask_all
#两个三通道图像可以直接进行乘法运算:
image_mask = mask_all_enlarge * img_base
另外python中使用cv2读写图像与skimage.io.读写图像时,三个通道之间的顺序是不相同的,使用的时候最好统一使用同一个,如果一不小心用一个读,另一个写,后面还可以再读入写出进行调换,就是比较麻烦了。
python numpy初始化一个图像矩阵的更多相关文章
- numpy初始化
一般的初始化就是用zeros这种去初始化,但你想测试一些函数的时候,如果是全0其实不好测试 可以先用python本身初始化一个list,然后转换成numpy的array a = [1.1,1.5,1. ...
- Python numpy中矩阵的用法总结
关于Python Numpy库基础知识请参考博文:https://www.cnblogs.com/wj-1314/p/9722794.html Python矩阵的基本用法 mat()函数将目标数据的类 ...
- Python/Numpy大数据编程经验
Python/Numpy大数据编程经验 1.边处理边保存数据,不要处理完了一次性保存.不然程序跑了几小时甚至几天后挂了,就啥也没有了.即使部分结果不能实用,也可以分析程序流程的问题或者数据的特点. ...
- python计算机视觉2:图像边缘检测
我是一名初学者,如果你发现文中有错误,请留言告诉我,谢谢 如果需要检测到图像里面的边缘,首先我们需要知道边缘处具有什么特征. 对于一幅灰度图像来说,边缘两边的灰度值肯定不相同,这样我们才能分辨出哪里是 ...
- CS231中的python + numpy课程
本课程中所有作业将使用Python来完成.Python本身就是一种很棒的通用编程语言,现在在一些流行的库(numpy,scipy,matplotlib)的帮助下,它为科学计算提供强大的环境. 我们希望 ...
- Python NumPy学习总结
一.NumPy简介 其官网是:http://www.numpy.org/ NumPy是Python语言的一个扩充程序库.支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库.Num ...
- [OpenCV] Samples 02: Mat - 图像矩阵
前言 一.简介 Ref:IplImage, CvMat, Mat 的关系 Mat是opencv2.0推出的处理图像的新的数据结构,现在越来越有趋势取代之前的cvMat和lplImage. 相比之下Ma ...
- python numpy 学习
例子 >>> import numpy as np >>> a = np.arange(15).reshape(3, 5) >>> a array ...
- CS231n课程笔记翻译1:Python Numpy教程
译者注:本文智能单元首发,翻译自斯坦福CS231n课程笔记Python Numpy Tutorial,由课程教师Andrej Karpathy授权进行翻译.本篇教程由杜客翻译完成,Flood Sung ...
随机推荐
- Ubuntu 实践
Ubuntu 安装中文支持 开始装的是Ubuntu Server,后来需要某些图形工具,所以装了个Gnome,没想到无论如何都显示不了中文,按照网上的方法试了一堆,装了Synaptic,KDE和GNO ...
- Java8学习笔记(四)--接口增强
增强点 静态方法 public interface InterfacePlus { void run(); static Date createDate(){ return new Date(); } ...
- SpringMVC注解@RequestParam与RequestMapping全面解析
1.@RequestParam用法: SpringMVC后台控制层获取参数的方式主要有两种, 一种是request.getParameter("name"), 另外一种是用注解@R ...
- @Transactional(readOnly=true) in Spring
http://www.skill-guru.com/blog/2010/12/19/transactionalreadonlytrue-in-spring/ @Transactional(readOn ...
- [Artoolkit] Android Sample of nftSimple
结合:[Artoolkit] ARToolKit's SDK Structure on Android 重难点:aRBaseLib/, nftSimple/, libcpufeatures.a aRB ...
- H5 (webApi) 接口帮助文档
只有你想不到,没有找不到的,强大的 webApis!!! https://developer.mozilla.org/en-US/docs/Web/API
- 图表统计FusionCharts
工作中用的图形统计,用的FusionCharts,发现Chenssy总结了很详细了,特此记录一下.tks Chenssy. tks: http://www.cnblogs.com/chenssy/ar ...
- Scala断言
断言:提供了一组断言函数以用作在代码中记录和动态检查不变量的方式. import scala.Predef._ def addNaturals(nats: List[Int]): Int = { // ...
- spring事务实现原理
实现原理 本质 如果你用过Spring AOP,那么理解注解事务就十分简单了.事务注解本质上实在事务方法加入一个Around切面,在方法开始前开始事务,在抛出异常后回滚事务.使用简单伪代码可以简单理解 ...
- maven安装与创建多模块项目
最新版已同步至 http://yywang.info/2014/05/31/maven-install-and-create-project/ maven是一个比较流行的项目管理工具,在最近参与的项目 ...