基于python使用CV裁剪图片

【python】批量裁剪图片为指定大小,按位置截取,cv2(批量制作主图) 京东电商的主图需要800*800和624*800两种不同的尺寸(不同类目有所不同), 得到的素材是一份800*800的图片,手动裁剪成624*800效率太低了, python又派上用场了! 用cv2模块,可以快速将图片裁剪成所需要的大小,至于裁剪的位置嘛,需要事先计算一下。 改进方向:自动按中间的位置裁剪,再升级可以改进为自动识别中心位置并进行裁剪 【这次升级为批量裁剪啦!】 1. 安装cv2模块 pip install -i https://pypi.tuna.tsinghua.edu.c 阅读详情

1 基本需求

使用CV使用将一张长图片裁剪成高度相同宽度不变的多张图片。例如:"1.png" 转化为“1-1.png"、“1-2.png"、“1-3.png"、……

裁剪图片有两种方法,一种使用CV(推荐),另一种使用Pillow,我使用Pillow总是提示各种错误(可能是我没有弄懂他的开发文档)

2 截图

3 代码

cut_item_img_cv(file_name, in_img_path, out_dir):
    img = cv2.imread(in_img_path)
    # 新裁剪图片的高度
    new_img_height = 900
    # 获得图片的高度和宽度
    img_height, img_width, _ = img.shape
    temp_height = 0
​
    i = 1
    while temp_height < img_height:
        # 裁剪坐标为[y0:y1, x0:x1]
        size = img[temp_height:temp_height + new_img_height, 0:img_width]
        
        # 图片最后结尾长度不够
        if temp_height>img_height:
            size = img[temp_height-new_img_height:img_height, 0:img_width]
        
        # 保存图片
        cv2.imwrite(os.path.join(out_dir, file_name+str(i) + ".png"), size)
        i = i + 1
        
        # 向下移动高度
        temp_height = temp_height + new_img_height
​
if __name__ == '__main__':
    file_name = "1"
    in_img_path = r'./new_picture/test/3.png'
    out_dir = r'./new_picture/new_test'
    cut_item_img_cv(file_name, in_img_path, out_dir)
Opencv 基础(三):使用OpenCV裁剪图像 裁剪是从图像中移除所有不需要的物体或区域。甚至可以突出显示图像的特定特征。 没有使用OpenCV进行裁剪的特定函数,NumPy数组切片是做这项工作的。读取的每个图像都存储在一个2D数组中(对于每个颜色通道)。简单地指定要裁剪区域的高度和宽度(以像素为单位)。 下面的代码片段展示了如何使用Python和c++裁剪图像。在本文中,您将进一步了解这些细节。 Python # Import packages import cv2 import numpy as np img = cv2.imread('test. 阅读详情

相关推荐

【python代码】图片平均裁剪为固定大小以及运行python脚本时出现no module named cv2

import cv2 img = cv2.imread("/18.jpg") print(img.shape) cropped = img[0:800, 0:1476] # 裁剪坐标为[y0:y1, x0:x1] cv2.imwrite("/cv_cut_thor.jpg", cropped) 解决办法: 使用命令 pip install opencv-python 错误命令 pip install cv2

程序猿未进化的博客 664

python cv2图片剪裁

import cv2#读取图片#获取宽度和高度height=len(img)width=len(img[0])print(img)img=img[int(height/2):height,0:width]height=len(img)width=len(img[0])print('图片大小%dX%d'%(width,height))#显示图片cv2.imshow('title',img)cv2.w...

FormatFa的博客 4万+

在Python中使用OpenCV裁剪图像

现在,我们可以定义要裁剪的感兴趣区域的坐标。假设您要裁剪的区域位于图像的左上角,其左上角坐标为(x1, y1),右下角坐标为(x2, y2)。在图像处理中,裁剪(或截取)图像是一项常见的操作,它允许我们从原始图像中提取感兴趣的区域。在本篇文章中,我将向您展示如何在Python中使用OpenCV库来裁剪图像。通过运行这段代码,您将能够加载图像,并从中裁剪出指定的感兴趣区域。裁剪后的图像将显示在一个新的窗口中。以上代码使用NumPy数组的切片功能,从原始图像中提取出指定区域的图像。上述代码中,我们使用。

WzisTypescript的博客 720

Python+opencv裁剪/截取图片的几种方式

文章目录前言一、手动单张裁剪/截取二、根据图片的位置坐标进行裁剪/截取三、opencv获取边缘并根据bounding box截取/裁剪目标四、用YOLO目标检测框裁剪并批量保存总结 前言 在计算机视觉任务中,如图像分类,图像数据集必不可少。自己采集的图片往往存在很多噪声或无用信息会影响模型训练。因此,需要对图片进行裁剪处理,以防止图片边缘无用信息对模型造成影响。本文介绍几种图片裁剪的方式,供大家参考。 一、手动单张裁剪/截取 selectROI:选择感兴趣区域,边界框框选x,y,w,h selectR

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 23万+

