之前我是学 PHP 的,知道要执行 php 文件,直接在 php 运行环境中执行 filename.php 就可以在浏览器执行了,而 Python 好像不行。
刚开始学习 Python,网上找了些资料还看不明白,但是在命令行工具我会使用,今天写了个 opencv 的实例,想要在浏览器显示处理后的图片。
import cv2
import numpy as np
import random
import string
img=cv2.imread('img-2.jpg')
#缩放
rows,cols,channels = img.shape
img=cv2.resize(img,None,fx=0.5,fy=0.5)
rows,cols,channels = img.shape
cv2.imshow('img',img)
#转换 hsv
hsv=cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
lower_blue=np.array([90,70,70])
upper_blue=np.array([110,255,255])
mask = cv2.inRange(hsv, lower_blue, upper_blue)
cv2.imshow('Mask', mask)
#腐蚀膨胀
erode=cv2.erode(mask,None,iterations=1)
cv2.imshow('erode',erode)
dilate=cv2.dilate(erode,None,iterations=1)
cv2.imshow('dilate',dilate)
#遍历替换
for i in range(rows):
for j in range(cols):
if dilate[i,j]==255:
img[i,j]=(0,0,255)#此处替换颜色,为 BGR 通道
# 显示图片
cv2.imshow('res',img)
# 生成文件名
seed = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
sa = []
for i in range(10):
sa.append(random.choice(seed))
filename = ''.join(sa)
# 保存图片
cv2.imwrite(filename+".jpg", img);
cv2.waitKey(0)
cv2.destroyAllWindows()
怎么在浏览器执行这个 opencv.py 的?
直接显示图片或者返回 json 也好