[CLS 02 · 从类别到区域与掩码](/course/notebooks/f9ab632ba16b4f2084669791cba6ba85.html) # 5. 信息没留下,放大网格能找回来吗? · 实现代码 [独立阅读](/course/notebook-blocks/f875004afbdc40f28e971ad3eafb9769.html) 主线阅读与优先实验 同图四输出、共享计算、FCN、RoIAlign、信息碰撞与SAM接口 展开完整实现代码 ``` # 独立 CPU 练习:表示碰撞与新增通道。 A = [[1.0,0.0],[1.0,0.0]] B = [[0.0,1.0],[0.0,1.0]] def encode(matrix): mean = sum(map(sum,matrix))/4 left_minus_right = sum(row[0] for row in matrix)/2-sum(row[1] for row in matrix)/2 return mean,left_minus_right fa,fb = encode(A),encode(B) assert fa[0]==fb[0]==0.5 assert fa==(0.5,1.0) and fb==(0.5,-1.0) for label,matrix in [('甲',A),('乙',B)]: average,side = encode(matrix) enlarged = [[average]*4 for _ in range(4)] print(label,'只留均值:',average,'放大后首行:',enlarged[0], '新增左右差:',side) print('同一个均值放大后仍相同;差别来自编码时保存了新的通道。') ```