Python 作为一种面向对象、直译式的计算机程序语言,在很多领域得到广泛应用。

本文主要介绍 Python 在图像处理中的基本运算,借助 scikit-image 库,Python 在做图像处理的

时候非常方便,对于习惯用MATLAB的人来说,可以非常快速的习惯Python的语法。 熟悉了这些

基本的运算,就可以做进一步复杂的图像处理了。

import numpy as np
from skimage import data
import matplotlib.pyplot as plt
from skimage import io
import time
from skimage import img_as_float, img_as_ubyte # 读取图像
file_name='E:/Visual Effects/PS Algorithm/2.jpg';
img=io.imread(file_name) file_name2='E:/Visual Effects/PS Algorithm/3.jpg'
img2=io.imread(file_name2) # 图像的融合,
img3=img2*0.5+img*0.5; # 浮点值的图像归一化到 0-1 之间
img3=img3/255.0; # 图像数据类型的转换
img3=img_as_float(img3);
img3=img_as_ubyte(img3); # 分离图像的 R, G, B 三个通道
r_img=img2[:,:,0];
g_img=img2[:,:,1];
b_img=img2[:,:,2]; # 保存图像
io.imsave('red.jpg', r_img);
io.imsave ('out.jpg', img3); # 访问图像中的像素
# 单通道图像
aa=r_img[0:3, 0:4];
# 多通道图像
bb=img[0:3, 0:4, :]; print aa
print bb[1] # 图像的显示
# 显示彩色图像
plt.figure(1)
plt.imshow(img) # 显示灰度图像
plt.figure(2)
plt.imshow(r_img, plt.cm.gray)
plt.figure(3)
plt.imshow(g_img, plt.cm.gray)
plt.figure(4)
plt.imshow(b_img, plt.cm.gray) plt.axis('off');
plt.show(); # 获取图像的维度,行数,列数以及通道数
row, col, channel=img.shape;
print "red channel", r_img.dtype, r_img.shape
print "green channel", g_img.dtype, g_img.shape
print "blue channel", g_img.dtype, b_img.shape print r_img.shape, row, col, channel # 求图像的最大值,最小值,均值
print img3.min(), img3.max(), img3.mean()

Python: 图像处理的基本运算的更多相关文章

  1. Python图像处理库:Pillow 初级教程

    Python图像处理库:Pillow 初级教程 2014-09-14 翻译 http://pillow.readthedocs.org/en/latest/handbook/tutorial.html ...

  2. Python图像处理之验证码识别

      在上一篇博客Python图像处理之图片文字识别(OCR)中我们介绍了在Python中如何利用Tesseract软件来识别图片中的英文与中文,本文将具体介绍如何在Python中利用Tesseract ...

  3. 【python图像处理】图像的缩放、旋转与翻转

    [python图像处理]图像的缩放.旋转与翻转 图像的几何变换,如缩放.旋转和翻转等,在图像处理中扮演着重要的角色,python中的Image类分别提供了这些操作的接口函数,下面进行逐一介绍. 1.图 ...

  4. Python图像处理库(1)

    转自:http://www.ituring.com.cn/tupubarticle/2024 第 1 章 基本的图像操作和处理 本章讲解操作和处理图像的基础知识,将通过大量示例介绍处理图像所需的 Py ...

  5. Python图像处理库:PIL中Image,ImageDraw等基本模块介绍

    Python图像处理库:PIL中Image,ImageDraw等基本模块介绍 标签: 图像处理PILPYTHON 2016-08-19 10:58 461人阅读 评论(0) 收藏 举报  分类: 其他 ...

  6. Python图像处理库PIL中图像格式转换(一)

    在数字图像处理中,针对不同的图像格式有其特定的处理算法. 所以,在做图像处理之前,我们须要考虑清楚自己要基于哪种格式的图像进行算法设计及事实上现.本文基于这个需求.使用python中的图像处理库PIL ...

  7. python 图像处理中二值化方法归纳总结

    python图像处理二值化方法 1. opencv 简单阈值 cv2.threshold 2. opencv 自适应阈值 cv2.adaptiveThreshold 3. Otsu's 二值化 例子: ...

  8. python图像处理:一福变五福

    快过年了,各种互联网产品都出来撒红包.某宝一年一度的“集五福活动”更是成为每年的必备活动之一. 虽然到最后每人大概也就分个两块钱,但作为一个全民话题,大多数人还是愿意凑凑热闹. 毕竟对于如今生活在大城 ...

  9. Python 图像处理 OpenCV (2):像素处理与 Numpy 操作以及 Matplotlib 显示图像

    前文传送门: 「Python 图像处理 OpenCV (1):入门」 普通操作 1. 读取像素 读取像素可以通过行坐标和列坐标来进行访问,灰度图像直接返回灰度值,彩色图像则返回B.G.R三个分量. 需 ...

随机推荐

  1. linux查找keyword在php出现的次数

    查找CleverCode在当前文件夹以及子文件夹,全部的php出现大于0的次数. # find -type f -name '*.php' | xargs grep CleverCode ./*.ph ...

  2. java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: student is not mapped

    Spring 5.0 +Jpa,使用@Query实现 自定义查询报错: java.lang.IllegalArgumentException: org.hibernate.hql.internal.a ...

  3. PatentTips - Handling shared interrupts in bios under a virtualization technology environment

    BACKGROUND This relates to the operation of software under a virtualization technology (VT) environm ...

  4. swift项目第五天:swift中storyBoard Reference搭建主界面

    一:StoryBoard Reference的介绍 StoryBoard Reference是Xcode7,iOS9出现的新功能 目的是让我们可以更好的使用storyboard来开发项目 在之前的开发 ...

  5. 数据类型总结——Array(数组类型)

    相关文章 简书原文:https://www.jianshu.com/p/1e4425383a65 数据类型总结——概述:https://www.cnblogs.com/shcrk/p/9266015. ...

  6. JS实现页面table鼠标移动改变tr行颜色,单击tr选中复选框功能

    JS源代码: //需要设置tr背景颜色 var highlightcolor='#bfecfc'; //设置背景颜色 function changeto(index){ var tr1 = docum ...

  7. Spinlock implementation in ARM architecture

    Spinlock implementation in ARM architecture   SEV and WFE are the main instructions used for impleme ...

  8. [Angular] Using useExisting provider

    Unlike 'useClass', 'useExisting' doesn't create a new instance when you register your service inside ...

  9. android安卓开发基础小笔记,添加按钮事件,打开新窗体,窗体传值,回传

    给一个按钮添加onclick事件 //获取按钮对象 Button Aiyo = (Button)findViewById(R.id.button1); Aiyo.setOnClickListener( ...

  10. ### Hibernate中的事务与并发 ###

    **事务相关的概念** 1. 什么是事务 * 事务就是逻辑上的一组操作,组成事务的各个执行单元,操作要么全都成功,要么全都失败. * 转账的例子:冠希给美美转钱,扣钱,加钱.两个操作组成了一个事情! ...