2025-09-22 02:07:45 +00:00
|
|
|
|
AB版本拉伸策略:
|
|
|
|
|
|
# 判断是否为dB
|
|
|
|
|
|
# immask = np.isfinite(im_data)
|
|
|
|
|
|
# imvail_data = im_data[immask]
|
|
|
|
|
|
# minvalue = np.percentile(imvail_data,30)
|
|
|
|
|
|
# if minvalue<0 :
|
|
|
|
|
|
# im_data=np.power(10.0,im_data/10.0)
|
|
|
|
|
|
|
|
|
|
|
|
im_data=np.sqrt(im_data)
|
|
|
|
|
|
immask = np.isfinite(im_data)
|
|
|
|
|
|
imvail_data = im_data[immask]
|
|
|
|
|
|
|
|
|
|
|
|
minvalue=np.nanmin(imvail_data)
|
|
|
|
|
|
maxvalue=np.nanmax(imvail_data)
|
|
|
|
|
|
minvalue_01Prec = np.percentile(imvail_data, 2) # 20250904 1%拉伸
|
|
|
|
|
|
maxvalue_999Prec = np.percentile(imvail_data, 98)
|
|
|
|
|
|
print('sqrt root min - max ', minvalue,maxvalue)
|
|
|
|
|
|
if (maxvalue-minvalue)/(maxvalue_999Prec-minvalue_01Prec)>3: # 表示 拉伸之后,像素值绝大部分很有可能集中在 80
|
|
|
|
|
|
minvalue=minvalue_01Prec
|
|
|
|
|
|
maxvalue=maxvalue_999Prec
|
|
|
|
|
|
print('sqrt root min(0.1) - max(99.9) ', minvalue, maxvalue)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
im_data = (im_data - minvalue) / (maxvalue - minvalue) * 254 + 1
|
|
|
|
|
|
im_data = np.clip(im_data, 0, 255)
|
|
|
|
|
|
|
2025-09-22 05:39:35 +00:00
|
|
|
|
return im_data.astype(np.uint8)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2025-09-22 06:09:39 +00:00
|
|
|
|
# 常用网址
|
|
|
|
|
|
## 清华源地址
|
2025-09-22 05:39:35 +00:00
|
|
|
|
pip install nodezator -i https://pypi.tuna.tsinghua.edu.cn/simple
|
2025-09-22 06:09:39 +00:00
|
|
|
|
conda install numpy -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
|
|
|
|
|
|
|
|
|
|
|
|
## 腾讯元宝
|
|
|
|
|
|
https://yuanbao.tencent.com/chat/naQivTmsDa
|