国税网站页面申报撤销怎么做药品网站订单源码

张小明 2026/1/19 20:32:22
国税网站页面申报撤销怎么做,药品网站订单源码,wordpress ps.w.org,wordpress 制作企业站Python手绘效果生成器#xff1a;29行代码实现照片艺术化 摘要#xff1a;本文介绍如何使用Python的PIL和NumPy库#xff0c;仅用29行代码实现照片手绘效果。通过图像梯度计算和光照模拟#xff0c;将普通照片转换为手绘风格的艺术作品。 目录 文章目录Python手绘效果生成器…Python手绘效果生成器29行代码实现照片艺术化摘要本文介绍如何使用Python的PIL和NumPy库仅用29行代码实现照片手绘效果。通过图像梯度计算和光照模拟将普通照片转换为手绘风格的艺术作品。目录文章目录Python手绘效果生成器29行代码实现照片艺术化目录[toc]1. 效果展示2. 核心原理3. 完整代码实现4. 代码详解4.1 图像预处理4.2 梯度计算4.3 深度参数4.4 法向量计算4.5 光照设置4.6 光照计算5. 参数调优指南5.1 深度参数depth5.2 光源角度6. 使用示例6.1 基础使用6.2 批量处理扩展7. 常见问题7.1 ImportError7.2 文件路径错误7.3 内存不足8. 总结优势局限扩展方向投票与互动标签局限扩展方向投票与互动标签1. 效果展示先来看看最终效果上面是原始照片下面是手绘效果|||2. 核心原理手绘效果的核心是通过计算图像梯度来模拟线条再通过光照模型增强立体感。主要包含以下步骤灰度转换将彩色图片转换为灰度图梯度计算计算像素点的梯度值深度调整通过depth参数控制立体感强度光照模拟添加光源效果增强立体感3. 完整代码实现fromPILimportImageimportnumpyasnp# 读取图片并转换为灰度图anp.asarray(Image.open(r.\1.jpg).convert(L)).astype(float)# 深度参数 (0-100)控制立体感强度depth50.# 计算图像灰度的梯度值gradnp.gradient(a)# 取图像灰度的梯度值grad_x,grad_ygrad# 分别取横纵图像梯度值# 应用深度参数缩放grad_xgrad_x*depth/100.grad_ygrad_y*depth/100.# 计算法向量Anp.sqrt(grad_x**2grad_y**21.)uni_xgrad_x/A uni_ygrad_y/A uni_z1./A# 设置光源角度vec_elnp.pi/2.2# 光源的俯视角度弧度值vec_aznp.pi/4.# 光源的方位角度弧度值# 计算光源对x、y、z轴的影响dxnp.cos(vec_el)*np.cos(vec_az)# 光源对x轴的影响dynp.cos(vec_el)*np.sin(vec_az)# 光源对y轴的影响dznp.sin(vec_el)# 光源对z轴的影响# 光照归一化b255*(dx*uni_xdy*uni_ydz*uni_z)bb.clip(0,255)# 重构图像并保存imImage.fromarray(b.astype(uint8))# 重构图像im.save(r.\手绘.jpg)# 保存手绘效果print(保存成功请查看)4. 代码详解4.1 图像预处理anp.asarray(Image.open(r.\1.jpg).convert(L)).astype(float)这行代码做了三件事Image.open(r.\1.jpg)- 打开图片文件.convert(L)- 转换为灰度图L模式np.asarray(...).astype(float)- 转换为NumPy数组数据类型为float4.2 梯度计算gradnp.gradient(a)# 取图像灰度的梯度值grad_x,grad_ygrad# 分别取横纵图像梯度值np.gradient()函数计算图像的梯度返回两个数组grad_x: 水平方向的梯度grad_y: 垂直方向的梯度梯度反映了图像中像素值的变化程度边缘位置梯度值较大。4.3 深度参数depth50.# (0-100)grad_xgrad_x*depth/100.grad_ygrad_y*depth/100.depth参数控制手绘效果的立体感值越大立体感越强线条越粗值越小效果越细腻范围0-1004.4 法向量计算Anp.sqrt(grad_x**2grad_y**21.)uni_xgrad_x/A uni_ygrad_y/A uni_z1./A这部分计算每个像素点的法向量用于后续的光照计算。4.5 光照设置vec_elnp.pi/2.2# 光源的俯视角度弧度值vec_aznp.pi/4.# 光源的方位角度弧度值设置光源位置vec_el俯仰角控制光源从上方照射的角度vec_az方位角控制光源从左侧照射的角度4.6 光照计算dxnp.cos(vec_el)*np.cos(vec_az)# 光源对x轴的影响dynp.cos(vec_el)*np.sin(vec_az)# 光源对y轴的影响dznp.sin(vec_el)# 光源对z轴的影响b255*(dx*uni_xdy*uni_ydz*uni_z)bb.clip(0,255)通过点积计算每个像素的光照强度然后归一化到0-255范围。5. 参数调优指南5.1 深度参数depthdepth值效果描述适用场景10-30轻微立体感线条细腻人像照片40-60适中立体感风景照片70-100强烈立体感线条粗犷建筑照片5.2 光源角度# 俯仰角调小光源更接近水平vec_elnp.pi/1.8# 方位角调整从左侧45度改为90度vec_aznp.pi/26. 使用示例6.1 基础使用# 准备工作# 1. 准备一张名为1.jpg的图片# 2. 安装依赖pip install pillow numpy# 运行代码python Main.py6.2 批量处理扩展虽然原代码只处理单张图片但可以轻松扩展为批量处理fromPILimportImageimportnumpyasnpimportosdefprocess_image(input_path,output_path,depth50):anp.asarray(Image.open(input_path).convert(L)).astype(float)gradnp.gradient(a)grad_x,grad_ygrad grad_xgrad_x*depth/100.grad_ygrad_y*depth/100.Anp.sqrt(grad_x**2grad_y**21.)uni_xgrad_x/A uni_ygrad_y/A uni_z1./A vec_elnp.pi/2.2vec_aznp.pi/4.dxnp.cos(vec_el)*np.cos(vec_az)dynp.cos(vec_el)*np.sin(vec_az)dznp.sin(vec_el)b255*(dx*uni_xdy*uni_ydz*uni_z)bb.clip(0,255)imImage.fromarray(b.astype(uint8))im.save(output_path)# 批量处理input_dirinput_imagesoutput_diroutput_imagesos.makedirs(output_dir,exist_okTrue)forfilenameinos.listdir(input_dir):iffilename.endswith((.jpg,.jpeg,.png)):input_pathos.path.join(input_dir,filename)output_pathos.path.join(output_dir,fhanddraw_{filename})process_image(input_path,output_path)print(f处理完成:{filename})7. 常见问题7.1 ImportError# 安装依赖pip install pillow numpy7.2 文件路径错误# 使用绝对路径或相对路径Image.open(rC:\Users\用户\Desktop\1.jpg)# 绝对路径Image.open(r.\1.jpg)# 相对路径7.3 内存不足对于大图片可以调整图片尺寸# 在转换前缩小图片imgImage.open(r.\1.jpg)imgimg.resize((img.size[0]//2,img.size[1]//2))# 缩小一半anp.asarray(img.convert(L)).astype(float)8. 总结这个29行的Python手绘效果生成器虽然代码简洁但包含了图像处理的核心概念图像梯度用于边缘检测和线条提取光照模型模拟真实世界的光照效果数值计算使用NumPy进行高效的数组运算优势代码简洁易懂效果直观明显参数可调节易于扩展局限只支持单张图片处理参数需要手动调整对大图片处理较慢扩展方向添加GUI界面支持批量处理参数自动优化支持更多图片格式投票与互动如果这篇文章对你有帮助请点赞支持作者收藏方便后续查看评论分享你的想法和建议标签#Python#图像处理#PIL#NumPy#手绘效果#29行代码直观明显参数可调节易于扩展局限只支持单张图片处理参数需要手动调整对大图片处理较慢扩展方向添加GUI界面支持批量处理参数自动优化支持更多图片格式投票与互动如果这篇文章对你有帮助请点赞支持作者收藏方便后续查看评论分享你的想法和建议标签#Python#图像处理#PIL#NumPy#手绘效果#29行代码
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

