canvas

基于openpose对人体姿势识别

本小妞迷上赌 提交于 2020-03-08 16:53:32
代码来源GitHub: camera-openpose-keras 这个openpose模型是keras版,模型参数文件约为200M,实现代码在demo_camera.py文件中,预测摄像头捕获的画面: import argparse import cv2 import math import time import numpy as np import util from config_reader import config_reader from scipy . ndimage . filters import gaussian_filter from model import get_testing_model tic = 0 # find connection in the specified sequence, center 29 is in the position 15 limbSeq = [ [ 2 , 3 ] , [ 2 , 6 ] , [ 3 , 4 ] , [ 4 , 5 ] , [ 6 , 7 ] , [ 7 , 8 ] , [ 2 , 9 ] , [ 9 , 10 ] , \ [ 10 , 11 ] , [ 2 , 12 ] , [ 12 , 13 ] , [ 13 , 14 ] , [ 2 , 1 ] , [ 1 , 15 ] , [ 15 , 17

图像为什么刷新一下才能显示?启动时是空白页,这是怎么回事?

别说谁变了你拦得住时间么 提交于 2020-03-08 14:33:23
转载自: https://bbs.csdn.net/topics/390057728 弄了很久才用<canvas>标签显示出图像来,可是启动浏览器之后必须刷新一下才能看到图像,不然就是空白的什么都没有。 哪里的问题。。。。。。 [html文件] <!DOCTYPE html> <html> <head><title>javascript</title> <script type="text/javascript" src="xxxx.js"></script> <meta http-quive="Pragma" content="no-cache"> <meta http-quive="Cache-Control" content="no-cache"> </head> <body οnlοad="draw();"> <canvas id="canvas" width="800" height="800"></canvas> </body> </html> [javascript文件] function draw(){ var canvas=document.getElementById("canvas"); var context=canvas.getContext("2d"); var img=new Image(); img.src="0001.png"; context

微信图片生成插件,页面截图插件 html2canvas,截图失真 问题的解决方案

江枫思渺然 提交于 2020-03-08 09:52:47
html2canvas 是一个相当不错的 JavaScript 类库,它使用了 html5 和 css3 的一些新功能特性,实现了在客户端对网页进行截图的功能。html2canvas 通过获取页面的 DOM 和元素的样式信息,并将其渲染成 canvas 图片,从而实现给页面截图的功能。 官网: https://github.com/niklasvh/html2canvas 遇到的问题: 参考官方的 Demo,发现所截的图失真厉害。 解决方案: 将 canvas 的宽高放大到原容器宽高的 3 倍,参考代码如下: <html> <head> <meta name="layout" content="main"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <script type="text/javascript" src="jquery.min.js"></script> <script type="text/javascript" src="html2canvas.js"></script> <script type="text/javascript" src="canvas2image.js"></script> </head> <body> <div id="to-image">

一个基于 canvas 的画板

家住魔仙堡 提交于 2020-03-07 20:03:28
虽然我自己的定位是做后端的,但技术主管强调要搞全栈,因此工作中也要写一些前端页面。一个产品经理找我写个画板,他更不会管我的技术定位了。目标是做个画板,具有以下功能: 可以更改画笔颜色、粗细,能擦除绘图 撤销绘图 设置画板背景色 将画板保存成图片 demo见: drawing_board 。最后的效果长这样: 所有的实现以及遇到的问题,都可以在网上找到。这里做一个总结。 画笔粗细、颜色 粗细通过 ctx.lineWidth 设置;颜色要设置 ctx.strokeStyle 和 ctx.fillStyle 这两个参数才行。 橡皮功能 ctx.globalCompositeOperation 的默认值是 "source-over" ,这时可以正常绘制图形。将其改成 "destination-out" ,这时画笔可将绘制的线条擦除。橡皮其他部分与画笔的逻辑一样,因此代码可以复用。更改 lineWidth 便可调节橡皮大小。有的实现中直接将画笔的颜色改成画板的背景色,以此达到“擦除”的效果。但画板默认是透明的,这种错误实现会导致在输出的图片有问题。 撤回功能 想要撤回就要记住历史状态。将每次画下的图形数据粗暴地存储在一个数组中,撤销时将数组最后一个元素设置为 canvas 的图形数据即可。注意这里每次记录的都是完整的数据,而不是像 git 一样记录每次的修改,因此不能无限制地记录绘画历史

UGUI组件(1)Canvas 和 RectTransform

佐手、 提交于 2020-03-07 18:41:00
版本:Unity5.4.2f1 Canvas(画布) 手册: https://docs.unity3d.com/Manual/class-Canvas.html 这个组件是代表UI布局和渲染的空间。所有UI元素必须是在一个有Canvas组件的对象下。当在没有Canvas场景中创建一个UI元素时,同时也会生成一个Canvas对象。 参数: Pixel Perfect (Screen Space modes only) :不使用反锯齿渲染UI Render Camera (Screen Space - Camera mode only) :选择一个绘制UI的摄像机 Plane Distance (Screen Space - Camera mode only) :放置UI平面在摄像机前面的距离大小 Event Camera (World Space mode only) :处理UI事件的摄像机 Receives Events :是否通过该摄像机处理UI事件 补充: 一个场景中只有一个Canvas是足够的,但也允许同时存在多个Canvas。也可以嵌套多个Canvas,但嵌套的Canvas是和父级的渲染方式一样。 嵌套的Canvas截图: 通常是把UI元素作为一个绘制在屏幕上的图形,而没有把UI元素当作为一个3D空间内的对象。 在Unity中不仅支持使用传统的渲染概念

