图像像素0-1转换为0-255

图像像素0-1转换为0-255

import matplotlib.pyplot as plt
from skimage import io,data
import os
import cv2
import pydicom
import numpy as np
import nibabel as nib
import SimpleITK as sitk
import matplotlib.pyplot as plt
%matplotlib inline
folderPath = 'new_png_256'
for folder in os.listdir(folderPath):
#     new_png_256\test
    file_path = os.path.join(folderPath,folder)
    for file in os.listdir(file_path):
#         new_png_256\test\img
        img_path = os.path.join(file_path,file)
        for img in os.listdir(img_path):
            image_path = os.path.join(img_path,img)
            image = cv2.imread(image_path) 
            image = (np.maximum(image, 0) / image.max()) * 255.0
            image = np.uint8(image)
            cv2.imwrite(f'png_256_0-255/{folder}/{file}/{img}',image)  #save_path为保存路径
  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
### 回答1: 答:将像素值进行线性变换即可,具体步骤为: 1. 找出图像中最小和最大的像素值(min和max) 2. 对每个像素值进行线性变换: new_pixel_value = (old_pixel_value - min) * 255 / (max - min) 这样,所有像素的值就都在0-255之间了。 ### 回答2: 将图像像素值归一化到0-255范围可以通过以下步骤实现: 1. 首先,获取图像的最小像素值和最大像素值。可以使用像素矩阵中的min()和max()函数来计算这些值。 2. 然后,计算一个缩放因子scale,通过将255除以最大像素值与最小像素值之间的差异来计算。scale = 255 / (max_value - min_value) 3. 接下来,对于每个像素值,通过将其减去最小像素值,并将其乘以缩放因子,来将其映射到0-255范围内的新像素值。新像素值 = (原始像素值 - min_value) * scale 4. 最后,将新的像素值赋值给图像矩阵中的相应像素位置。 这样,经过上述步骤处理后,图像像素值将归一化到0-255范围。这种归一化可以提高图像的对比度,使得图像更加清晰和易于处理。 ### 回答3: 将图像像素归一化到0-255范围,可以通过以下步骤实现: 1. 获取图像的最小像素值和最大像素值。 2. 使用下面的公式计算每个像素值的归一化值: 归一化值 = (像素值 - 最小像素值) * (255 / (最大像素值 - 最小像素值)) 这样可以将最小像素值映射到0,最大像素值映射到255,将其他像素值映射到0-255范围内。 3. 将所有的像素值替换为对应的归一化值。 以上是一种常用的方法,称为线性归一化或线性拉伸。如果使用编程语言进行图像处理,会提供直接实现该功能的函数或方法,可以直接调用来完成像素归一化。 注意:在进行像素归一化之前,可能需要将图像从原始的颜色空间(如RGB)转换为灰度图像,因为灰度图像像素值范围是0-255

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值