标签: dlib

是否可以在Android中使用Dlib,如OpenCV?

好吧,我需要一个清晰的网站或有关在Android中使用Dlib的信息.我在整个网络中搜索到使用Dlib在android中获取示例应用程序但仍然找不到一个.我还不确定我们是否可以在android中使用Dlib方法来生成.a文件,以便我们可以将它用作库.任何人都可以建议我或指导我如何在Android中使用Dlib,它的目的是什么.

dll android .a dlib

5
推荐指数
1
解决办法
6605
查看次数

如何将内存图像分配给 DLIB array2d 或图像?

这可能更像是一个 c++ 问题,但它确实与 DLIB 相关。我正在使用另一个库将图像加载到内存中(Leadtools)。我想用分配替换“load_image”函数,但我无法弄清楚如何执行此操作。我从我的负载中分配了我需要的所有信息和内存,例如像素位深度、宽度、高度、width_step、rgb/bgr 顺序和指向数据的指针。

所以在样本中,有:

array2d<bgr_pixel> img;
Run Code Online (Sandbox Code Playgroud)

我可以做这个:

img.set_size(mywidth, myheight);
Run Code Online (Sandbox Code Playgroud)

但是(假设数据 mypointer 是 bgr 连续的 char * 字节):

img.data = mydatapointer;  
Run Code Online (Sandbox Code Playgroud)

不起作用 - 没有 img.data,而且我不知道如何使用 image_view。

设置该数据指针的正确方法是什么?请注意,我不想复制内存:-)

为了模拟 load_image 并在 dlib 中使用正确的结构,还有什么需要设置的吗?

TIA

c++ dlib

5
推荐指数
1
解决办法
3863
查看次数

在android中使用dlib-19.4.0实时进行人脸识别

我已经按照这个 github项目在android上加载dlib.我能够在我的Android设备上运行这个东西.对于人脸检测和地标识别,它工作正常.但我想在我的应用程序中使用面部识别功能,我在dlib-19.4.0中可以阅读.我甚至在python上尝试过它并且有效.

我想在我的Android应用程序中导入此功能.我按照说明构建.so文件.但在.so文件中,我找不到face_recognition的功能.能帮我解决这个问题吗?这是我的CMAKE文件:

#-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
cmake_minimum_required(VERSION 3.4.1)

message("Checking CMAKE_SYSTEM_NAME = '${CMAKE_SYSTEM_NAME}'")
if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
  add_definitions(-DOS_OSX)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
  add_definitions(-DOS_LINUX)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
  add_definitions(-DOS_WIN)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Android")
  add_definitions(-DOS_ANDROID)
  message("Checking CMAKE_ABI_NAME = '${CMAKE_ANDROID_ARCH_ABI}'")
else()
  message("OS not detected.")
endif()

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Werror")

## Define each subfolders
set(JNI_DETECTION_INCLUDE jni/jni_detections)
set(JNI_DETECTION_SRC jni/jni_detections)
set(JNI_COMMON_INCLUDE jni)
set(JNI_COMMON_SRC jni/jni_common)
set(DLIB_DIR dlib)
set(EXT_DIR third_party)
set(GLOG_INCLUDE_DIR ${EXT_DIR}/miniglog)
set(OPENCV_PREBUILT ${EXT_DIR}/OpenCV-android-sdk/sdk/native/jni)

# Opencv and it will use static import
set(ANDROID_NDK_ABI_NAME ${CMAKE_ANDROID_ARCH_ABI})
include(${OPENCV_PREBUILT}/OpenCVConfig.cmake)

