import cv2 from matplotlib import pyplot as plt %matplotlib inline
input_img = cv2.imread("image.jpg")
plt.figure(figsize=(10,7))
plt.imshow(cv2.cvtColor(input_img, cv2.COLOR_BGR2RGB))
gray_img = cv2.cvtColor(input_img, cv2.COLOR_BGR2GRAY) plt.figure(figsize=(10,7)) plt.imshow(cv2.cvtColor(gray_img, cv2.COLOR_BGR2RGB))
inv_gray_img = 255 - gray_img plt.figure(figsize=(10,7)) plt.imshow(cv2.cvtColor(inv_gray_img, cv2.COLOR_BGR2RGB))
ksize=21 sigma=0 blur_img = cv2.GaussianBlur(inv_gray_img, ksize=(ksize, ksize), sigmaX=sigma, sigmaY=sigma) plt.figure(figsize=(10,7)) plt.imshow(cv2.cvtColor(blur_img, cv2.COLOR_BGR2RGB))![]()
sketch_img = cv2.divide(gray_img, 255 - blur_img, scale=256) # 颜色减淡融合 plt.figure(figsize=(15,10)) plt.imshow(cv2.cvtColor(sketch_img, cv2.COLOR_BGR2RGB))几行代码就搞定了,要比速度的话,那 Python+OpenCV 就没有输过。![]()
git clone https://github.com/lllyasviel/sketchKeras.git下载权重文件 mod.h5,放到项目目录下
python keras_to_tensorflow.py --input_model="mod.h5" --output_model="mod.pb"然后就能用 tensorboard 导入模型
mkdir logs python3 tensorboard_graph.py项目下生成 logs 目录就导出了计算图
tensorboard --logdir=logs/ --host=127.0.0.1我们可以看到就是一个典型的 unet 架构,输入 [3 * 512 * 512 * 1] 不停的下采样到 [3 * 32 * 32 * 512],然后再上采样回来的过程。
from_mat = from_mat.transpose((2, 0, 1))
light_map = np.zeros(from_mat.shape, dtype=np.float)
for channel in range(3):
light_map[channel] = get_light_map_single(from_mat[channel])
light_map = normalize_pic(light_map)
light_map = resize_img_512_3d(light_map)
# 模型推理 (3, 512, 512, 1)
line_mat = mod.predict(light_map, batch_size=1)
# 去除 batch 维度 (512, 512, 3)
line_mat = line_mat.transpose((3, 1, 2, 0))[0]
# 裁剪 (512, 384, 3)
line_mat = line_mat[0:int(new_height), 0:int(new_width), :]
show_active_img_and_save('sketchKeras_colored', line_mat, 'sketchKeras_colored.jpg')
line_mat = np.amax(line_mat, 2)
# 降噪
show_active_img_and_save_denoise_filter2('sketchKeras_enhanced', line_mat, 'sketchKeras_enhanced.jpg')
show_active_img_and_save_denoise_filter('sketchKeras_pured', line_mat, 'sketchKeras_pured.jpg')
show_active_img_and_save_denoise('sketchKeras', line_mat, 'sketchKeras.jpg')
sudo apt-get install libhdf5-dev pip install h5py
可以看到,用 sketchKeras 转换的线稿笔顺会更清晰些,而 sketchKeras_colored 包含了颜色的要素,这对后续图片上色会有很大帮助。
用乐高积木打造太空电梯,重现科幻电影中的经典场景,感受宇宙探索的无限魅力。
本章将创建一个“向导”应用,带给你一次巴黎的梦幻之旅。
本文为一个乐高WEDO打印机的教学课件,供各位参考。
青少年机器人技术七级、八级着重于机器人智能处理能力的学习,基本编程语言为Python,采用RDK X3作为主控。
新加坡教育部通过一系列举措来发展本国的STEM教育。文章以新加坡 STEM应用学习计划为例,介绍其产生的背景和具体的课程设计,分析其课程设计特点,为我国中小学STEM教育的实施提供参考。
LVGL(Light and Versatile Graphics Library,轻巧而多功能的图形库)是一个免费的开放源代码图形库,它提供创建具有易于使用的图形元素,精美的视觉效果和低内存占用的嵌入式GUI所需的一切。
Emo 是一款个人伴侣机器人,集时尚与创新于一身。他的诞生离不开最新的树莓派 4 技术和先进的设计。他不仅仅是一款机器人,更是一个活生生的存在。
1990年2月14日,情人节,‘旅行者一号’正式与地球道别,转身拍下了太阳系的全家福,那最后一次回眸,留下了对‘家乡地球’所有的留恋与不舍,从此,今生今世,永不相见。
报告由艾瑞咨询发布,对全球及中国STEAM教育发展进行了全面剖析。
新课标在秋季即将开始执行,其中信息科技课程与STEM教育是紧密相关的,如何更好的展开STEM学习,以培养孩子们的STEM思维呢?本文总结了一个STEM课程的学习路径,供家长参考。
本教程基于树莓派4B打造一个稳定的软硬件开发环境,再在其上构建AI应用。比如选择构建OpenCV 4.4,pyTorch 1.6和1.7,Tensorflow 2.1,然后在上面跑yolo v5应用,用intel NCS2加速等等…