Polylines extended on canvas while overdrawing with use of PointCollection C# WPF

荒凉一梦 提交于 2020-03-06 07:32:06
问题 I am creating autocad plugin which get points from existing geometry, pass it to another windows and create object with same geometry on canvas as polyline. Autocad object is polyline so some points (vertices) must be overdrawn. I gather points from autocad, length of vertices and transform that to center object in real coordinates on canvas. Then when I draw it, i get this: The points that i collect are correct, they are transformed simetrically. And the code for drawing on canvas is here:

Polylines extended on canvas while overdrawing with use of PointCollection C# WPF

我怕爱的太早我们不能终老 提交于 2020-03-06 07:31:21
问题 I am creating autocad plugin which get points from existing geometry, pass it to another windows and create object with same geometry on canvas as polyline. Autocad object is polyline so some points (vertices) must be overdrawn. I gather points from autocad, length of vertices and transform that to center object in real coordinates on canvas. Then when I draw it, i get this: The points that i collect are correct, they are transformed simetrically. And the code for drawing on canvas is here:

canvas游戏开发学习之一:初识<canvas>标签

一世执手 提交于 2020-03-06 00:46:50
让我们从 <canvas> 元素的定义开始吧。 <canvas id="myCanvas" width="150" height="150"></canvas> <canvas>看起来很像<img>,唯一不同就是它不含 src 和 alt 属性。它只有两个属性,width 和 height,两个都是可选的,并且都可以 用 DOM 或者 CSS来设置。如果不指定width 和 height,默认的是 宽300像素 , 高150像素 。虽然可以通过 CSS来调整canvas的大小,但渲染图像会缩放来适应布局的(如果你发现渲染结果看上去变形了,不必一味依赖CSS,可以尝试显式指定canvas的width 和 height 属性值)。</canvas>结束标签是必须的。 <canvas>元素可以像普通图片一样指定其样式(边距,边框,背景等等)。然而这些样式并不会对canvas实际生成的图像产生什么影响。下面我们会看到如何应用样式。如果不指定样式,canvas默认是全透明的。 因为 <canvas> 相对较新,有些浏览器并没实现,如Firefox 1.0 和 Internet Explorer,所以我们需要为那些不支持canvas的浏览器提供替用显示内容。我们只需要直接在canvas元素内插入替用内容即可。不支持canvas的浏览器会忽略canvas元素而直接渲染替用内容

android绘图—Paint path 旋转

这一生的挚爱 提交于 2020-03-05 17:11:10
http://meteor6789.blog.163.com/blog/static/35040733201111193535153/ Piant 看一段代码: mPaint = new Paint(); mPaint.setAntiAlias(true);//锯齿 mPaint.setDither(true);// mPaint.setColor(0xFF385078); mPaint.setStyle(Paint.Style.STROKE); mPaint.setStrokeJoin(Paint.Join.ROUND);//文档上的大概意思是设置连接处 mPaint.setStrokeCap(Paint.Cap.ROUND);//文档上的大概意思是设置帽子 帽子应该是:比如画一条直线,那么cap就是指直线的头Or顶端 mPaint.setStrokeWidth(20);//画笔的粗细 样式 : paint有可以直接画一个矩形、各种圆、三角形等的方法,但是没有设置笔触样式的方法,所以如果想在paint上绑定一个图形,可以参考一下方法: import android.content.Context; import android.graphics.*; import android.graphics.Path.Direction; import android.os.Bundle;

HTML5 Canvas中的贝塞尔曲线

本小妞迷上赌 提交于 2020-03-05 17:06:06
  在HTML5提供的画布功能,也就是Canvas中,getContext() 方法可返回一个对象,该对象提供了用于在画布上绘图的方法和属性。本文以getContext("2d")中提供的方法为例,简要研究了其中用于绘制曲线路径的贝塞尔曲线。   JavaScript中的getContext("2d")为我们提供了两种绘制贝塞尔曲线路径的方法,分别是quadraticCurveTo()用于绘制二次贝塞尔曲线和bezierCurveTo()用于绘制三次贝塞尔曲线。 什么是贝塞尔曲线? 贝塞尔曲线(Bézier curve),又称贝兹曲线或贝济埃曲线,是应用于二维图形应用程序的数学曲线,是计算机图形学中相当重要的参数曲线。 贝塞尔曲线由线段与节点组成,控制其中的节点,便能控制曲线的路径。具体的参数方程如下: (1)线性公式 给定点P 0 、P 1 (可理解为曲线的起点和终点),线性贝兹曲线只是一条两点之间的直线段。公式如下: 其长度等于两点间线段的长度。 (2)二次方公式    二次方贝塞尔曲线的路径由给定点P 0 、P 1 、P 2 (可分别理解为起点、控制点和终点)的函数B(t)追踪: (3)三次方公式   P 0 、P 1 、P 2 、P 3 四个点在平面或在三维空间中定义了三次方贝兹曲线。曲线起始于P 0 走向P 1 ,并从P 2 的方向来到P 3 。一般不会经过P 1 或P