下面是一个简单的例子,可以使用OpenCV库来数一张图片中的小球数量:
import cv2
# 读取图片
img = cv2.imread("balls.jpg")
# 将图片转换为灰度图
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 使用阈值分割法,得到二值图
thresh = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)[1]
# 寻找图像中的轮廓
cnts = cv2.findContours(thresh.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
cnts = imutils.grab_contours(cnts)
# 显示图像中的轮廓数量
print("图像中的轮廓数量:{}".format(len(cnts)))
图片计数器? 网上常见的独立图片计数器原理是这样: 1 整个数字是由0-9十个数字图片组合而成; 2 使用程序判断访问者信息 2 使用 session / cookies 防止同一用户的多次刷新 3 使用 XML/txt/数据库 保存历史访问数据。 4 流程网页被浏览时,程序读数据纪录文件,得到访问者数字 5 调用所需图片组成计数器大图 6 处理新访问者信息 下面是一段 ASP+TXT 的计数程序: countlong=8 ′countlong定义计数器显示位数 On Error Resume Next ′ 忽略所有的错误 count=server.mappath(〃count.txt〃) set cou = server.createobject(〃scripting.filesystemobject〃) set out=cou.opentextfile(count,1,false,false) counter=out.readline out.close ′以上代码是打开文件count.txt并读取一行,读出目前计数器的值 if session(〃in〃)$#@60$#@62〃in〃 then ′判断用户是否已进入主页,以确保他按刷新或再次来到此页面时计数器不会再加1 session(〃in〃)=〃in〃 set out = cou.createtextfile(count,true,false) application.lock counter=counter+1 ′计数器加1 out.writeline(counter) application.unlock out.close ′以上代码是建立一个新的文件count.txt并写入一行,写入加1后计数器的值 end if co=cstr(counter) ′cstr函数用来把数字型变量转换成字符型 for i = 1 to countlong-len(co) response.write 〃〃 next ′上面的循环语句是完成计数器前面的0图片的添加 ′len(co)函数是得到变量co的长度,countlong-len(co)就得到前面0图片的个数 for i= 1 to len(co) response.write 〃〃 next ′mid(co,i,1)函数是用来从变量co的第i位开始读一个字符 以上是程序代码,0-9十个数字可以自己设计或者从网上搜索。记得采纳啊
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)