原文:Github 项目 - OpenPose 参数说明 - AIUAI

OpenPose 作为强大的关键点估计项目,其提供了很多可配置参数选项.

完整参数列表可运行:

# buntu
cd OPENPOSE_ROOT/
./build/examples/openpose/openpose.bin --help

OpenPose 运行,如:

# Ubuntu: Body + Hand + Face
./build/examples/openpose/openpose.bin -image_dir /path/to/images/ --num_gpu_start 1 --display 2 --fullscreen --write_images /path/to/res_images/--net_resolution "1312x736" --scale_number 4 --scale_gap 0.25 --hand --hand_scale_number 6 --hand_scale_range 0.4 --face

# Ubuntu: Body
./build/examples/openpose/openpose.bin --image_dir /path/to/images/ --num_gpu_start 1 --display 2 --fullscreen --write_images /path/to/res_images/

1. 部分关键参数

Main Flags

  • --face: 开启 Face 关键点检测.

  • --hand: 开启 Hand 关键点检测

  • --video input.mp4: 读取 Video.

  • --camera 3: 读取 webcam number 3.

  • --image_dir path_to_images/: 运行图像路径内的图片.

  • --ip_camera http://iris.not.iac.es/axis-cgi/mjpg/video.cgi?resolution=320x240?x.mjpeg: 在 streamed IP camera 上运行. 参考public IP cameras 例子.

  • --write_video path.avi: 将处理后的图片保存为 Video.

  • --write_images folder_path: 将处理后的图片保存到指定路径.

  • --write_keypoint path/: 在指定路径输出包含人体姿态数据的 JSON, XML 或 YML 文件.

  • --process_real_time: 对于视频,可能在实时运行时,跳过某些视频帧.

  • --disable_blending: 如果 --disable_blending=True,则在很色背景上渲染估计结果(如 keypoints skeletons 和 heatmaps),而不显示原始图像. Related: part_to_show, alpha_pose, and alpha_pose.

  • --part_to_show: 可视化的预测通道(Prediction channel).

  • --display 0: 不打开可视化显示窗口. 对于服务器部署和 OpenPose 加速很帮助.

  • --num_gpu 2 --num_gpu_start 1: 多 GPUs 时,设置开始的 GPU id. 默认使用所有可用的 GPUs.

  • --model_pose MPI: 采用的模型Model,影响 Keypoints 的数量、运行速度和精度.

  • --logging_level 3: Logging messages threshold, range [0,255]: 0 - 输出所有信息e & 255 - 不输出任何信息. Current messages in the range [1-4], 1 for low priority messages and 4 for important ones.

2. 参数说明

Flags Description

每个 Flag 包括 flag_name, default valuedescription.

2.1 Debugging/Other

  • DEFINE_int32(logging_level, 3, “The logging level. Integer in the range [0, 255]. 0 will output any log() message, while 255 will not output any. Current OpenPose library messages are in the range 0-4: 1 for low priority messages and 4 for important ones.”); 日志输出信息
  • DEFINE_bool(disable_multi_thread, false, “It would slightly reduce the frame rate in order to highly reduce the lag. Mainly useful for 1) Cases where it is needed a low latency (e.g., webcam in real-time scenarios with low-range GPU devices); and 2) Debugging OpenPose when it is crashing to locate the error.”); 多线程
  • DEFINE_int32(profile_speed, 1000, “If PROFILER_ENABLED was set in CMake or Makefile.config files, OpenPose will show some runtime statistics at this frame number.”);

