python在图片上添加文字 - cv2模块的安装与使用
一、cv2的安装
- 一般来说,在pycharm中安装包的方式如下:
- 点击“+”之后,在搜索框中输入“cv2”,点击下方的“Install package”
- 但是这个包在安装过程中一直报错,安装不成功,错误信息如下:
- 于是在看了很多大佬的解决方法之后,最终用如下方法成功解决:
安装上述操作步骤,将"cv2"换成"opencv-python",即可安装成功。
- 如上图,"opencv-python"已经在packages列表中了,在程序中
import cv2
,没有报错,说明这个包现在可以开始使用了。
二、cv2的使用-在图片上添加文字
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Time : 2021/8/6 17:24
# @Author : sxgjmn
import cv2input_img = 'C:/Users/DELL/Desktop/pathway-gene-ppi_legend.png'
output_img = 'C:/Users/DELL/Desktop/pathway-gene-ppi_legend_2.png'
edge_node_dir = 'C:/Users/DELL/Desktop/生信项目/Cytoscape网络开发/test_data_2'def get_node_count_pvalue(indir):# Get max value and min value of nodes Count and pvaluenode_file = indir + '/node_edge/pathway-pathway_node.txt'count = []pvalue = []infile = open(node_file, 'r')for line in infile.readlines():row = line.rstrip().split('\t')if row[0] == 'id':continueelse:count.append(row[3])pvalue.append(row[2])count = list(map(int, count))pvalue = list(map(float, pvalue))max_count = max(count)min_count = min(count)max_pvalue = '{:.3f}'.format(max(pvalue))min_pvalue = '{:.3f}'.format(min(pvalue))infile.close()return max_count, min_count, max_pvalue, min_pvaluedef get_edge_value(indir):# Get max and min value of edges valueedge_file = indir + '/node_edge/pathway-pathway_edge.txt'value = []infile = open(edge_file, 'r')for line in infile.readlines():row = line.rstrip().split('\t')if row[0] == 'id':continueelse:value.append(row[3])value = list(map(int, value))max_value = max(value)min_value = min(value)infile.close()return max_value, min_valuedef add_text_png(input_img, output_img, edge_node_dir):# Add text in imagein_img = cv2.imread(input_img)max_count, min_count, max_pvalue, min_pvalue = get_node_count_pvalue(edge_node_dir)max_value, min_value = get_edge_value(edge_node_dir)cv2.putText(in_img, max_pvalue, (105, 69), cv2.FONT_HERSHEY_SIMPLEX, 0.55, (0, 0, 0), 1, cv2.LINE_AA) cv2.putText(in_img, min_pvalue, (105, 225), cv2.FONT_HERSHEY_SIMPLEX, 0.55, (0, 0, 0), 1, cv2.LINE_AA)cv2.putText(in_img, str(min_count), (120, 345), cv2.FONT_HERSHEY_SIMPLEX, 0.55, (0, 0, 0), 1, cv2.LINE_AA)cv2.putText(in_img, str(max_count), (120, 410), cv2.FONT_HERSHEY_SIMPLEX, 0.55, (0, 0, 0), 1, cv2.LINE_AA)cv2.putText(in_img, str(min_value), (120, 520), cv2.FONT_HERSHEY_SIMPLEX, 0.55, (0, 0, 0), 1, cv2.LINE_AA)cv2.putText(in_img, str(max_value), (120, 560), cv2.FONT_HERSHEY_SIMPLEX, 0.55, (0, 0, 0), 1, cv2.LINE_AA)cv2.imshow("pathway-gene-ppi_legend_2", in_img)cv2.waitKey()cv2.imwrite(output_img, in_img)add_text_png(input_img, output_img, edge_node_dir)
上面的程序里,前两个函数是处理数据的,第三个才是添加文字的,"(105, 69)"这里的数字是文字在图片上的位置,"0.55"是字体的大小,其他参数基本不需要调。
python在图片上添加文字 - cv2模块的安装与使用相关推荐
- 用Python在图片上添加文字
需求 需求就是一批图片,在固定位置加上相应文字.为查看折线图的人在一张图片上提供足够的信息. 代码 其实只需要寥寥数行代码就能实现, 而且支持调整字体.大小.颜色 from PIL import Im ...
- python怎么加图片_怎么在图片旁边加文字 python如何在图片上添加文字 - 励志 - 52资讯网...
Python在图片上添加文字的两种方法:OpenCV和PIL 一.OpenCV方法 1.安装cv2 pip install opencv-python 2.利用putText方法来实现在图片的指定位置 ...
- Python---在图片上添加文字
使用PIL在图片上添加文字 from PIL import Image, ImageDraw, ImageFont# 创建空白图像 height = 1000 width = 500 img = Im ...
- chatgpt赋能python:Python去除图片上的文字:技术与应用
Python去除图片上的文字:技术与应用 随着互联网的发展,图片的使用越来越广泛.然而,有些图片上却存在着不必要的文字,影响了用户的阅读体验和SEO效果.在这种情况下,Python可以帮助我们快速.准 ...
- opencv怎么在图片上添加文字?
在 OpenCV 中,可以使用 cv2.putText() 函数在图像上添加文本.这个函数需要指定文本.文本位置.字体.字体比例.颜色.线宽等参数. opencv怎么在图片上添加文字? 下面是一个示例 ...
- 在图片上添加文字并生成图片
在图片上添加文字并生成图片 开发工具与关键技术:Visual Studio 2015 作者:李德新 撰写时间:2019年6月04日 在我们的日常生活中,我们经常能看到各样格式的表单,而且有时候我们还要 ...
- html和css的图片怎么加,html+css如何在图片上添加文字
html+css如何在图片上添加文字 2018-09-14 效果如图 思路:div相对定位. 图片默认定位, 文字绝对定位 参考代码 html> /*div1下面 包含着1个图片和1段文字*/ ...
- Python 给图片上加文字
import PIL from PIL import ImageFont import PIL from PIL import ImageFont from PIL import Image from ...
- 使用Python在图片上增加文字
在一些应用场景中,我们需要将一些自定义的文字内容附加到某张图片中.本篇文章将对这一功能进行实现. import PIL from PIL import ImageFont,Image,ImageDra ...
最新文章
- 实验三-密码破解技术
- 开发计费系统中学到的 5 件事
- boost::sort模块实现使用字符串键和索引函子对结构进行排序的示例
- 搭建Spring开发环境并编写第一个Spring小程序
- 数据库-MySQL-数据库设计-主键与索引
- 求解斐波那契数列复杂度分析
- 开源软件许可协议简介
- python logging模块使用详解
- 城建税和教育费附加怎么计算
- Python多继承及MRO顺序
- 在openSUSE编译OpenFOAM
- Windows漏洞修复服务器,Windows Server 2008相关系统漏洞修复
- RocketMQ实战疑问和原理解答(更新至Q9)
- Redis教程(上课笔记)
- Java学习笔记01—Java概述、数据类型、变量、标识符、类型转换
- c语言合法标识符号大全,C语言合法标识符
- 线性代数——向量组的线性相关性
- 计算机的位、字节、字
- macOS Command - xattr
- 一篇文章把你带入到JavaScript中的闭包与高级函数
热门文章
- mysql群发消息_百万级用户量的站内信群发数据库设计
- 数据挖掘十大经典算法--CART: 分类与回归树
- Linux命令学习资料总结
- 强柱的治疗目标_24周疗效预测因素
- 云服务器及其存储性能测试方法
- 豆瓣APP上线7.0新版本,从工具到社区的进化之路
- RuntimeError: Trying to backward through the graph a second time (or directly access saved tensors a
- 操作系统中消费者与生产者的同步互斥问题
- 罗永浩直播卖货,体现了一个年近50岁男人的无奈
- 手机ppi排行测试软件,2018主流厂商旗舰手机屏幕测试数据汇总和子项排名统计...