提问者:小点点

用于插入包含数组的字典的Python mysql代码


我有一本这样的字典;

{“名称”:“0004”,“编码”:阵列([-2.05818519 E-01,1.50254071 E-01,6.18976653 E-02,-4.57169749 E-02,-1.07391022 E-01,5.82340732 E-02,1.71395876 E-02,-6.04623035 E-02,1.16265789 E-01,-1.24150608 E-02,2.55038321 E-01,2.44104303 E-03,-2.83989906 E-01,-7.16208220 E-02,-1.18346401 E-01,6.68070763E-02,-1.55324042 E-01,-1.11675814 E-01,-1.44206494 E-01,-2.48661116 E-02,4.79197986 E-02,-3.35404947 E-02,-2.06724089 E-02,5.70063107 E-02,-1.29669383 E-01,-2.63163120 E-01,-2.25746073 E-04,-1.47813573 E-01,6.61746860 E-02,-2.05630586 E-01,-2.89494134 E-02,-8.06591734 E-02,-1.74903452 E-01,-1.17690712 E-01,-8.54253620 E-02,1.46108493 E-03,-7.83449411 E-03,-7.44407028 E-02,2.03817844E-01,-4.55042198 E-02,-1.86186373 E-01,-1.54956458 E-02,4.17447761 E-02,3.07781637 E-01,1.80454239 E-01,1.86630823 E-02,5.65212369 E-02,-9.69169587 E-02,1.39696896 E-01,-2.83250719 E-01,-3.60675156 E-04,1.29852593 E-01,1.69919491 E-01,2.47877426 E-02,2.96924170 E-02,-1.77335575 E-01,-2.26391852 E-03,1.38161883 E-01,-1.87802404 E-01,1.11906916 E-01,4.17628363 E-02,-6.03848845 E-02,4.18845750 E-03,-5.18675111 E-02,2.16162637 E-01,4.84820902 E-02,-1.24477677 E-01,-8.92214701 E-02,1.42987236 E-01,-1.07746974 E-01,1.67147964 E-02,1.29372582 E-01,-6.53869957 E-02,-2.22480565 E-01,-2.30741382 E-01,8.90350789 E-02,4.72032219 E-01,1.94205374 E-01,-1.43704772 E-01、1.38391014 E-02、-2.22896904 E-01、-4.311866557 E-02、2.22993959 E-02、5.01501486 E-02、-1.09650522 E-01、2.00281274 E-02、-1.128552253 E-01、8.36469531 E-02、1.81203574 E-01、-6.09542057 E-03、2.61690491 E-03、1.59612983 E-01、5.85054457 E-02、-5.77166155 E-02、2.08678767 E-02、7.78703764 E-02、2.3839501014 E-02、2.38391014 E-02、2.383993959 E-02、2.0281486 E-02、2.00281274

并且我使用这个SQL命令插入;

插入图像(名称,编码)值('0004','[-2.05818519 E-01 1.50254071 E-01 6.18976653 E-02-4.57169749 E-02-1.07391022 E-01 5.82340732 E-02 1.71395876 E-02-1.244623035 E-02 1.16265789 E-01-1.24150608 E-02 2.55038321 E-01 2.44104303 E-03-2.83989906 E-01-7.16208220 E-02-1.18346401 E-01 6.68070763 E-02-1.55324042 E-01-1.11675814 E-01-1.44206494 E-01-2.48-3.60675156 E-04 1.29852593 E-01 1.69919491 E-01 2.47877426 E-02 2.96924170 E-02-1.77335575 E-01-2.26391852 E-03-1.38161883 E-01-1.87802404 E-01 1.11906916 E-01 4.17628363 E-02-6.03848845 E-02 4.18845750 E-03-5.18675111 E-02 2.16162637 E-01 4.84820902 E-02-1.24477677 E-01-8.92214701 E-02 1.42987236 E-01-1.07746974 E-01-1.17628363 E-02-6.03848845 E-02 4.18845750 E-02-5.1867511 E-02 4.848209025.88016734 E-02-9.87139642 E-02 1.04927823 E-01 4.22693267 E-02-1.54544935 E-01 1.09288253 E-01-6.07409002 E-02-1.54772867 E-03-7.67392293 E-02-2.64447108 E-02-1.24488354 E-03-1.71442956 E-01-2.87759811 E-01 1.82956830 E-01-1.60583854 E-01 3.09638251 E-02 1.53580874 E-01 9.96040404 E-02 3.4009

但是编码部分不再是一个数组,而是一个文本。所以人脸识别app是不工作的检查。

如何从MySQL数据库中插入和检索图像来控制人脸识别?

提前道谢。


共1个答案

匿名用户

从数据库中检索编码时,需要将字符串转换为数组。

下面是示例python代码。

encoding = "[-2.05818519e-01 1.50254071e-01 6.18976653e-02 -4.57169749e-02 -1.07391022e-01 5.82340732e-02 1.71395876e-02 -6.04623035e-02 1.16265789e-01 -1.24150608e-02 2.55038321e-01 2.44104303e-03 -2.83989906e-01]" // by select * from table
result = encoding[1:][:-1].split(" ")
print ("The converted array is", encoding)
// [-2.05818519e-01, 1.50254071e-01, 6.18976653e-02, -4.57169749e-02, -1.07391022e-01, 5.82340732e-02, 1.71395876e-02, -6.04623035e-02, 1.16265789e-01, -1.24150608e-02, 2.55038321e-01, 2.44104303e-03, -2.83989906e-01]

最诚挚的问候