2.2 Producer

  • DEFINE_int32(camera, -1, “The camera index for cv::VideoCapture. Integer in the range [0, 9]. Select a negative number (by default), to auto-detect and open the first available camera.”); 相机作为输入
  • DEFINE_string(camera_resolution, “-1x-1”, "Set the camera resolution (either --camera or --flir_camera). -1x-1 will use the default 1280x720 for --camera, or the maximum flir camera resolution available for --flir_camera"); 相机分辨率
  • DEFINE_string(video, “”, “Use a video file instead of the camera. Use examples/media/video.avi for our default example video.”); Video 作为输入,而不采用相机
  • DEFINE_string(image_dir, “”, “Process a directory of images. Use examples/media/ for our default example folder with 20 images. Read all standard formats (jpg, png, bmp, etc.).”); 待处理图像的路径
  • DEFINE_bool(flir_camera, false, “Whether to use FLIR (Point-Grey) stereo camera.”); 是否使用 FLIR 相机
  • DEFINE_int32(flir_camera_index, -1, “Select -1 (default) to run on all detected flir cameras at once. Otherwise, select the flir camera index to run, where 0 corresponds to the detected flir camera with the lowest serial number, and n to the n-th lowest serial number camera.”); 可用作为输入的 FLIR 相机
  • DEFINE_string(ip_camera, “”, “String with the IP camera URL. It supports protocols like RTSP and HTTP.”); IP 相机 URL
  • DEFINE_uint64(frame_first, 0, “Start on desired frame number. Indexes are 0-based, i.e., the first frame has index 0.”); 指定开始运行的帧索引
  • DEFINE_uint64(frame_step, 1, “Step or gap between processed frames. E.g., --frame_step 5 would read and process frames 0, 5, 10, etc…”); 跳过处理的帧数
  • DEFINE_uint64(frame_last, -1, “Finish on desired frame number. Select -1 to disable. Indexes are 0-based, e.g., if set to 10, it will process 11 frames (0-10).”); 指定结束运行的帧索引
  • DEFINE_bool(frame_flip, false, “Flip/mirror each frame (e.g., for real time webcam demonstrations).”); 每一帧进行 Flip/Mirror 处理
  • DEFINE_int32(frame_rotate, 0, “Rotate each frame, 4 possible values: 0, 90, 180, 270.”); 每一帧进行旋转 rotate 处理
  • DEFINE_bool(frames_repeat, false, “Repeat frames when finished.”); 结束时重复帧
  • DEFINE_bool(process_real_time, false, “Enable to keep the original source frame rate (e.g., for video). If the processing time is too long, it will skip frames. If it is too fast, it will slow it down.”); 实时处理
  • DEFINE_string(camera_parameter_folder, “models/cameraParameters/flir/”, “String with the folder where the camera parameters are located.”); 相机参数所在路径
  • DEFINE_bool(frame_keep_distortion, false, “If false (default), it will undistortionate the image based on the camera_parameter_folder camera parameters; if true, it will not undistortionate, i.e., it will leave it as it is.”); 每一帧是否扭曲 distortion 处理

