SciPy和Numpy处理能力
1.SciPy和Numpy的处理能力:
numpy的处理能力包括:
- a powerful N-dimensional array object N维数组;
- advanced array slicing methods (to select array elements);N维数组的分片方法;
- convenient array reshaping methods;N维数组的变形方法;
and it even contains 3 libraries with numerical routines:
- basic linear algebra functions;基本线性代数函数;
- basic Fourier transforms;基本傅立叶变换;
- sophisticated random number capabilities;精巧的随机数生成能力;
scipy是科学和工程计算工具。包括处理多维数组,多维数组可以是向量、矩阵、图形(图形图像是像素的二维数组)、表格(一个表格是一个二维数组);目前能处理的对象有:
- statistics;统计学;
- numeric integration;数值积分;
- special functions;特殊函数;
- integration, ordinarydifferential equation (ODE) solvers;积分和解常微分方程;
- gradient optimization;梯度优化;
- geneticalgorithms;遗传算法;
- parallel programming tools(an expression-to-C++ compilerfor fast execution, and others);并行编程工具;
在将来会增加下面的计算处理能力(现在已经部分地具备了这些能力):
- Circuit Analysis (wrapper around Spice?);电路分析;
- Micro-Electro Mechanical Systems simulators (MEMs);
- Medical image processing;医学图像处理;
- Neural networks;神经网络;
- 3-D Visualization via VTK;3D可视化;
- Financial analysis;金融分析;
- Economic analysis;经济分析;
- Hidden Markov Models;隐藏马尔科夫模型;
2.处理图像 翻译链接:http://reverland.org/python/2012/11/12/numpyscipy/
原始链接:http://scipy-lectures.github.io/advanced/image_processing/index.html
特征提取和分形:
边缘检测
合成数据:
>>> im = np.zeros((256, 256))
>>> im[64:-64, 64:-64] = 1
>>>
>>> im = ndimage.rotate(im, 15, mode='constant')
>>> im = ndimage.gaussian_filter(im, 8)
使用_梯度操作(Sobel)_来找到搞强度的变化:
>>> sx = ndimage.sobel(im, axis=0, mode='constant')
>>> sy = ndimage.sobel(im, axis=1, mode='constant')
>>> sob = np.hypot(sx, sy)

canny滤镜
Canny滤镜可以从skimage中获取(文档),但是为了方便我们在这个教程中作为一个_单独模块_导入:
>>> #from skimage.filter import canny
>>> #or use module shipped with tutorial
>>> im += 0.1*np.random.random(im.shape)
>>> edges = canny(im, 1, 0.4, 0.2) # not enough smoothing
>>> edges = canny(im, 3, 0.3, 0.2) # better parameters

需要调整几个参数……过度拟合的风险
分割
基于_直方图_的分割(没有空间信息)
>>> n = 10
>>> l = 256
>>> im = np.zeros((l, l))
>>> np.random.seed(1)
>>> points = l*np.random.random((2, n**2))
>>> im[(points[0]).astype(np.int), (points[1]).astype(np.int)] = 1
>>> im = ndimage.gaussian_filter(im, sigma=l/(4.*n)) >>> mask = (im > im.mean()).astype(np.float)
>>> mask += 0.1 * im
>>> img = mask + 0.2*np.random.randn(*mask.shape) >>> hist, bin_edges = np.histogram(img, bins=60)
>>> bin_centers = 0.5*(bin_edges[:-1] + bin_edges[1:]) >>> binary_img = img > 0.5

