对复数数据实现归一化

1、主要思路:
1)最大最小归一化,对模值进行
2)利用幅角转换为复数数据
实现代码

 normalized_image_list = []
    for image in croped_image_list:
        assert image.dtype == np.complex128
        
        maximum = np.abs(image).max()
        minimum = np.abs(image).min()
        magni=np.abs(image)
        magni=(magni-minimum)/(maximum-minimum)
        ang=np.angle(image)
        real=magni*np.cos(ang)
        img=magni*np.sin(ang)*1j
        normalized_image = real+img

        normalized_image_list.append(normalized_image)

测试原理代码(基于numpy)

import numpy as np
a=1+1j
print('np.abs(a)',np.abs(a))
magnitude=np.abs(a)
ang=np.angle(a)
print(magnitude)
print(np.cos (ang)) 
real=magnitude* np.cos( ang)
img=magnitude* np.cos( ang)
print(real)
print(img)
b=real+img*1j
print(b)
print('np.abs(b)',np.abs(b))

'''
对应的运行结果:
np.abs(a) 1.4142135623730951
1.4142135623730951
0.7071067811865476
1.0000000000000002
1.0000000000000002
(1.0000000000000002+1.0000000000000002j)
np.abs(b) 1.4142135623730954
'''

猜你喜欢

转载自blog.csdn.net/m0_45290027/article/details/127434126