2.3 OpenPose

  • DEFINE_string(model_folder, “models/”, “Folder path (absolute or relative) where the models (pose, face, …) are located.”); 模型放置路径
  • DEFINE_string(output_resolution, “-1x-1”, “The image resolution (display and output). Use “-1x-1” to force the program to use the input image resolution.”); 输出图像分辨率
  • DEFINE_int32(num_gpu, -1, “The number of GPU devices to use. If negative, it will use all the available GPUs in your machine.”); 使用的 GPU 设置
  • DEFINE_int32(num_gpu_start, 0, “GPU device start number.”); GPU ID 设置
  • DEFINE_int32(keypoint_scale, 0, “Scaling of the (x,y) coordinates of the final pose data array, i.e., the scale of the (x,y) coordinates that will be saved with the write_json & write_keypoint flags. Select 0 to scale it to the original source resolution; 1to scale it to the net output size (set with net_resolution); 2 to scale it to the final output size (set with resolution); 3 to scale it in the range [0,1], where (0,0) would be the top-left corner of the image, and (1,1) the bottom-right one; and 4 for range [-1,1], where (-1,-1) would be the top-left corner of the image, and (1,1) the bottom-right one. Non related with scale_number and scale_gap.”); Keypoints 缩放尺度scale
  • DEFINE_int32(number_people_max, -1, “This parameter will limit the maximum number of people detected, by keeping the people with top scores. The score is based in person area over the image, body part score, as well as joint score (between each pair of connected body parts). Useful if you know the exact number of people in the scene, so it can remove false positives (if all the people have been detected. However, it might also include false negatives by removing very small or highly occluded people. -1 will keep them all.”); 检测到的人体数量
  • DEFINE_bool(maximize_positives, false,“It reduces the thresholds to accept a person candidate. It highly increases both false and true positives. I.e., it maximizes average recall but could harm average precision.”); 最大正样本设置,降低作为人体候选的阈值,能够最大化平均 Recall,但会降低平均 Precision
  • DEFINE_double(fps_max, -1., “Maximum processing frame rate. By default (-1), OpenPose will process frames as fast as possible. Example usage: If OpenPose is displaying images too quickly, this can reduce the speed so the user can analyze better each frame from the GUI.”); 最大处理的帧速率

2.4 OpenPose Body Pose

  • DEFINE_bool(body_disable, false, “Disable body keypoint detection. Option only possible for faster (but less accurate) face keypoint detection.”); 是否检测 Body 关键点
  • DEFINE_string(model_pose, “BODY_25”, “Model to be used. E.g., COCO (18 keypoints), MPI (15 keypoints, ~10% faster), MPI_4_layers (15 keypoints, even faster but less accurate).”); 采用的 Body 模型,如 Body_25
  • DEFINE_string(net_resolution, “-1x368”, “Multiples of 16. If it is increased, the accuracy potentially increases. If it is decreased, the speed increases. For maximum speed-accuracy balance, it should keep the closest aspect ratio possible to the images or videos to be processed. Using -1 in any of the dimensions, OP will choose the optimal aspect ratio depending on the user’s input value. E.g., the default -1x368 is equivalent to 656x368 in 16:9 resolutions, e.g., full HD (1980x1080) and HD (1280x720) resolutions.”); 模型网络的输入分辨率,16的倍数
  • DEFINE_int32(scale_number, 1, “Number of scales to average.”); 多尺度Scales 数
  • DEFINE_double(scale_gap, 0.3, “Scale gap between scales. No effect unless scale_number > 1. Initial scale is always 1. If you want to change the initial scale, you actually want to multiply the net_resolution by your desired initial scale.”); 尺度Scales 间的 scale gap

2.5 OpenPose Body Pose Heatmaps and Part Candidates

  • DEFINE_bool(heatmaps_add_parts, false, “If true, it will fill op::Datum::poseHeatMaps array with the body part heatmaps, and analogously face & hand heatmaps to op::Datum::faceHeatMaps & op::Datum::handHeatMaps. If more than one add_heatmaps_X flag is enabled, it will place then in sequential memory order: body parts + bkg + PAFs. It will follow the order on POSE_BODY_PART_MAPPING in src/openpose/pose/poseParameters.cpp. Program speed will considerably decrease. Not required for OpenPose, enable it only if you intend to explicitly use this information later.”); 是否添加 Body Parts 的 heatmaps
  • DEFINE_bool(heatmaps_add_bkg, false, “Same functionality as add_heatmaps_parts, but adding the heatmap corresponding to background.”); 是否添加 BKG 的 heatmaps
  • DEFINE_bool(heatmaps_add_PAFs, false, “Same functionality as add_heatmaps_parts, but adding the PAFs.”); 是否添加 PAFs 的 heatmaps
  • DEFINE_int32(heatmaps_scale, 2, “Set 0 to scale op::Datum::poseHeatMaps in the range [-1,1], 1 for [0,1]; 2 for integer rounded [0,255]; and 3 for no scaling.”); heatmaps scale
  • DEFINE_bool(part_candidates, false, “Also enable write_json in order to save this information. If true, it will fill the op::Datum::poseCandidates array with the body part candidates. Candidates refer to all the detected body parts, before being assembled into people. Note that the number of candidates is equal or higher than the number of final body parts (i.e., after being assembled into people). The empty body parts are filled with 0s. Program speed will slightly decrease. Not required for OpenPose, enable it only if you intend to explicitly use this information.”); 是否保存 Body Part Candidates

2.6 OpenPose Face

  • DEFINE_bool(face, false, “Enables face keypoint detection. It will share some parameters from the body pose, e.g. model_folder. Note that this will considerable slow down the performance and increse the required GPU memory. In addition, the greater number of people on the image, the slower OpenPose will be.”); 是否进行 Face 关键点检测
  • DEFINE_string(face_net_resolution, “368x368”, “Multiples of 16 and squared. Analogous to net_resolution but applied to the face keypoint detector. 320x320 usually works fine while giving a substantial speed up when multiple faces on the image.”); Face 模型网络的输入分辨率

2.7 OpenPose Hand

  • DEFINE_bool(hand, false, “Enables hand keypoint detection. It will share some parameters from the body pose, e.g. model_folder. Analogously to --face, it will also slow down the performance, increase the required GPU memory and its speed depends on the number of people.”); 是否进行 Hand 关键点检测
  • DEFINE_string(hand_net_resolution, “368x368”, “Multiples of 16 and squared. Analogous to net_resolution but applied to the hand keypoint detector.”); Hand 模型的网络输入分辨率
  • DEFINE_int32(hand_scale_number, 1, “Analogous to scale_number but applied to the hand keypoint detector. Our best results were found with hand_scale_number = 6 and hand_scale_range = 0.4.”); 类似于 scale_number 参数,但只用于 Hand 关键点检测
  • DEFINE_double(hand_scale_range, 0.4, “Analogous purpose than scale_gap but applied to the hand keypoint detector. Total range between smallest and biggest scale. The scales will be centered in ratio 1. E.g., if scaleRange = 0.4 and scalesNumber = 2, then there will be 2 scales, 0.8 and 1.2.”); 类似于 scale_gap 参数,但只用于 Hand 关键点检测
  • DEFINE_bool(hand_tracking, false, “Adding hand tracking might improve hand keypoints detection for webcam (if the frame rate is high enough, i.e., >7 FPS per GPU) and video. This is not person ID tracking, it simply looks for hands in positions at which hands were located in previous frames, but it does not guarantee the same person ID among frames.”); Hand 追踪Tracking

2.8 OpenPose 3-D Reconstruction

  • DEFINE_bool(3d, false, “Running OpenPose 3-D reconstruction demo: 1) Reading from a stereo camera system. 2) Performing 3-D reconstruction from the multiple views. 3) Displaying 3-D reconstruction results. Note that it will only display 1 person. If multiple people is present, it will fail.”); 是否进行 3D 重建Reconstruction
  • DEFINE_int32(3d_min_views, -1, “Minimum number of views required to reconstruct each keypoint. By default (-1), it will require all the cameras to see the keypoint in order to reconstruct it.”); 重构每个关键点所需的最小视角Views 数
  • DEFINE_int32(3d_views, 1, “Complementary option to --image_dir or --video. OpenPose will read as many images per iteration, allowing tasks such as stereo camera processing (--3d). Note that --camera_parameters_folder must be set. OpenPose must find as many xml files in the parameter folder as this number indicates.”); **3D 视角Videos **

