Giter Club home page Giter Club logo

open-pose-editor's Introduction

Online 3D Openpose Editor [中文版] [日本語版]

Preview

intro.mp4

Installation as a WebUI extension

  1. Open the "Extension" tab of the WebUI
  2. Open the "Available" tab
  3. If your WebUI is out of date, change the "Extension index URL" to https://raw.githubusercontent.com/AUTOMATIC1111/stable-diffusion-webui-extensions/master/index.json
  4. Click the "Load from:" button
  5. Click the "Install" button of 3D Openpose Editor
  6. Open the "Installed" tab and click the "Apply and restart UI" button

Feature

  • Pose Editing: Edit the pose of the 3D model by selecting a joint and rotating it with the mouse.

  • Hand Editing: Fine-tune the position of the hands by selecting the hand bones and adjusting them with the colored circles.

  • Depth/Normal/Canny Maps: Generate and visualize depth, normal, and canny maps to enhance your AI drawing.

  • Save/Load/Restore Scene: Save your progress and restore it later by using the built-in save and load functionality.

  • Adjust Body Parameters: Adjust various body parameters such as height, weight, and limb lengths to create a custom 3D model.

Usage

Scene Navigation:

  • Rotate Scene: Click and hold the blank space, then move the mouse while holding down the left mouse button.
  • Move Scene: Click and hold the blank space, then move the mouse while holding down the right mouse button.

Body Manipulation:

  • Rotate Body: Click on any joint to select it, then hold down one of the colored circles and move the mouse to rotate the selected joint.
  • Hand Editing: Click on the red dot to select the hand bones, then rotate them by holding down one of the red circles and moving the mouse.

Adjust Body Parameters:

  • Select Body: Click on the body to select it.
  • Open Body Parameters: Click on "Body Parameters" in the menu to adjust the body's parameters.

Adjust Output Resolution:

  • Adjust Output Resolution in Menu: Change the "Width" or "Height" in the menu to control the output resolution.

Other Functions:

  • Switch to Move Mode: Press the X key to switch to move mode, allowing you to move the entire body.
  • Delete Body: Press the D key to delete the entire body.

Contact

Email: [email protected]

Tencent QQ Group:272950545

open-pose-editor's People

Contributors

nixdorfer avatar nonnonstop avatar shirayu avatar zhuyu1997 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

open-pose-editor's Issues

Additional composition output/export type: JSON

Hi! Loving your project, it's fantastic to see it constantly evolving!

I saw you mention elsewhere that you're not able to convert 2D JSON pose data to 3D, but what I'm wondering is if it would be possible to do the opposite:

When a pose is created and the camera has been positioned and the user clicks Generate, in addition to the skeletal .png/depth/normal/canny outputs, would it be possible to generate a 2D OpenPose JSON dictionary that represents the scene's current snapshot?

Similar to this:

{
  "people": [{
	"pose_keypoints_2d":
	[321,150,1,359,232,1,293,224,1,250,300,
	1,263,365,1,425,239,1,449,354,1,427,459,
	1,294,427,1,289,505,1,-1,-1,0,372,451,1,374,
	511,1,-1,-1,0,322,134,1,338,137,1,-1,-1,0,379,
	143,1]
	},{
	"pose_keypoints_2d":
	[173,157,1,137,231,1,72,230,1,46,319,1,118,337,
	1,202,231,1,216,322,1,199,346,1,123,414,1,99,
	501,1,-1,-1,0,190,410,1,195,507,1,-1,-1,0,159,142,
	1,177,145,1,125,149,1,-1,-1,0]
     }],
  "width": 512,
  "height": 512
}

It would be very useful as some tools can't import skeleton .pngs, but can import JSON.

Thanks!

Load output of standalone openpose binaries

Is it possible to support loading the json output of the original OpenPose binaries?
Currently it seems like you save some kind of custom json configuration, which doesn't make it possible to import an output of the original libraries.

Example configuration of OpenPose

