发布时间:2025-06-26
浏览次数:0
众多同学对此应当有所认知,然而,相当一部分同学依旧局限于对数据分析以及交互式开发的了解。
其实,除了这些之外, 还可以完成很多你意想不到的事情。
工具包的制作、幻灯片的构建、电子书的编纂、博客的撰写、报告的编制、数据看板的搭建、REST API的构建以及网页应用的开发等。
以网页应用开发为例,提及这一领域,众多同学首先联想到的是涉及前端开发、后端编程以及服务部署等一系列复杂环节,这些环节要求开发者掌握HTML、Java等必要技能。
其实,通过 就可以开发一款可部署的网页应用。
下面,就以一个图像处理的网页应用为例给大家演示一下。
准备工作
在进行正式的开发活动之前,需首先完成开发环境的搭建以及工具包的配置等基础准备工作。
环境配置
构建一个独立的虚拟空间,专为此网页应用服务,这样做的优势在于能够确保各应用环境相互独立,有效防止因项目或应用间工具包版本不一而引发的矛盾。
virtualenv sketchenv
source sketchenv/bin/activate
这里的是虚拟环境 的名称,你也可以起其他名称。
安装工具包
下面,就是按照开发网页应用需要的一些工具包:
mljar-mercury
opencv-python-headless
pillow
matplotlib
其中之一是一款可以将内容转化为网页应用的框架,而其他的几款则是专门用于图像处理的工具集。
正式开始
下面,就正式开始开发工具。
首先,打开一个 的窗口:
jupyter notebook
然后,导入一些需要用到的工具包并对图像进行一下初始设置:
import os
import cv2
from PIL import Image
from matplotlib import pyplot as plt
import matplotlib as mpl
mpl.rcParams['figure.figsize'] = (12,12)
mpl.rcParams['axes.grid'] = False
请确保在一个全新的单元格中输入以下指令,请特别注意,务必单独开启一个新单元格photo to sketch,切勿将这段代码与其它单元格中的内容混合。
image_path = /home/jackpop/文件夹下的/Downloads/子文件夹中的/house.jpg文件
output_dir = "output_images"
是一个要处理图像的路径,是目录名,用于保存处理好的新图像。
在下一个单元中,将定义一个显示图像的函数:
def imshow图像,标题未指定,文件名未提供。:
if len(image.shape) > 3:
将图像沿指定轴进行压缩处理,赋值给变量image。0)
plt.imshow(image)
plt.axis('off')
if title:
plt.title(title)
if fname:
plt.savefig(fname)
然后,载入图像并显示:
img = cv2.imread(image_path)
RGB图像数据=通过cv2库中的cvtColor函数,将原始图像img从BGR色彩空间转换成RGB色彩空间
imshow(RGB_img)
你会看到下图:
现在开始对图像进行处理,生成艺术素描图像:
# 图像转化
将灰度图像进行反转操作,即cv2.bitwise_not(grayed)。
将图像进行高斯模糊处理,具体操作为:通过调用cv2库中的GaussianBlur函数,对反转后的图像进行模糊处理,其中模糊核的大小为指定的参数。19, 19), sigmaX=0, sigmaY=0)
def blend(x, y):
return cv2.divide(x, 255 - y, scale=256)
最终结果等于将灰度化图像与模糊化图像进行融合。
# 保存图像
将图片保存至指定目录,使用cv2库的imwrite函数,路径由output_dir与文件名组合而成。"sketch_photo.jpg"), final_result)
# 显示图像
RGB图像等于将最终结果通过cv2.cvtColor函数转换,转换格式从BGR到RGB。
imshow(RGB_img)
经过处理之后,你会看到如下图像:
到了这一步,关键性的代码编写已经全部结束,手中已经有了相应的代码,那么,接下来该如何着手开发这个网页应用程序呢?
这就需要使用之前安装好的工具包,正如之前所述,该工具包具备将其他应用转化为网页应用的功能。
首先,执行如下命令:
汞元素监测软件,sketch_app项目文件。
访问浏览器中的网址http://127.0.0.1:8000/,您将看到一个卡片界面,其具体展示如下:
请点击卡片,你会看到它的警告信息,告诉你缺少YAML头。
这实际上关乎到一个相当关键的要素——配置信息,它以yaml格式呈现,主要涵盖了标题以及一系列配置参数。
接下来,请于开头建立一个RAW格式的单元格,并输入相应的yaml配置内容。
---
title: Convert Photo to Sketch ️
description: Create sketch from uploaded a photo
show-code: False
params:
image_path:
input: file
label: Please upload a photo
output_dir:
output: dir
---
YAML配置包含如下信息:
接着,访问http://127.0.0.1:8000/,您会发现这个网页应用已经准备就绪,可以开始使用photo to sketch,您能够挑选图片、上传图片,并对图片进行相应的处理。
若您打算实现长期的系统部署,便可以利用诸如打包工具等手段,将应用软件打包并部署至服务器或云端,此后便能够随时投入使用。
此例仅展示了一种图像处理软件,实际上,借助API接口,我们能够轻松实现翻译、数据展示平台以及PDF编辑等多种功能。
如有侵权请联系删除!
TAGS:
Copyright © 2023 江苏优软数字科技有限公司 All Rights Reserved.正版sublime text、Codejock、IntelliJ IDEA、sketch、Mestrenova、DNAstar服务提供商
13262879759
微信二维码