2.9 Extra algorithms

  • DEFINE_bool(identification, false, “Experimental, not available yet. Whether to enable people identification across frames.”); 是否跨帧 Person Identification(暂不可用)
  • DEFINE_int32(tracking, -1, “Experimental, not available yet. Whether to enable people tracking across frames. The value indicates the number of frames where tracking is run between each OpenPose keypoint detection. Select -1 (default) to disable it or 0 to run simultaneously OpenPose keypoint detector and tracking for potentially higher accurary than only OpenPose.”); 是否跨帧 Person Tracking(暂不可用)
  • DEFINE_int32(ik_threads, 0, “Experimental, not available yet. Whether to enable inverse kinematics (IK) from 3-D keypoints to obtain 3-D joint angles. By default (0 threads), it is disabled. Increasing the number of threads will increase the speed but also the global system latency.”); 是否可以 inverse kinematics (暂不可用)

2.10 OpenPose Rendering

  • DEFINE_int32(part_to_show, 0, “Prediction channel to visualize (default: 0). 0 for all the body parts, 1-18 for each body part heat map, 19 for the background heat map, 20 for all the body part heat maps together, 21 for all the PAFs, 22-40 for each body part pair PAF.”); 可视化显示的 Body Parts
  • DEFINE_bool(disable_blending, false, “If enabled, it will render the results (keypoint skeletons or heatmaps) on a black background, instead of being rendered into the original image. Related: part_to_show, alpha_pose, and alpha_pose.”); 是否渲染可视化输出结果

