使用dlib面部标志点进行图像处理时python中的奇异矩阵误差

时间:2017-03-03 10:01:42

标签: python image opencv dlib

我正在尝试运行一个开源python脚本。我没有太多的编程经验,没有python。我能够通过在pythonanywhere.com上执行程序来解决最初与弃用代码相关的一些问题。

该程序是开源的,您可以在Virtual-Makeup找到python脚本。程序与已经提供的面部标志点(嘴唇)完美地运行。

但是当我尝试使用dlib.net中的面部标志点作为输入时,在pointpixel.txt中,在唇膏脚本中, 抛出了以下错误。

Traceback (most recent call last):
File "/home/JayshankarD/test.py", line 29, in <module>
i_u_l = inter(point_in_x[:up_left_end],point_in_y[:up_left_end])
File "/home/JayshankarD/test.py", line 11, in inter
f2 = interp1d(lx, ly, kind=k1)
File "/usr/local/lib/python3.5/dist-packages/scipy/interpolate/interpolate.py", line 478, in __init__
self._spline = splmake(self.x, self._y, order=order)
File "/usr/local/lib/python3.5/dist-packages/scipy/interpolate/interpolate.py", line 2927, in splmake
coefs = func(xk, yk, order, conds, B)
File "/usr/local/lib/python3.5/dist-packages/scipy/interpolate/interpolate.py", line 2624, in _find_smoothest
p = scipy.linalg.solve(Q, tmp)
File "/usr/local/lib/python3.5/dist-packages/scipy/linalg/basic.py", line 103, in solve
raise LinAlgError("singular matrix")
numpy.linalg.linalg.LinAlgError: singular matrix

对于外唇使用点49至59,对于内唇使用点61至67。我使用的嘴唇的内部和外部dlib.net面部标志点的坐标是

207 228
218 225
226 226
235 224
244 226
255 232
245 241
236 247
226 248
217 247
206 243
217 234
226 234
235 234
249 233
235 234
226 236
218 235

This is the image I used for dlib facial landmark points

感谢任何帮助。

由于

0 个答案:

没有答案