Lecture 033. 实例掩码 · 实现代码
3. 实例掩码 · 实现代码
按问题继续
同源场景标签、插值、信息碰撞的轻量解析代码
展开完整实现代码
# 本格独立:先预测,再修改 x_image / 特征值,不用前格变量。
import math
feature = [0.,1.,2.,6.,7.]
def linear_at(x_image, stride, values):
u=x_image/stride
if not 0<=u<=len(values)-1:
raise ValueError('采样位置超出已有特征;请一起检查坐标与特征范围')
lo=math.floor(u); hi=min(lo+1,len(values)-1)
a=u-lo
return u,(1-a)*values[lo]+a*values[hi]
assert linear_at(35,16,feature)==(2.1875,2.75)
x_image, stride = 35.,16.
u,value=linear_at(x_image,stride,feature)
print('原图x / stride =',u,';线性插值 =',value)
A=[[1.,0.],[1.,0.]];B=[[0.,1.],[0.,1.]]
def encode(m):
return sum(map(sum,m))/4, sum(r[0]-r[1] for r in m)/2
fa,fb=encode(A),encode(B)
print('只留均值:',fa[0],fb[0])
print('增加左列−右列通道:',fa,fb)
print('均值各放大为2×2:',[[fa[0]]*2]*2,[[fb[0]]*2]*2)
assert fa==(0.5,1.0) and fb==(0.5,-1.0)