2.11 OpenPose Rendering Pose

  • DEFINE_double(render_threshold, 0.05, “Only estimated keypoints whose score confidences are higher than this threshold will be rendered. Generally, a high threshold (> 0.5) will only render very clear body parts; while small thresholds (~0.1) will also output guessed and occluded keypoints, but also more false positives (i.e., wrong detections).”); 渲染阈值,只有估计关键的置信度大于阈值的才进行渲染

  • DEFINE_int32(render_pose, -1, “Set to 0 for no rendering, 1 for CPU rendering (slightly faster), and 2 for GPU rendering (slower but greater functionality, e.g., alpha_X flags). If -1, it will pick CPU if CPU_ONLY is enabled, or GPU if CUDA is enabled. If rendering is enabled, it will render both outputData and cvOutputData with the original image and desired body part to be shown (i.e., keypoints, heat maps or PAFs).”); 渲染姿态,0 - no rendering, 1 - CPU rendering,2 - GPU rendering

  • DEFINE_double(alpha_pose, 0.6, “Blending factor (range 0-1) for the body part rendering. 1 will show it completely, 0 will hide it. Only valid for GPU rendering.”); Body Part rendering 的渲染因子, 只可用于 GPU rendering

  • DEFINE_double(alpha_heatmap, 0.7, “Blending factor (range 0-1) between heatmap and original frame. 1 will only show the heatmap, 0 will only show the frame. Only valid for GPU rendering.”); heatmaps 和原始帧图像的渲染因子, GPU rendering

2.12 OpenPose Rendering Face

  • DEFINE_double(face_render_threshold, 0.4, “Analogous to render_threshold, but applied to the face keypoints.”); 类似于 render_threshold,但用于 Face 关键点

  • DEFINE_int32(face_render, -1, “Analogous to render_pose but applied to the face. Extra option: -1 to use the same configuration that render_pose is using.”); 类似于 render_pose,但用于 Face 关键点

  • DEFINE_double(face_alpha_pose, 0.6, “Analogous to alpha_pose but applied to face.”); 类似于 alpha_pose,但用于 Face 关键点

  • DEFINE_double(face_alpha_heatmap, 0.7, “Analogous to alpha_heatmap but applied to face.”); 类似于 alpha_heatmap,但用于 Face 关键点

2.13 OpenPose Rendering Hand

  • DEFINE_double(hand_render_threshold, 0.2, “Analogous to render_threshold, but applied to the hand keypoints.”); 类似于 render_threshold,但用于 Hand 关键点

  • DEFINE_int32(hand_render, -1, “Analogous to render_pose but applied to the hand. Extra option: -1 to use the same configuration that render_pose is using.”); 类似于 render_pose,但用于 Hand 关键点

  • DEFINE_double(hand_alpha_pose, 0.6, “Analogous to alpha_pose but applied to hand.”); 类似于 alpha_pose,但用于 Hand 关键点****

  • DEFINE_double(hand_alpha_heatmap, 0.7, “Analogous to alpha_heatmap but applied to hand.”); 类似于 alpha_heatmap,但用于 Hand 关键点

2.14 Display

  • DEFINE_bool(fullscreen, false, “Run in full-screen mode (press f during runtime to toggle).”); 是否全屏显示
  • DEFINE_bool(no_gui_verbose, false, “Do not write text on output images on GUI (e.g., number of current frame and people). It does not affect the pose rendering.”); 是否在 GUI 输出图像上写入文本
  • DEFINE_int32(display, -1, “Display mode: -1 for automatic selection; 0 for no display (useful if there is no X server and/or to slightly speed up the processing if visual output is not required); 2 for 2-D display; 3 for 3-D display (if --3d enabled); and 1 for both 2-D and 3-D display.”); 显示模式,-1 - 自动选择,0 - 不显示,2 - 2D 显示,3 - 3D 显示, 1 - 2D 和 3D 显示

2.15 Command Line Inteface Verbose

  • DEFINE_double(cli_verbose, -1.f, “If -1, it will be disabled (default). If it is a positive integer number, it will print on the command line every verbose frames. If number in the range (0,1), it will print the progress every verbose times the total of frames.”);