# Include headers
include_directories(${DLIB_DIR} …
Run Code Online (Sandbox Code Playgroud)

android face-recognition android-ndk android-studio dlib

5
推荐指数
0
解决办法
3003
查看次数

无法为 bz 提取 shape_predictor_68_face_landmarks.dat

我正在尝试运行一些面部正面化代码(在 Windows10 上使用 Python3),该代码使用 opencv 和 dlib,并且需要一个名为shape_predictor_68_face_landmarks.dat. 该代码尝试自动下载它然后解压缩它,但它无法解压缩并出现unexpected end of archive错误。我尝试使用 WinRaR 修复文件(我也尝试从http://sourceforge.net/projects/dclib/files/dlib/v18.10/shape_predictor_68_face_landmarks.dat.bz2手动下载)但它说它只能修复.zip 和 .rar 文件。

有谁知道我可以从哪里下载未压缩的 .dat 文件?或者我如何在 Windows 中修复损坏的 .bz 文件?

opencv archive bzip2 python-3.x dlib

5
推荐指数
1
解决办法
7824
查看次数

如何检查 dlib 是否使用 GPU?

我的机器有 Geforce 940mx GDDR5 GPU。

我已经安装了运行 GPU 加速 dlib(具有 GPU 支持)的所有要求:

  1. CUDA 9.0 工具包,包含来自https://developer.nvidia.com/cuda-90-download-archive?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exelocal 的所有 3 个补丁更新

  2. cuDNN 7.1.4

然后我在 Github 上克隆 dlib/davisKing 存储库以编译具有 GPU 支持的 dlib 后,我执行了以下所有命令:

$ git clone https://github.com/davisking/dlib.git
$ cd dlib
$ mkdir build
$ cd build
$ cmake .. -DDLIB_USE_CUDA=1 -DUSE_AVX_INSTRUCTIONS=1
$ cmake --build .
$ cd ..
$ python setup.py install --yes USE_AVX_INSTRUCTIONS --yes DLIB_USE_CUDA
Run Code Online (Sandbox Code Playgroud)

现在我怎么可能检查/确认 dlib(或其他库依赖于 dlib,如 Adam Geitgey 的 face_recognition)是否在 python shell/Anaconda(jupyter Notebook)中使用 GPU?

face-recognition python-3.x dlib tensorflow

5
推荐指数
2
解决办法
3万
查看次数

dlib 不使用 CUDA

我使用 pip 安装了 dlib。我的显卡支持 CUDA,但是在运行 dlib 时,它没有使用 GPU。

我在 ubuntu 18.04 上工作

Python 3.6.5 (default, Apr  1 2018, 05:46:30) 
[GCC 7.3.0] on linux
>>> import dlib
>>> dlib.DLIB_USE_CUDA
False
Run Code Online (Sandbox Code Playgroud)

我还安装了 NVidia Cuda Compile 驱动程序,但仍然无法正常工作。

nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2017 NVIDIA Corporation
Built on Fri_Nov__3_21:07:56_CDT_2017
Cuda compilation tools, release 9.1, V9.1.85
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我如何让它工作。?

python ubuntu nvidia dlib

5
推荐指数
2
解决办法
2万
查看次数

如何将 2D 面部地标转换为 3D 世界坐标?

第一次在这里发帖,我会尽力描述问题。我正在尝试使用 opencv、dlib 和网络摄像头数据实时为 3D 虚拟角色的面部设置动画,类似于此软件等花哨的应用程序

遵循此处示例并使用网络摄像头,我可以获得屏幕空间中的实时 2D 面部标志数据以及头部姿势的 3D 平移数据的估计。但我真正想知道的是面部标志的估计 3D 世界坐标。例如,当头部向一侧倾斜 30 度时,嘴巴看起来就像演员用他/她的嘴发出“w”声一样。

谁能告诉我使用估计的头部姿势将这些 2d 面部标志转换为 3D 数据的策略是什么,或者这是否使这些实时面部动画应用程序如此昂贵?


std::vector<cv::Point3d> object_pts;
std::vector<cv::Point2d> image_pts;
std::vector<cv::Point3d> reprojectsrc;
std::vector<cv::Point2d> reprojectdst;
cv::Mat rotation_vec;
cv::Mat rotation_mat;
cv::Mat translation_vec;
cv::Mat pose_mat;
cv::Mat euler_angle;
cv::Mat cam_matrix;
cv::Mat dist_coeffs;
cv::Mat out_intrinsics;
cv::Mat out_rotation;
cv::Mat out_translation;

int UpdateFace(dlib::cv_image<dlib::bgr_pixel> cimg, dlib::rectangle face)
{
    // get facial landmarks
    shape = predictor(cimg, face);

    // draw facial landmarks
    for (unsigned int i = 0; i < 68; …
Run Code Online (Sandbox Code Playgroud)

opencv tracking dlib face

5
推荐指数
1
解决办法
1011
查看次数

使用 python 3.8 windows 10 安装 dlib 错误

我无法使用 cmd 在 python 上安装 dlib,我已经下载了 cmake 并将其放在 PATH 上,或者是否有任何插件我必须先下载它?还是我的 pip 环境位于错误的位置?还是我必须将我的 python 更改为 64 位而不是 32 位?如果我必须这样做,请告诉我这样做的方法,我是新手

C:\Users\Yusuf>python -m pip install dlib --user
Collecting dlib
  Using cached https://files.pythonhosted.org/packages/63/92/05c3b98636661cb80d190a5a777dd94effcc14c0f6893222e5ca81e74fbc/dlib-19.19.0.tar.gz
Installing collected packages: dlib
    Running setup.py install for dlib ... error
    ERROR: Command errored out with exit status 1:
     command: 'C:\Program Files (x86)\Python38-32\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\Yusuf\\AppData\\Local\\Temp\\pip-install-lpo7_ajq\\dlib\\setup.py'"'"'; __file__='"'"'C:\\Users\\Yusuf\\AppData\\Local\\Temp\\pip-install-lpo7_ajq\\dlib\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\Yusuf\AppData\Local\Temp\pip-record-0h0t6gan\install-record.txt' --single-version-externally-managed --compile --user --prefix=
         cwd: C:\Users\Yusuf\AppData\Local\Temp\pip-install-lpo7_ajq\dlib\
    Complete output (65 lines): …
Run Code Online (Sandbox Code Playgroud)

python cmake dlib

5
推荐指数
1
解决办法
1万
查看次数

在 conda 环境中安装支持 gpu 的 Dlib 不起作用

我创建了一个虚拟畅达ENV只是与GPU支持运行DLIB,它从我的cmake安装,CUDA和cuDNNpip install cmakeconda install cudatoolkit cudnn,在那之后我试图运行dlibs的setup.py从网站上下载了文件夹python setup.py install --set DLIB_USE_CUDA=1 --set USE_AVX_INSTRUCTIONS=1,但它并没有检测任何 cuda 安装,从过程的以下部分看起来:

Invoking CMake setup: 'cmake /home/gustavostahl/Downloads/dlib-19.19/tools/python -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/home/gustavostahl/Downloads/dlib-19.19/build/lib.linux-x86_64-3.7 -DPYTHON_EXECUTABLE=/home/gustavostahl/anaconda3/envs/dlib_gpu/bin/python -DDLIB_USE_CUDA=1 -DUSE_AVX_INSTRUCTIONS=1 -DCMAKE_BUILD_TYPE=Release'
-- pybind11 v2.2.2
-- Using CMake version: 3.16.3
-- Compiling dlib version: 19.19.0
-- SSE4 instructions can be executed by the host processor.
-- AVX instructions can be executed by the host processor.
-- Enabling AVX instructions
-- Searching for BLAS and LAPACK
-- Searching for BLAS and LAPACK
-- …
Run Code Online (Sandbox Code Playgroud)

python dlib

5
推荐指数
0
解决办法
1496
查看次数

使用 Dlib.Net(FaceRecognition.Net) 检测人脸是否颠倒

基本上,我正在尝试使用此库https://github.com/takuya-takeuchi/FaceRecognitionDotNet检查图像中的人脸是否颠倒。以下图为例

在此处输入图片说明

这是一张使用 FaceRecognition.Net 库成功检测到的图像。图像是颠倒的。我用蓝色椭圆标记了图像中的所有面部标志。

这是我遵循的方法

 // Finding faceparts
var faceparts = dparameters._FaceRecognition.FaceLandmark(dparameters.FCImage);

// Drawing Ellipses over all points got from faceparts

foreach(var facepart in faceparts) {
  foreach(var mypoint in facepart.Values) {
    foreach(var x in mypoint) {
      tempg.DrawEllipse(Pens.Blue, x.Point.X, x.Point.Y, 2, 2);
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

现在我正在通过比较嘴唇和眼点的最大 Y 坐标来检查图像是否旋转

var temp = faceparts.FirstOrDefault();
IEnumerable < FacePoint > lippoints;
temp.TryGetValue(FacePart.BottomLip, out lippoints);

IEnumerable < FacePoint > eyepoints;
temp.TryGetValue(FacePart.LeftEye, out eyepoints);

var lippoint = lippoints.Max(r => r.Point.Y);
var topeyepoint = eyepoints.Max(r => …
Run Code Online (Sandbox Code Playgroud)

.net c# face-detection dlib

5
推荐指数
1
解决办法
102
查看次数