HDI盲埋孔设计规范:高速PCB信号完整性落地指南

盲埋孔是高密度互连(HDI)PCB实现高速信号完整性的关键技术,其本质是通过控制过孔stub长度、优化回流路径和提升布线密度,解决GHz级信号在传统通孔结构下出现的谐振、串扰与EMI超标问题。其设计核心在于叠层物理约束、电气参数建模与工艺能力协同,涉及stub长度计算、反焊盘尺寸推导、孔壁粗糙度Rz控制等关键指标。广泛应用于DDR4、PCIe Gen4、USB3.2等高速接口的PCB设计中,尤其在车载ADAS、5G基站及FPGA载板等对SI/PI要求严苛的场景中成为刚性门槛。

weixin_34416754的博客 437

【Linux】Petalinux使用QSPI FLASH引导启动

1. 预分配Flash空间使用Flash引导Petalinux做的系统,也有进阶的做法。部分图片和经验来源于网络,若有侵权麻烦联系我删除,主要是做笔记的时候忘记写来源了,做完笔记很久才写博客。1. 预分配Flash空间根据生成的bit文件大小估算BOOT.BIN文件的大小,为Flash大概分配四个分区:boot、bootenv、kernel、bootscr,分别存放BOOT.BIN文件、u-boot的环境变量、内核文件(image.ub/zImage/uImage等)、启动脚本boot.scr。

Tesseract_9527的博客 3375

利用OpenCV对图像进行裁剪

简 介: 本文中我们讨论了利用 C++, Python对图像进行剪切的基本方法, 这些方法都是应用了对于矩阵的切片操作完成的。指定剪切图片在图像数据矩阵中对应的高、宽的范围,对应范围的数据代表了切割出来的图像。通过 imwirte, imshow 可以将切割下的图片进行存储和显示。 后面也进一步讨论了如何对大的图片进行分割,形成许多小的图片的方法。 关键词: 图片剪切,crop #mermaid-svg-BNm0jchiCCvITvhq .label{font-family:'trebuchet ms..

TSINGHUAJOKING 6万+

实战指南:UOS专业版命令行高效下载离线安装包及依赖

本文提供了一份UOS专业版离线安装包的实战下载指南。针对无外网环境下的软件部署难题,详细介绍了如何通过命令行精准获取软件包名,并利用`apt download`命令高效下载主程序及其所有依赖。文章重点解析了使用`apt install --dry-run`模拟安装来完整获取依赖包的方法,并给出了离线安装、问题排查及自动化脚本编写等高级技巧,帮助管理员和运维人员实现可靠的批量离线部署。

honey的博客 1110

python cv2 通过物体轮廓裁剪图片中的物体

这里写自定义目录标题python cv2 通过物体轮廓裁剪图片中的物体 python cv2 通过物体轮廓裁剪图片中的物体 参考文献: (1)python-opencv2利用cv2.findContours()函数来查找检测物体的轮廓: https://blog.youkuaiyun.com/hjxu2016/article/details/77833336 (2)使用Python中的OpenCV访问轮廓边界内的像素值(Access pixel values within a contour boundary usin

tpz789的博客 7593

UNITY3D万人同屏,Dots万人同屏解决方案_类萌宠宠之战

UNITY3D弹幕游戏开发,万人同屏解决方案

6472

海思Hi3516CV610--SPI NAND Flash移植实战:从手册到驱动的完整适配

本文详细介绍了海思Hi3516CV610芯片上SPI NAND Flash的移植实战,包括从手册解读到驱动适配的完整流程。以GD5F2GM7UEYIGR Flash为例,重点讲解了关键参数确认、模式选择、时序配置以及U-Boot和Linux内核驱动的具体实现步骤,帮助开发者快速完成Flash移植工作。

weixin_29158413的博客 447

【python】 使用cv2 和 PIL裁剪图片

【python】 使用cv2 和 PIL裁剪图片 1.效果 2.代码 import cv2 from PIL import Image if __name__ == '__main__': #cv2 img1 = cv2.imread("D:/data/sg_wimg/v4/img/2.jpg") cv2_crop = img1[0:128, 0:512] # [upper: lower, left: right] cv2.imshow("cv_test", cv2_

mtl1994的博客 925

使用RV1126实现人脸识别——将Facenet模型转换为RKNN模型

在本文中,我们将探讨如何在RV1126芯片上实现人脸识别,并将Facenet模型转换为RKNN(Rockchip Neural Network)模型,以在RV1126上进行高效的人脸识别。Fine-tuning是指在预训练模型的基础上,使用自己的数据集进行进一步训练,以适应特定的任务。同时,我们需要下载Facenet模型的预训练权重,这些权重将作为我们的基础模型。综上所述,我们详细介绍了如何在RV1126上实现人脸识别,并将Facenet模型转换为RKNN模型。方法将模型导出为RKNN格式的文件。