2.16 Result Saving

  • DEFINE_string(write_images, “”, “Directory to write rendered frames in write_images_format image format.”); 渲染图像帧的保存路径
  • DEFINE_string(write_images_format, “png”, “File extension and format for write_images, e.g., png, jpg or bmp. Check the OpenCV function cv::imwrite for all compatible extensions.”); 渲染图像帧的保存格式
  • DEFINE_string(write_video, “”, “Full file path to write rendered frames in motion JPEG video format. It might fail if the final path does not finish in .avi. It internally uses cv::VideoWriter. Flag write_video_fps controls FPS.”); 渲染帧的写入 JPEG video 格式的完整文件路径
  • DEFINE_double(write_video_fps, -1., “Frame rate for the recorded video. By default, it will try to get the input frames producer frame rate (e.g., input video or webcam frame rate). If the input frames producer does not have a set FPS (e.g., image_dir or webcam if OpenCV not compiled with its support), set this value accordingly (e.g., to the frame rate displayed by the OpenPose GUI).”); Video 帧记录的帧速率
  • DEFINE_string(write_json, “”, “Directory to write OpenPose output in JSON format. It includes body, hand, and face pose keypoints (2-D and 3-D), as well as pose candidates (if --part_candidates enabled).”); 输出结果保存为 JSON 格式文件的路径
  • DEFINE_string(write_coco_json, “”, “Full file path to write people pose data with JSON COCO validation format.”); 以 COCO Validation 的 JSON 格式保存 people pose 数据的完整文件路径
  • DEFINE_string(write_coco_foot_json, “”, “Full file path to write people foot pose data with JSON COCO validation format.”); 以 COCO Validation 的 JSON 格式保存 people foot pose 数据的完整文件路径
  • DEFINE_int32(write_coco_json_variant, 0, “Currently, this option is experimental and only makes effect on car JSON generation. It selects the COCO variant for cocoJsonSaver.”); cocoJsonSaver 的 COCO 变形
  • DEFINE_string(write_heatmaps, “”, “Directory to write body pose heatmaps in PNG format. At least 1 add_heatmaps_X flag must be enabled.”); Body Pose Heatmaps 写入为 PNG 格式的保存路径
  • DEFINE_string(write_heatmaps_format, “png”, “File extension and format for write_heatmaps, analogous to write_images_format. For lossless compression, recommended png for integer heatmaps_scale and float for floating values.”); 保存 heatmaps 结果的文件格式
  • DEFINE_string(write_keypoint, “”, “(Deprecated, use write_json) Directory to write the people pose keypoint data. Set format with write_keypoint_format.”); **[已废弃] **
  • DEFINE_string(write_keypoint_format, “yml”, “(Deprecated, use write_json) File extension and format for write_keypoint: json, xml, yaml & yml. Json not available for OpenCV < 3.0, use write_json instead.”); [已废弃]

2.17 Result Saving - Extra Algorithms

  • DEFINE_string(write_video_adam, “”, “Experimental, not available yet. E.g., ~/Desktop/adamResult.avi. Flag write_video_fps controls FPS.”);
  • DEFINE_string(write_bvh, “”, “Experimental, not available yet. E.g., ~/Desktop/mocapResult.bvh.”);

2.18 UDP Communication

  • DEFINE_string(udp_host, “”, “Experimental, not available yet. IP for UDP communication. E.g., 192.168.0.1.”);
  • DEFINE_string(udp_port, “8051”, “Experimental, not available yet. Port number for UDP communication.”);