SciPy和Numpy处理能力的更多相关文章
- Windows下安装Scipy和Numpy失败的解决方案
使用 pip 安装 Scipy 库时,经常会遇到安装失败的问题 pip install numpy pip install scipy 后来网上搜寻了一番才得以解决.scipy 库需要依赖 numpy ...
- Scipy和Numpy的插值对比
技术背景 插值法在图像处理和信号处理.科学计算等领域中是非常常用的一项技术.不同的插值函数,可以根据给定的数据点构造出来一系列的分段函数.这一点有别于函数拟合,函数拟合一般是指用一个给定形式的连续函数 ...
- Windows下python virtualenv使用,镜像源设置,批量安装,安装scipy,numpy
镜像源设置 在C:\Users\Administrator\下建立pip文件夹,然后在里面创建了一个pip.ini 内容为: [global]index-url = https://pypi.tuna ...
- python(5):scipy之numpy介绍
python 的scipy 下面的三大库: numpy, matplotlib, pandas scipy 下面还有linalg 等 scipy 中的数据结构主要有三种: ndarray(n维数组), ...
- [Python] Scipy and Numpy(1)
import numpy as np #Create an array of 1*10^7 elements arr = np.arange(1e7) #Converting ndarray to l ...
- windows下安装python科学计算环境,numpy scipy scikit ,matplotlib等
安装matplotlib: pip install matplotlib 背景: 目的:要用Python下的DBSCAN聚类算法. scikit-learn 是一个基于SciPy和Numpy的开源机器 ...
- Python下科学计算包numpy和SciPy的安装
转载自:http://blog.sina.com.cn/s/blog_62dfdc740101aoo6.html Python下大多数工具包的安装都很简单,只需要执行 “python setup.py ...
- python数值计算模块NumPy scipy安装
NumPy为Python提供了快速的多维数组处理的能力,而SciPy则在NumPy基础上添加了众多的科学计算所需的各种工具包,有了这两个库,Python就有几乎和Matlab一样的处理数据和计算的能力 ...
- [笔记]我的Linux入门之路 - 05.Eclipse的Python开发环境搭建与Numpy、Scipy库安装
一.Python环境 直接终端查询下python安装没:python --version Python 2.7.12 Ubuntu竟然已经装了Python2.7,那就好说了.不然自己装和装jdk差不多 ...
随机推荐
- 【剑指Offer】37、数字在排序数组中出现的次数
题目描述: 统计一个数字在排序数组中出现的次数.例如,输入排序数组{1,2,3,3,3,3,4,5}和数字3,由于数字3在该数组中出现了4次,所以函数返回4. 解题思路: 既然输入的数 ...
- [luogu2317 HNOI2005] 星际贸易 (dp)
传送门 Solution 两个dp分开处理, 第一问什么都不考虑直接dp 第二问还有些疑惑,姑且先留坑 Code //By Menteur_Hxy #include <cstdio> #i ...
- Yii2验证码使用教程
控制器代码 public function actions() { return [ 'captcha' => [ 'class' => 'yii\captcha\CaptchaActio ...
- 《团队名称》第八次团队作业:Alpha冲刺
项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 作业链接地址 团队名称 代码敲不队 作业学习目标 (1)掌握软件测试基础技术(2)学习迭代式增量软件开发过程(Scrum) ...
- 关于Java中返回零长度数组或空集合比较好,还是返回null这个问题的一些想法
近日在方法返回类型为List数据类型时,返回结果为空集合比较好,还是null比较好的问题上有点纠结. 我觉得应该统一返回空集合,这样可以不用进行空指针的判断,不然又多了一个产生bug的可能性.而有人认 ...
- (26)改变自动扫描的包【从零开始学Spring Boot】
在开发中我们知道Spring Boot默认会扫描启动类同包以及子包下的注解,那么如何进行改变这种扫描包的方式呢,原理很简单就是: @ComponentScan注解进行指定要扫描的包以及要扫描的类. 接 ...
- floyd求最小环 模板
http://www.cnblogs.com/Yz81128/archive/2012/08/15/2640940.html 求最小环 floyd求最小环 2011-08-14 9:42 1 定义: ...
- Ruby的case语句
Ruby的case语句 case语句使用的是===判断方式,可以进行更加广义的相等判断: 可以进行类型的判断,可以进行正则表达式的判断: array = ["a",1,nil] a ...
- JSTL函数标签
tld 文件代码 <?xml version="1.0" encoding="UTF-8" ?> <taglib xmlns="ht ...
- Centos7操作系统部署指南
一.硬件环境: Dell R620 二.软件环境: Centos6.4 X86_64 +KVM Windows7+vnc 三.安装说明 操作系统更新之迅速,让作为新手的系统运维人员有点措手不及,相对于 ...