24.7.28学习笔记

下先学PYTHON基本语法

字典:items() 是一个常用的方法,主要用于字典(dict)对象。它返回一个视图对象,该对象包含字典的键值对(key-value pairs)。这个视图对象可以被用来遍历字典中的所有项。

在 Python 中,keys() 是一个字典(dict)对象的方法,用于返回字典中所有键的视图。这个视图对象可以被用来遍历字典的键,或者将其转换为列表等其他数据结构。

在 Python 中,range() 是一个内置函数,用于生成一个整数序列。这个函数通常用于循环(如 for 循环)中,以便在一定范围内迭代。

使用 range() 函数

range() 函数可以接受三个参数:startstop 和 step。下面是它们的含义:

  • start:序列的起始值(默认为 0)。
  • stop:序列的结束值(不包括该值)。
  • step:序列中两个数之间的步长(默认为 1)。

# 生成从 0 到 4 的整数序列
for i in range(5):
    print(i)
# 生成从 2 到 6 的整数序列
for i in range(2, 7):
    print(i)
# 生成从 0 到 10 的偶数
for i in range(0, 11, 2):
    print(i)
 

字典列表就是列表里面放字典

字典列表:先创个空列表,然后把字典用append.()一个个加进去

列表字典:a={'a':['xx','bb],'b':['we','rqq']},注意是先[ ],再' '

字典中有字典:a={'people1':{'name':'a','age';’22‘},’people2‘:{'name':'iuue','age':'213'}},也是先{ },再' '

数字图像处理

像元的位置就是数组下标,像元的亮度值就是所对应下标表示的那个值

灰度级(Grayscale Level)是指在图像处理中,用于表示图像中每个像素的亮度或灰度值的离散级别。在灰度图像中,像素的颜色值通常是从黑到白的不同灰度,通常用一个数值来表示其亮度。以下是关于灰度级的一些关键点:(灰度级越高,由黑到白变化的层次就越多

 灰度级的定义

  • 灰度级是指图像中每个像素的亮度值,通常以整数形式表示。例如,常见的灰度级有 0(黑色)到 255(白色),在这种情况下,256 个不同的灰度级使得每个像素可以表示为一个 8 位二进制数。

对比度:在图像中,对比度是指亮度值的范围和差异。简单来说,它是图像中最亮的部分与最暗的部分之间的差异程度。

1. 4 邻域(4-neighborhood)

4 邻域是指一个像素的上下左右四个直接相邻的像素。在一个二维图像中,对于一个像素 (x,y)(x,y),其 4 邻域的像素坐标为:

  • (x−1,y)(x−1,y) (上方)
  • (x+1,y)(x+1,y) (下方)
  • (x,y−1)(x,y−1) (左方)
  • (x,y+1)(x,y+1) (右方)
特点:
  • 4 邻域只考虑直接相邻的像素,不包括对角线方向的像素。
  • 在某些情况下,4 邻域可以有效地捕捉图像中的结构。

2. D 邻域(D-neighborhood)

D 邻域是一个更广泛的概念,通常指的是一个像素周围的所有相邻像素,包括对角线方向的像素。在一个二维图像中,对于一个像素 (x,y)(x,y),其 D 邻域的像素坐标为:

  • (x−1,y−1)(x−1,y−1) (左上方)
  • (x−1,y)(x−1,y) (上方)
  • (x−1,y+1)(x−1,y+1) (右上方)
  • (x,y−1)(x,y−1) (左方)
  • (x,y)(x,y) (中心像素)
  • (x,y+1)(x,y+1) (右方)
  • (x+1,y−1)(x+1,y−1) (左下方)
  • (x+1,y)(x+1,y) (下方)
  • (x+1,y+1)(x+1,y+1) (右下方)
特点:
  • D 邻域包括了 4 邻域的所有像素,并增加了对角线方向的像素。
  • D 邻域可以提供更多的上下文信息,有助于更复杂的图像处理任务。

降低图像对比度:

enhance() 是 PIL(Pillow)库中 ImageEnhance 模块的一个方法,用于调整图像的某种特性,比如对比度、亮度、颜色和清晰度等。具体来说,enhance() 方法可以根据传入的因子值来增强或减弱图像的特性。

enhance() 方法的基本用法

语法

ImageEnhance.Contrast(image).enhance(factor)

参数
  • factor: 一个浮点数,表示增强的因子。
    • factor = 1.0:图像特性保持不变。
    • factor < 1.0:减少特性(例如,降低对比度)。
    • factor > 1.0:增强特性(例如,增加对比度)。
返回值
  • 返回经过增强处理后的图像对象。
  • # 创建对比度增强对象 enhancer = ImageEnhance.Contrast(img)
  • # 原图对比度因子 original_contrast = enhancer.enhance(1.0)   # 原图,不改变对比度 
  • #降低对比度 low_contrast = enhancer.enhance(0.5)    # 降低对比度
  • # 增加对比度 high_contrast = enhancer.enhance(1.5) # 增加对比度

会使用了用opencv对图片的缩放和放大。

下图为缩小一半,以及使用缩放因子来指定图像的放大或缩小比例。缩放因子是一个浮点数,表示相对于原图的比例。例如,缩放因子为0.5表示缩小到一半,缩放因子为2表示放大两倍。

import cv2
2
3# 读取图像
4image_path = r'D:\study pic\down.jpg'
5image = cv2.imread(image_path)
6
7# 检查是否成功读取图像
8if image is None:
9    print("Could not read the image.")
10else:
11    # 获取图像尺寸
12    height, width = image.shape[:2]
13
14    # 缩小图像尺寸为原来的一半
15    resized_image = cv2.resize(image, (int(width/2), int(height/2)))
16
17    # 显示原图和缩小后的图像
18    cv2.imshow('Original Image', image)
19    cv2.imshow('Resized Image', resized_image)
20
21    # 等待按键,然后关闭窗口
22    cv2.waitKey(0)
23    cv2.destroyAllWindows()
import cv2
2
3# 读取图像
4image_path = r'D:\study pic\down.jpg'
5image = cv2.imread(image_path)
6
7# 检查是否成功读取图像
8if image is None:
9    print("Could not read the image.")
10else:
11    # 获取图像尺寸
12    height, width = image.shape[:2]
13
14    # 缩放因子
15    scale_factor = 2.0  # 放大两倍
16
17    # 使用缩放因子来调整图像尺寸
18    resized_image = cv2.resize(image, None, fx=scale_factor, fy=scale_factor)
19
20    # 显示原图和放大后的图像
21    cv2.imshow('Original Image', image)
22    cv2.imshow('Resized Image', resized_image)
23
24    # 等待按键,然后关闭窗口
25    cv2.waitKey(0)
26    cv2.destroyAllWindows()

结束今天的学习,尝试先把代码看懂。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值