示例代码1
import cv2
import numpy as np
# 三通道
img1 = cv2.imread('image1.jpg')
img2 = cv2.imread('image2.jpg')
# 确定两张图片的大小
height, width, channels = img1.shape
new_width = width + img2.shape[1]
# 创建一张新的图片
new_img = np.zeros((height, new_width, channels), dtype=np.uint8)
# 将第一张图片复制到新图片的左侧
new_img[:,:width,:] = img1
# 将第二张图片复制到新图片的右侧
new_img[:,width:,:] = img2
# 显示合并后的图片
cv2.imshow('Merged Image', new_img)
# 等待关闭窗口
cv2.waitKey(0)
# 释放资源
cv2.destroyAllWindows()
示例代码2
import cv2
import numpy as np
img1 = cv2.imread('image1.jpg')
img2 = cv2.imread('image2.jpg')
## 使用numpy
# 将两张图片垂直堆叠
img_vstack = np.vstack((img1, img2))
# 将两张图片横向拼接在一起
result = np.hstack([img1, img2])
# 将两张图片拼接到一起
img = np.concatenate((img1, img2), axis=1)
## 使用opencv
vimg = cv2.vconcat((img1, img2)) # 垂直方向
himg = cv2.hconcat((img1, img2)) # 水平方向
# 显示图片
cv2.imshow('Two Images in One Window', img_vstack)
cv2.waitKey(0)
cv2.destroyAllWindows()
代码示例3
首先需要安装 xlrd
和 xlwt
模块,可以使用以下命令安装:
pip install xlrd
pip install xlwt
然后可以使用以下代码将图片写入 Excel 单元格内,并调整单元格大小与图片匹配:
import xlwt
import xlrd
from PIL import Image
# 打开 Excel 文件
book = xlwt.Workbook(encoding='utf-8')
sheet = book.add_sheet('Sheet1')
# 打开图片文件,并设置图片大小
img = Image.open('image.jpg')
img_width, img_height = img.size
# 设置单元格宽度和高度与图片宽度和高度一致
sheet.col(0).width = img_width
sheet.row(0).height = img_height
# 将图片写入单元格
sheet.insert_bitmap('image.jpg', 0, 0)
# 保存 Excel 文件
book.save('image.xls')
此代码是将一张名为 image.jpg
的图片写入 Excel 的第一行第一列的单元格内,并设置单元格宽度和高度与图片宽度和高度一致。保存 Excel 文件的名字为 image.xls
。如果需要批量处理多张图片,可以使用循环语句来遍历所有图片。
示例代码4
以下是一个示例代码,可以实现将指定文件夹内所有图片路径及其对应的图片插入到指定的Excel表格内,并调整单元格大小以适应图片大小:
import os
from openpyxl import Workbook
from openpyxl.utils import get_column_letter
from openpyxl.drawing.image import Image
# 设置文件夹路径和Excel文件名
folder_path = r"C:folder_path"
excel_file = "images.xlsx"
# 创建Excel工作簿
wb = Workbook()
ws = wb.active
# 获取文件夹内所有图片路径和文件名
img_files = [f for f in os.listdir(folder_path) if f.endswith('.jpg') or f.endswith('.png')]
# 将文件名和路径分别写入Excel单元格
for i, img_file in enumerate(img_files):
row = i + 1
img_path = os.path.join(folder_path, img_file)
ws.cell(column=1, row=row, value=img_file)
ws.cell(column=2, row=row, value=img_path)
# 将图片插入Excel单元格并调整单元格大小
img = Image(img_path)
img_width, img_height = img.width, img.height
ws.row_dimensions[row].height = img_height / 3 # 调整行高
ws.column_dimensions[get_column_letter(3)].width = img_width / 6 # 调整列宽
# 将图片添加到单元格中
cell = sheet.cell(row=i+1, column=1)
cell.value = img_path
cell.alignment = openpyxl.styles.Alignment(horizontal='center', vertical='center')
# cell._style = openpyxl.styles.NamedStyle(name='Hyperlink',
# hyperlink=f'HYPERLINK("{image_path}")')
ws.add_image(img, f"C{row}") # 在指定单元格添加图片
# 保存Excel文件
wb.save(excel_file)
在上述代码中,我们使用了openpyxl库来处理Excel表格,并使用os库来获取指定文件夹内的所有图片文件路径和文件名。对于每个图片文件,我们将其文件名和路径分别写入Excel单元格的第1列和第2列,然后将该图片插入Excel单元格的第3列并调整单元格大小以适应图片大小。最后保存Excel文件。
原文地址:https://blog.csdn.net/qq_39506862/article/details/134555061
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_3238.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。