Python-OpenCV图像处理-02-numpy数组操作

简介: Python-OpenCV图像处理-02-numpy数组操作

创建新图像:


利用数组操作

import cv2 as cv
import numpy as np

像素属性读取:


这里的图像说白了就是二维的数组每个数组元素的数值代表颜色,由(bgr)三张单色的图片混合而成。这里叫做通道数:

def access_pixels(image):#像素属性读取函数
    print(image.shape)
    height = image.shape[0]
    width =image.shape[1]
    channels =image.shape[2]
    print("height:  %s width: %s channels: %s"%(height,width,channels))
    for row in range(height):
        for col in range(width):
            for c in range(channels):
                pv = image[row,col,c]
                image[row,col,c] =255 -pv
    cv.imshow("pixels_demo",image)

创建数组:


m1 =np.ones([3,3],np.uint8)    
m1.fill(2)#在数组中元素全填上2

因为前文也说了彩色图像实际上就是由数组定义的单色图像的叠加

创建图像:


def create_image():
    #图像全部变成0
    img = np.zeros([400,400,3],np.uint8)#创建一个图像 多通道 bgr
    img[:,:,0] =255#b g r 三个通道
    img[:,:,1] = np.ones([400,400])*255
    cv.imshow("new image",img)
    #创建单通道的图像  灰度图像
    img1 =np.zeros([400,400,1],np.uint8)
    img1[:,:,0] = np.ones([400,400])*111
    cv.imshow("new image :",img1)
目录
相关文章
|
23小时前
|
程序员 开发工具 索引
图解Python numpy基本操作
图解Python numpy基本操作
|
4天前
|
索引 Python
NumPy 分割与搜索数组详解
NumPy 的 `np.array_split()` 函数用于分割数组。基本语法是 `np.array_split(array, indices_or_sections, axis=None)`,它接受一个 NumPy 数组和分割参数,按指定轴进行分割。示例:将 `[1, 2, 3, 4, 5, 6]` 分割成 3 个子数组,结果是 `[[1, 2], [3, 4], [5, 6]]`。注意,超出数组范围的分割位置会导致异常,且元素数量可能根据需要调整。`np.array_split()` 返回子数组的列表。可以按列分割、使用掩码或不均匀分割。练习:将 `arr = [1, 2, 3, 4,
21 0
|
5天前
|
索引 Python
NumPy 数组迭代与合并详解
NumPy 数组迭代包括基本和高级方法。使用 `for` 循环可迭代一维、二维及多维数组。`np.nditer()` 提供更多控制,如迭代顺序、过滤、类型转换和步长。`np.ndenumerate()` 返回元素及其索引。练习涉及合并数组操作。
9 0
|
5天前
|
SQL 数据采集 数据挖掘
构建高效的Python数据处理流水线:使用Pandas和NumPy优化数据分析任务
在数据科学和分析领域,Python一直是最受欢迎的编程语言之一。本文将介绍如何通过使用Pandas和NumPy库构建高效的数据处理流水线,从而加速数据分析任务的执行。我们将讨论如何优化数据加载、清洗、转换和分析的过程,以及如何利用这些库中的强大功能来提高代码的性能和可维护性。
|
5天前
|
Python
NumPy 数组复制与视图详解
NumPy 的复制和视图用于创建新数组。复制创建独立于原数组的新数组,如 `arr.copy()`、`np.array(arr)` 和 `arr[:]`。视图则是原始数组的引用,修改会影响原数组,如 `arr.view()`、切片和 `arr.reshape()`。使用 `arr.base` 可检查数组是否为视图。练习:创建数组 `arr` 并用三种方法创建副本,验证它们是否独立。
18 0
NumPy 数组复制与视图详解
|
5天前
|
存储 测试技术 程序员
【Python】—— NumPy基础及取值操作
【Python】—— NumPy基础及取值操作
8 1
|
5天前
|
索引 Python
【Python】—— Numpy 初体验
【Python】—— Numpy 初体验
4 0
|
5天前
|
Python
【Python进阶(六)】——随机数与数组
【Python进阶(六)】——随机数与数组
|
5天前
|
机器学习/深度学习 TensorFlow 算法框架/工具
Python深度学习基于Tensorflow(1)Numpy基础
Python深度学习基于Tensorflow(1)Numpy基础
24 5
|
5天前
|
算法 计算机视觉
【OpenCV】计算机视觉图像处理基础知识(下)
【OpenCV】计算机视觉图像处理基础知识(下)