响应式网站用什么单位可以分为( )

量子算法:从代数问题到数论猜想验证 1. 代数问题中的量子算法探索 在代数问题求解方面,量子算法展现出了巨大的潜力。以下是一些相关的问题及探索方向: - 佩尔方程求解 :设计一个连分数算法来解决佩尔方程 (x^2 - dy^2 = \pm c),其中 (d) 是无平方因子的正整数,(c &…

张小明 2026/1/4 6:49:51 网站建设

网站备案时间要多久厦门网站制作品牌

哈喽,大家好!我是阿星👋🏻前段时间开发了个小红书卡片生成器,上面我保留了logo水印👉🏻Gemini3做小红书封面生成器,效率暴增1000% ,实现爆款封面自由!就有人问…

张小明 2026/1/7 23:43:05 网站建设

免费网站建设优化圣矢网络重庆网站建设优化推广公司

大家好,我是锋哥。今天分享关于【Java GC是任意时候都能进行的吗?】面试题。希望对大家有帮助; MyBatis的工作流程是怎样的? 超硬核AI学习资料,现在永久免费了! MyBatis 的工作流程可以分为 六个核心阶段…

张小明 2026/1/5 9:58:05 网站建设

网站建设七点大型网站后台用什么语言

在之前的具身智能进展回答中:你认为具身智能是通往AGI(通用人工智能)的必经之路吗? 曾复盘了当前训练数据的进展情况: 从2025年上半年和下半年的两段讨论内容进行对比,由此可得到以下结论: 1.数…

张小明 2026/1/6 20:34:50 网站建设

浙江振升建设有限公司网站昆山建设网站

第一章:Open-AutoGLM 跨应用任务处理竞品分析在跨应用自动化任务处理领域,多个平台和框架已展现出各自的技术优势。Open-AutoGLM 作为新兴的开源智能代理系统,其核心能力在于通过自然语言理解驱动多应用协同操作。为明确其定位,需…

张小明 2025/12/25 9:16:35 网站建设