COMP9021--7.15

期中之后的知识点越来越古怪了,这节课的大意是分析一个由任意0,1组成的点阵,计算value为1的点周围上下左右都有几个点value也为1,然后根据邻居个数建立新的点阵,难点是分析情况较多,因为要分析该点是否在边界线上,故而可以在原始点阵周围加一圈0,就不用再考虑邻居点是否在边界线上了,如图所示:

 

 

从这道题中,继而引入了numpy的概念

numpy中的reshape可以改变array的维度,如:

import numpy as np

a=np.array([1,2,3,4,5,6,7,8])  #一维数组

d=a.reshape ((2,4))  #改为一个二维数组

#out: array ( [ [1,2,3,4],

     [5,6,7,8] ] )                                                                                                                                                                                                                                                          

回到刚才的题目,还有一种思路是去掉最后两行两列,用剩下的点组成新的点阵,该点阵上下左右平移,得到邻居点的value

numpy中还有logical_and:

np.logical_and(True, False)

False

 

reference: https://blog.csdn.net/u010916338/article/details/84066369

posted on 2019-07-18 15:20  Eleni  阅读(157)  评论(1编辑  收藏  举报

导航