![OpenCV计算机视觉项目实战(Python版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/696/52842696/b_52842696.jpg)
上QQ阅读APP看书,第一时间看更新
3-5-3 多维数组的切片
3-4-3节数组切片的概念也可以应用于多维数组,因为切片可能造成降维,下列将直接以实例解说。
程序实例ch3_15.py:二维数组切片的应用。
![](https://epubservercos.yuewen.com/1BEC8A/31397881107141406/epubprivate/OEBPS/Images/Figure-P49_1956.jpg?sign=1739213057-DWLEqNj9juoOA2f8O9hwituTHytnI3z4-0-fdbdd013b969556653d1e993eca3d02a)
执行结果
![](https://epubservercos.yuewen.com/1BEC8A/31397881107141406/epubprivate/OEBPS/Images/Figure-P50_734.jpg?sign=1739213057-BGjUFMHCMGULwYNOFOtTiRISnFAyCOGZ-0-7e4ae4bc92f09798ab26bff568988b62)
上述切片可以使用下列图例解说,需要特别注意的是,红色虚线框的内容是使用切片降维成一维数组的结果。另外,x[:,4:]和x[:,4]表面上结果是4, 9, 14,但是x[:,4]第2个索引指明切片是第4列(column),所以得到的是降维结果,也就是从二维数据降成一维数据。
![](https://epubservercos.yuewen.com/1BEC8A/31397881107141406/epubprivate/OEBPS/Images/Figure-P50_737.jpg?sign=1739213057-hvIymlXGCaJmad4jsY6zojyvinXuDxQf-0-1aded3a5106b4e241b9f3468f0de6655)
索引在使用上会偏向使用[ , ]处理维度之间的切片,而不是使用[ ][ ],如果使用[ ][ ]做切片有时候会造成错误。
程序实例ch3_16.py:使用[ ][ ]切片造成错误的实例。
![](https://epubservercos.yuewen.com/1BEC8A/31397881107141406/epubprivate/OEBPS/Images/Figure-P50_740.jpg?sign=1739213057-vJ4sINq0h59oUkAbrhyNxe0c07K3iOUJ-0-23fe5696b7b1df0ceeea787172e23daa)
执行结果
![](https://epubservercos.yuewen.com/1BEC8A/31397881107141406/epubprivate/OEBPS/Images/Figure-P51_746.jpg?sign=1739213057-zDYUJ9p3eG6qGhX6NaOn0ryclqZ0jM5H-0-02de6492fc0b30fa10fdfe1c1feac885)