Github 项目 - OpenPose 参数说明相关推荐

  1. 一个丧心病狂的Github项目:东北话编程,大写的服!

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源:开源最前线(ID:OpenSourceTop) 还记得12月 ...

  2. 900 多道 LeetCode 题解,这个 GitHub 项目值得 Star!

    转自 | 码农有道 大家好,我是小 G. 周末风和日丽,适合刷 LeetCode 今天给你们推荐个 GitHub 项目,里面收集了 900 多道 LeetCode 题解,并包含中英文两个版本,适合大多 ...

  3. CNN架构复现实战 | 附视频和github项目

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 经常会看到类似的广告<面试算法岗,你被要求复现论文了吗?&g ...

  4. 有趣的Github项目万里挑一 !(附论文、项目链接)

    来源:PaperWeekly 本文共1000字,建议阅读5分钟. 本文为你介绍9个最新机器学习开源项目. 本文带你快速 get 每个精选Github项目的亮点和痛点,时刻紧跟 AI 前沿成果. 01 ...

  5. 过年期间:这个 GitHub 项目你必能用到

    春节期间,难免会走亲访友.如果家里来了客人:倒水,吃水果,八卦,嗑瓜子,更重要的是要连 WiFi. 这时七大姑八大姨会问:小王呀,你家 WiFi 密码多少?你心头一惊,我常年在外 996,哪知道家里的 ...

  6. Github 项目推荐 | 用手势输入表情符号 —— Emojinator

    Github 项目推荐 | 用手势输入表情符号 -- Emojinator 此代码可以帮助开发者识别和分类不同的 Emoji 图像,不过目前只支持手绘的 Emoji 图像. 您可以安装 Conda f ...

  7. 搜索github项目stars排名

    搜索github项目stars排名 文章目录: 一.介绍 二.使用实例 1.996.ICU 2.搜索我想要某方向的优质项目 一.介绍 有时我们会想搜索一些比较好的项目,虽然stars多的不一定是非常好 ...

  8. 优秀大数据GitHub项目一览

    企业正在迅速用新技术武装自己以便从大数据项目中获益.各行业对大数据分析人才的需求也迫使我们升级自己的技能以便寻找更好的职业发展.  跳槽之前最好先搞清楚一个岗位会接触到的项目类型,这样你才能掌握所有需 ...

  9. Android Studio导入github项目详解

    版权声明:本文为博主原创文章,转载请标明出处. https://blog.csdn.net/lyhhj/article/details/48789705 最近在群里发现总有人问一些关于Android ...

最新文章

  1. 参加海峡两岸城市地理信息系统论坛2010 年会(一张图、规划信息化和空间句法的碎碎念)...
  2. QIIME 2用户文档. 22Python命令行模式(2019.7)
  3. 5G 产业链重要投资节点
  4. HTTP 错误 404.3 – Not Found 由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序...
  5. Matlab实用程序--图形应用-变换的傅立叶函数曲线
  6. oracle12系统需求,GoldenGateforOracle的系统需求
  7. 类的加载连接和初始化
  8. AT4996-[AGC034F]RNG and XOR【FWT,生成函数】
  9. Java编写代理服务器(Burp拦截Demo)一
  10. 递归列出文件下的文件信息,迭代器
  11. debian源码编译安装mysql5.6_MySQL 5.6 Linux Debian/Ubuntu源码编译安装 LNMP之MySQL
  12. linuxcentos防ssh爆破
  13. 一个简单的DDraw应用程序2
  14. 三登堂入室-核心编程-01
  15. 23种设计模式(十三)接口隔离之门面模式
  16. 矩阵论作业4,5,6讲
  17. MCP2515收发程序 CAN总线 CAN程序 CAN通信 5K-1M波特率 STM32+MCP2515
  18. linux应用程序开发指南-开发工具介绍
  19. linux远程文件复制,Linux远程复制文件
  20. python for循环求1到100的和_python中用for循环语句实现1加到100的方法

热门文章

  1. Code Runner:vscode一键运行插件
  2. 计算机运行缓慢的原因,电脑运行很慢是什么原因?怎么解决?
  3. 服务器cpu型号E5,Intel四路XeonE5-4600:完整型号规格
  4. win8 网络 连接计算机名称,Win8系统宽带连接自动连接设置教程
  5. linux-acls-给一个目录添加用户
  6. 如何传达绩效评估的价值
  7. 我与时尚MM的那些事儿
  8. 谈网易游戏倩女幽魂验证码的识别
  9. [vios1023]维多利亚的舞会3强联通分量tarjan
  10. python狗图像识别_TensorFlow实践教程:使用神经网络对犬种进行图像识别分类