购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

6-4 Numpy高效率读取与设定像素的方法

也许读者将来需要使用OpenCV处理复杂的图像,这时可能会发现先前使用的切片方法在读取像素点的值时,速度有一点慢。Numpy提供了 item( ) 函数与 itemset( ) 函数,可以高效率地 读取 设定 像素点的内容。

6-4-1 灰度图像的应用

在灰度图像的应用中item( )函数与itemset( )函数语法如下:

     ndarray.item(, )            # 返回索引的值
     ndarray.itemset(索引, )       # 将设定给指定索引的ndarray变量

程序实例 ch6_9.py: 建立一个3×5的灰度图像数组,打印此数组内容,这个程序第6行使用item( )函数读取像素点内容,第7行使用itemset( )函数修改索引(1,3)的值为255,然后第9行输出此数组,第10行输出特定索引(1,3)的内容。

执行结果

程序实例 ch6_10.py: 使用itemset( )函数重新设计ch6_2.py。

执行结果 与ch6_2.py相同。

6-4-2 彩色图像的应用

在彩色图像的应用中 item( ) 函数与 itemset( ) 函数语法如下:

     ndarray.item(, , 通道)               # 返回行、列、通道索引的值
     ndarray.itemset((, , 通道), )    # 将设定给指定索引的ndarray变量

程序实例 ch6_11.py: 使用item( )函数和itemset( )函数重新设计ch6_6.py。

执行结果

程序实例 ch6_12.py: 使用 item( ) 函数和 itemset( ) 函数重新设计修改ch6_7.py,读取彩色图像并修订,这个程序只用一个白色长条修订部分图像。

执行结果 oeFBW9MFfZFGH+HGveaAfUBMXLLu6ScXsT8rTrlE9hpWKytDwdEeWVXyZiRwimwC

点击中间区域
呼出菜单
上一章
目录
下一章
×

打开