1. import module 流程
首先,明确一下 import module_name 和 from module_name import module_element 是两条可执行的语句。
其次,sys.modules 里记录了当前 run time 下所有已经导出的 module。
继续阅读 »
1. line chart
```py
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 2 * np.pi, 100)
y1, y2 = np.sin(x), np.cos(x)
plt.plot(x, y1)
plt.plot(x, y2)
plt.title('line chart')
plt.xlabel('x')
plt.ylabel('y')
plt.show()
```
2. 图例
在plot的时候指定label,然后调用legend方法可以绘制图例。例如:
```py
import numpy as np
i
继续阅读 »
本节实现的是同时使用opencv和matplotlib两种方式来显示图像,以比较二者之间的差别。
测试灰度图像
测试彩色图像
分析彩色图像出现差异的原因
实现过程
引用
不再赘述,代码如下。
python
import cv2
import numpy
import matplotlib.pyplot as plot
测试灰度图像
打开灰度图像,先用opencv显示,再用matplotlib显示,代码如下:
``` python
test for a gray image
img1 = cv2.imread("test1.jpg")
using opencv
cv2.imshow("Gray(opencv
继续阅读 »
本节实现的是使用OpenCV里自带的函数,绘制直线、长方形、圆形和椭圆。
绘制直线
绘制长方形
绘制圆形
绘制椭圆
添加文字
实现过程
引用与创建空图
不再赘述,代码如下。
``` python
import cv2
import numpy
empty image
img = np.zeros((512, 512, 3), np.uint8)
```
绘制直线
使用opencv自带的line()函数绘制一条对角线,其声明如下:
python
cv2.line(img, pt1, pt2, color[, thickness[, lineType[, shift]]])
其中各种参数的意义如下:
img
继续阅读 »
Python作为一门极其易学的语言,在科学计算等领域存在较大的应用,同样,著名的OpenCV库也发布了支持Python的库,本节主不再介绍如何在Ubuntu上配置Python OpenCV,有需要的同学可以参考这里。
本节将利用Python OpenCV做一个简单的测试,即
打开一个图片并显示
创建一个空图并显示
将彩色图像转成灰度图像并显示
实现过程
引用
这里我们需要引用cv2和numpy,cv2不言而喻,而NumPy是Python语言的一个扩充程序库。支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库,这里在引用时把numpy重命名为np。
python
import cv2
import
继续阅读 »
最近写了一道数组去重的题,手抖,紧张,没写好。后来写了一会儿觉得还挺有意义的。现在做一下记录
Test case
测试用例如下
import test from 'ava'
import unique from '../src/unique'
继续阅读 »
本节实现的是使用内建摄像头捕获视频,并保存视频。
创建摄像头对象
逐帧显示实现视频播放
保存摄像头的每一帧图像
实现过程
引用
不再赘述,代码如下。
python
import cv2
import numpy
创建摄像头对象
使用opencv自带的VideoCapture()函数定义摄像头对象,其参数0表示第一个摄像头,一般就是笔记本的内建摄像头。
python
cap = cv2.VideoCapture(0)
定义写入视频格式和写入对象
利用cv2.cv.FOURCC(*'XVID')定义视频格式,然后创建视频写入对象。
``` python
Define the codec and create
继续阅读 »
xmake通过import接口,可以在自定义脚本中导入各种内置类库和扩展类库模块,使得xmake的插件开发具有更多的灵活性,提供更丰富的功能。
我们先看下,目前xmake提供的一些类库:
.
├── _g.lua
├── assert.lua
├── catch.lua
├── coroutine.lua
├── debug.lua
├── finally.lua
├── format.lua
├── ifelse.lua
├── import
│ └── core
│ ├── base
│ │
继续阅读 »
本节实现的是使用OpenCV里自带的函数,将一幅logo加到一张图片上去。
提取mask
利用mask生成带logo图片
实现过程
引用与读取图片
不再赘述,代码如下。
``` python
import cv2
import numpy as np
img = cv2.imread('test.png')
logo = cv2.imread('logo.jpg')
cv2.imshow("Img_Original", img)
```
获取mask
先将logo转成黑白,然后设置合适的阈值二值化,使得有内容的部分为黑(0),无内容的部分为白(255),这里使用的阈值为205。
```python
logo_gray
继续阅读 »
本节实现的是使用OpenCV里自带的函数,在双击图片时,以其为圆心绘制圆。
回调函数
捕捉鼠标事件
实现过程
引用与创建空图
不再赘述,代码如下。
``` python
import cv2
import numpy
empty image
img = np.zeros((512, 512, 3), np.uint8)
```
设置回调函数
检测鼠标事件,如果左击鼠标则绘制圆。
```python
call back function
def draw_circle(event, x, y, flags, param):
if event == cv2.EVENT_LBUTTONDBLCLK:
继续阅读 »