code_program481的博客 1522

【python】裁剪图片为指定大小,按位置截取,cv2(批量制作主图)

京东电商的主图需要800*800和624*800两种不同的尺寸(不同类目有所不同), 得到的素材是一份800*800的图片,手动裁剪成624*800效率太低了, python又派上用场了! 用cv2模块,可以快速将图片裁剪成所需要的大小,至于裁剪的位置嘛,需要事先计算一下。 改进方向:自动按中间的位置裁剪,再升级可以改进为自动识别中心位置并进行裁剪 import cv2 img = cv2.imread("./cut/1.jpg") print(img.shape) cropped = .

HelenLee 1万+

【GPFS专题4】---IBM Spectrum Scale (GPFS) 原理详解

IBM Spectrum Scale(原名为 GPFS,General Parallel File System)是一种高性能、分布式的集群文件系统,专为大规模数据共享和并行访问设计。它允许多个客户端同时访问共享文件,提供高可用性、容错性和扩展性,广泛应用于高性能计算(HPC)、大数据分析、AI 训练和企业级存储场景。IBM Spectrum Scale 通过分布式架构、并行访问和智能数据管理,为企业提供了高性能、高可用、可扩展的存储解决方案。

jundao1997的专栏 780

[Dify实战] 多轮对话状态管理:上下文保持与槽位填充

本文探讨了基于LLM的对话应用中多轮对话状态管理的核心挑战与解决方案。文章指出,单纯的"能聊"远远不够,关键在于建立有效的状态管理机制,包括上下文保持和槽位填充两大核心能力。通过Dify实战视角,详细阐述了如何设计工程化落地方案:采用混合策略的上下文管理(窗口+摘要+关键槽位)、JSON Schema强约束的槽位抽取、统一状态对象存储、冲突处理机制和优化追问策略。文章特别强调,合理的状态管理能将"聊天"转化为"可执行的业务流程",避免模型成为&qu

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 237

python裁剪图片并保存_python PIL和CV对 图片的读取,显示,裁剪,保存实现方法

python PIL和CV对 图片的读取,显示,裁剪,保存实现方法PIL 图片操作读取图片img = Image.open(“a.jpg”)显示图片im.show() # im是Image对象,im是numpy类型,通过Image.fromarray(nparr, mode='RGB')函数转换为Image对象图片的size(width, height) = img.size图片的模式mode =...

weixin_39930144的博客 975

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

python3实现cv2+numpy裁剪不规则四边形图片

python3 裁剪不规则四边形图片

Zack的博客 1445

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

python CV2裁剪图片并保存

import cv2 img=cv2.imread("timg.jpg") cv2.imshow("before cut",img) cv2.waitKey(0) img=img[10:650,300:600] # 第一个范围表示高度 第二个范围表示宽度 cv2.imshow("after cut",img) cv2.imwrite("cutimage",img) cv2.waitKey(0)...

weixin_38383877的博客 9655

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

python中 cv2如何裁剪图片

在 python 中,使用 OpenCV 库中的 cv2.imread() 函数读取图像,cv2.imshow() 函数显示图像,cv2.imwrite() 函数保存图像,然后使用 numpy 库中的索引和切片功能来裁剪图像。 下面是一个示例: import cv2#读取图片 img = cv2.imread("example.jpg") #裁剪的位置和大小 x = 100 y = 200 w ...

weixin_35754962的博客 1306

【python】opencv教程CV2模块——图片处理,裁剪缩放加边框

opencv教程CV2模块——图片处理,裁剪缩放加边框 import cv2 # 读取图片 img = cv2.imread('./imgg/1.jpeg') # 缩放成200x200的方形图像 img_200x200 = cv2.resize(img, (200, 200)) # 不直接指定缩放后大小,通过fx和fy指定缩放比例,0.5则长宽都为原来一半 # 等效于img_200x30...

HelenLee 2077

Python 读取xml数据,cv2裁剪图片

下载的数据是pascal voc2012的数据,已经有annotation了,不过是xml格式的,训练的模型是在Google模型的基础上加了两层网络,因此要在原始图像中裁剪出用于训练的部分图像。另外,在原来给的标注框的基础上,做了点框的移动。最后同类目标存储在同一文件夹中。 from __future__ import division import os from PIL impo

4819

python PIL和CV对 图片的读取,显示,裁剪,拉伸,保存

PIL 图片操作 读取图片 img = Image.open(“a.jpg”) 显示图片 im.show() # im是Image对象,im是numpy类型,通过Image.fromarray(nparr, mode='RGB')函数转换为Image对象 图片的size (width, height) = img.size 图片的模式 mode = img.mode 裁剪...

luolinll1212的专栏 9228
上一篇: Python安装PaddleOCR
下一篇: vue组件懒加载
MasonYyp
博客等级 码龄9年 301粉丝 297原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值