{"version":1.3,"people":[{"person_id":[-1],"pose_keypoints_2d":[234.028,161.096,0.922049,246.797,231.876,0.901235,195.372,234.102,0.815872,180.451,317.677,0.872398,137.595,251.208,0.827864,298.248,229.733,0.830941,328.31,330.382,0.808948,356.12,420.411,0.8298,272.587,386.108,0.738619,236.226,388.275,0.721351,283.279,469.769,0.87084,330.459,638.909,0.695762,306.841,383.972,0.707339,317.494,503.98,0.857297,349.64,643.31,0.579944,223.345,146.159,0.903122,248.942,144.124,0.958439,210.416,156.873,0.555018,266.21,148.321,0.854199,341.142,679.644,0.366389,356.153,675.415,0.379635,347.608,658.278,0.321706,341.142,675.401,0.469009,328.304,677.459,0.465309,332.602,645.387,0.357704],"face_keypoints_2d":[],"hand_left_keypoints_2d":[356.435,423.917,0.336181,354.508,434.321,0.601546,360.288,448.579,0.749901,363.757,460.14,0.714697,368.766,467.076,0.668548,376.473,448.194,0.700676,386.107,457.442,0.660314,383.795,465.92,0.737103,381.868,472.471,0.857457,379.556,447.808,0.734902,384.951,457.828,0.646593,381.868,466.691,0.588983,374.932,470.159,0.457649,379.171,446.652,0.657267,382.639,457.057,0.587716,376.473,464.378,0.581386,372.62,469.003,0.522742,376.473,445.882,0.593737,376.088,457.442,0.70329,373.39,462.452,0.473227,370.307,466.305,0.471258],"hand_right_keypoints_2d":[134.091,243.457,0.587039,136.025,232.819,0.725136,135.058,218.635,0.879323,130.223,209.287,0.776852,124.42,206.385,0.243622,115.716,208.642,0.143703,113.137,207.352,0.714236,120.874,210.254,0.756356,126.677,214.767,0.834922,113.137,212.51,0.320018,113.782,214.767,0.438602,124.098,219.602,0.60207,127.321,222.504,0.642895,113.137,218.635,0.393253,115.394,219.602,0.431227,124.098,223.471,0.620381,126.999,227.339,0.627299,113.137,225.727,0.541305,117.006,224.76,0.569553,122.808,228.306,0.78661,124.743,232.175,0.749943],"pose_keypoints_3d":[],"face_keypoints_3d":[],"hand_left_keypoints_3d":[],"hand_right_keypoints_3d":[]}]}

RuntimeError: File at path C:\AU\stable-diffusion-webui\undefined does not exist.

Automatic1111 commit hash: 955df7751eef11bb7697e2d77f6b8a6226b21e13
During loading the extension there're some errors in console:

ERROR: Exception in ASGI application
Traceback (most recent call last):
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\starlette\responses.py", line 335, in call
stat_result = await anyio.to_thread.run_sync(os.stat, self.path)
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\anyio\to_thread.py", line 31, in run_sync
return await get_asynclib().run_sync_in_worker_thread(
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\anyio_backends_asyncio.py", line 937, in run_sync_in_worker_thread
return await future
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\anyio_backends_asyncio.py", line 867, in run
result = context.run(func, *args)...

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 407, in run_asgi
result = await app( # type: ignore[func-returns-value]
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\uvicorn\middleware\proxy_headers.py", line 78, in call
return await self.app(scope, receive, send)
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\fastapi\applications.py", line 273, in call
await super().call(scope, receive, send)
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\starlette\applications.py", line 122, in call
await self.middleware_stack(scope, receive, send)
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\starlette\middleware\errors.py", line 184, in call
raise exc
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\starlette\middleware\errors.py", line 162, in call
await self.app(scope, receive, _send)
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\starlette\middleware\gzip.py", line 24, in call
await responder(scope, receive, send)
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\starlette\middleware\gzip.py", line 44, in call
await self.app(scope, receive, self.send_with_gzip)
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\starlette\middleware\exceptions.py", line 79, in call
raise exc
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\starlette\middleware\exceptions.py", line 68, in call
await self.app(scope, receive, sender)
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 21, in call
raise e
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in call
await self.app(scope, receive, send)
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\starlette\routing.py", line 718, in call
await route.handle(scope, receive, send)
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\starlette\routing.py", line 276, in handle
await self.app(scope, receive, send)
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\starlette\routing.py", line 69, in app
await response(scope, receive, send)
File "C:\AU\stable-diffusion-webui\venv\lib\site-packages\starlette\responses.py", line 338, in call
raise RuntimeError(f"File at path {self.path} does not exist.")
RuntimeError: File at path C:\AU\stable-diffusion-webui\undefined does not exist.

Issue: Generate button doesn't seem to work

The original one that's layered over the canvas still works, but the new one added to the GUI on the right doesn't. It does nothing when clicked and there are no console errors. Not a big deal but figured it should be reported.
Screenshot 2023-03-26 203853

Feedback: Allow Camera View Saving

Thanks for making this. This is great.
Please allow us to save camera views so we can save our main camera view and still be able to rotate and edit the camera so we can better edit our poses.

See example UI

Untitled-1

FPS drops when preview is enabled

Environment

OS: Windows 10
Browser: Chrome 111.0.5563.147

Description

With preview enabled, the FPS drops when the camera is rotated.
Especially when the camera is shot from above, the FPS drops to about 15 FPS.
image

Note: The source is changed to display Stats for reporting.

This problem occurs in commit 2ec3381 and later.
This problem didn't occur in commit 42f1867.

Steps to reproduce

  1. Open https://zhuyu1997.github.io/open-pose-editor/.
  2. Left-click and drag to move the camera.
  3. FPS drops and camera movement becomes a bit laggy.

Notes

I don't know if it is related to this issue, but I found the following.

When the FPS is dropping, a large number of requests to the Data URL are occurring.
image

Thank you for everything!

Option for adjusting position of shoulder nodes back and forth.

Hey, found this pose editor to be very functional and easy to use. However, I'd like to have a bit more flexibilty with regards to position of the shoulder nodes relative to the chest node. Currently, it's locked as a straight line, however, that means that the shoulders and chest are locked as a straight line. This makes it difficult to make fine adjustments as the shoulders relative to the center of the chest, and prevents making shrugs or hunch postures etc.

would appreciate if it's possible to look into adding some minor up/down, back/forward adjustment to the chest node to make this adjjustments possible.

About any point movement

Now in move mode, I only can move the whole skeleton but not the exact point, such as the height of the shoulders.
Would it appear in the future ?

add "Detect from image"

Thank you for making this Extension.
The camera and bone system give AI art a new sense of certainty.

Could you implement additional functions to make this function even easier to use?

"Detect from image" would be very useful to have a function to estimate the pose taken by the character in the loaded background image.

Since the functions are only pseudo-inferences, we think that the pose does not need to be accurate in the world space as long as it can infer the state seen from the current camera.

Depth map for whole body

Am I missing something? Any chance to get depth map also for whole body? There are some poses that leads to 2d version of pose model that tend to flatter things and things that arm that is "behind" body is now in front of it. I believe that some simple depth map would solve this problem - but for that I believe some mapping to any 3d body object would be needed right?

"detect pose from image" feature not working in browser

I have had no luck making Detect From Image work on browser. It pops up an error saying "if it persists, post here" .. so I'm posting here.

If there's any info you need from me, or troubleshooting steps to try, let me know.

一点希望加入的小功能

1.骨骼比例锁定——单个旋转的话有些麻烦,去拖动手脚的话姿势不一定到位,还是需要调整,去拖动关节又容易影响比例,所以才有了这个想法
2.关节多选——例如在让手脚同时想一个方向移动的时候,单独去拖拽很难保证位置相同,转动视角调整也较为繁琐,如果可以按住ctrl多选关节批量调节会更好
3.摄像机窗口希望可以自定义大小——在摆姿势的时候有些看不清,另外如果能像3d软件那样,构图的时候用摄像机窗口,随时可以脱离使用自定义窗口对动作进行微调,随时可以回到摄像机窗口检查画面
4.骨骼的增加/删除——在做三视图骨骼的时候发现骨骼似乎不能删除,只能到ps擦除

以上,如果有我未发现的功能可以提醒我,如果您觉得是有用的功能希望后续的版本可以更新,感谢!

bug

Failed to resolve import "i18next" from "src\i18n.ts". Does the file exist?
9:57:00 AM [vite] Internal server error: Failed to resolve import "i18next" from "src\i18n.ts". Does the file exist?
Plugin: vite:import-analysis
File: D:/open-pose-editor/src/i18n.ts:1:20
1 | import i18next from "i18next";
| ^
2 | import LanguageDetector from "i18next-browser-languagedetector";
3 | import commonEn from "./locales/en.json";
at formatError (file:///D:/open-pose-editor/node_modules/vite/dist/node/chunks/dep-ca21228b.js:41418:46)
at TransformContext.error (file:///D:/open-pose-editor/node_modules/vite/dist/node/chunks/dep-ca21228b.js:41414:19)
at normalizeUrl (file:///D:/open-pose-editor/node_modules/vite/dist/node/chunks/dep-ca21228b.js:39706:33)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async TransformContext.transform (file:///D:/open-pose-editor/node_modules/vite/dist/node/chunks/dep-ca21228b.js:39840:47)
at async Object.transform (file:///D:/open-pose-editor/node_modules/vite/dist/node/chunks/dep-ca21228b.js:41685:30)
at async loadAndTransform (file:///D:/open-pose-editor/node_modules/vite/dist/node/chunks/dep-ca21228b.js:39479:29)
Failed to resolve import "i18next" from "src\i18n.ts". Does the file exist?
Failed to resolve import "i18next" from "src\i18n.ts". Does the file exist? (x2)
Failed to resolve import "i18next" from "src\i18n.ts". Does the file exist? (x3)

很强大的骨架工具

很好的骨架生成工具,可以导入图片来识别骨架,这点很赞,要是手部也可以导入图片,生成手部的对应骨架,那就非常牛X了,支持作者!!!

Camera and Miror pose

It is a great tool. I support its production. I will contribute with ideas.
I use it to produce 3DCG drawings.
I want to generate highly accurate drawings.
Direct front and side.

  1. I want to input numbers for camera rotation and movement. (Like blender.
  2. I want to make the pose symmetrical.

image

can not move points

i want to move a point to move hand, leg,... but in move move just move all parts of body...pls update !

Feedback: Rotation Dots are too big when zoomed in.

  1. Red dots should remain the same size when the user zooms in or out. Right now, the red dots also get larger when the user zooms in. It's difficult to work on the fingers.

Screenshot 2023-04-02 235852

  1. When selecting a red dot of a specific finger, the rest of the red dots that are from the other fingers should be colored GRAY. it is very difficult to work on.

222222

  1. When rotating the top joint of a finger, the rest of the fingers in the same group should also rotate... (https://www.youtube.com/watch?v=wBfSA1mDATY)

Image to hand pose ?

Its probably too complex to do but would be nice to be able to upload own hand image and the hand would be posed like the image.
Currently theres this unnatural hand poses with spread fingers as default, can you make like another preset for the hand where fingers are close and bent towards each other like my example or last image and 3rd handpose on right ? or at least ability to save hand poses
Also can you shorten ring finger ? its too long a bit and hands look fake because of it, heres how fingers should look compared to each other .
The thing is i can pose the hands but i have to do this everytime after i reset the pose or rerun webui

image

Also this is the hand rest pose that looks more natural and should be default(fingers are naturally bending towards center , especially pointing finger ) when you bend fingers a bit, second example shows it on last 3rd image on right) but still theres this one finger thats too long and it looks off a bit
image

image

Feedback: adding markers for vanishing points and lines

Sometimes it's hard to align the accurate camera position with the image, is it possible to add a toggle for displaying vanishing points and some vanishing lines? So that we could lock the view after setting up the camera and toggle those lines off.

Downloading MediaPipe Pose Model ...

Stable Diffusion 插件 从图片中检测,打开文件后出现提示:Downloading MediaPipe Pose Model 卡着不动了。

请问可以手动下载 MediaPipe 包吗?放在哪个目录里?

谢谢!

针对ControlNet1.1

ControlNet1.1的新版OpenPose模型可以直接识别手部形状和面部表情,实际效果比深度图好一些,可以考虑针对更新
openpose_1

Please add a Hand Preset

your project is very awsome, but the hand is difficult to adjust.
Please add a Hand Preset,it will be a lot better, Thank you.

can`t fined "Body Parameters"

I am a beginner.
I have completed the installation. but I can't find a "body parometers" diagram.
It's very troubled.
How can I fix this?

Efficient Hand Recognition in Openpose using ControlNet 1.1

It would be very useful to have in "openpose" the hands used by "ControlNet 1.1". The idea would be to continue using the current hands and when a button is pressed, the hands would appear in "openpose". This way, we would have the hands in "openpose", "depth", "normal", and "canny".

image

image

more keyboard shortcuts

Thank you very much for your amazing work.
I am using a lot the camera and I feel like I would need a keyboard shortcut to "Restore View" to have a better experience.

可否加入随机手势?

很好用的工具!
要是有手势库就如虎添翼了,如果不能加列表,那么随机套用也很好,毕竟人能做的手势还是比较有限的,哪怕只有十个数字加石头剪刀布也能覆盖很大范围了,请一定要考虑一下,谢谢。

报错了

宽度
1920
高度
802
相机near
0.10
相机far
10000.00
相机焦距
12.66
哎呀...
出错了! Error: {"image":{"GLctxObject":{"handle":3,"attributes":{"alpha":true,"depth":true,"stencil":false,"antialias":false,"premultipliedAlpha":true,"preserveDrawingBuffer":false,"powerPreference":"default","failIfMajorPerformanceCaveat":false,"majorVersion":2,"minorVersion":0,"enableExtensionsByDefault":1,"explicitSwapControl":0,"proxyContextToMainThread":0,"renderViaOffscreenBackBuffer":0},"version":2,"GLctx":{"dibvbi":null,"mdibvbi":null,"disjointTimerQueryExt":{},"multiDrawWebgl":{},"currentProgram":{"name":428,"maxUniformBlockNameLength":0,"maxAttributeLength":0,"maxUniformLength":0,"uniformIdCounter":15,"uniformLocsById":{"1":{},"2":1,"3":2,"4":3,"5":4,"6":5,"7":6,"8":7,"9":8,"10":9,"11":10,"12":11,"13":{},"14":{}},"uniformSizeAndIdsByName":{"positions":[12,1],"shared_int4s":[1,13],"src_tensor_tex2darr":[1,14]},"uniformArrayNamesById":{"1":"positions","2":"positions","3":"positions","4":"positions","5":"positions","6":"positions","7":"positions","8":"positions","9":"positions","10":"positions","11":"positions","12":"positions","13":"shared_int4s","14":"src_tensor_tex2darr"}},"currentElementArrayBufferBinding":0,"currentArrayBufferBinding":0},"initExtensionsDone":true,"maxVertexAttribs":16,"clientBuffers":[{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null},{"enabled":false,"clientside":false,"size":0,"type":0,"normalized":0,"stride":0,"ptr":0,"vertexAttribPointerAdaptor":null}],"tempVertexBufferCounters1":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"tempVertexBufferCounters2":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"tempVertexBuffers1":[[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null]],"tempVertexBuffers2":[[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null]],"tempIndexBuffers":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null]}}} at W2.DetectFromImage (https://zhuyu1997.github.io/open-pose-editor/assets/index-394460cf.js:3306:13301)

如果问题一直存在,请点击此处提问。
关闭

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.