выберите элемент в списке Python без запятой - PullRequest
0 голосов
/ 28 сентября 2018

У меня есть такой список:

[[437   5  91  91]
 [331 303 155 155]]

Как выбрать первый или второй элемент в этом списке?Вывод, который я хочу:

[437   5  91  91]

У меня есть два лица в моей камере при распознавании лиц, тогда у меня есть этот список в моем выводе:

face_cascade = cv2.CascadeClassifier(PATH) 
.... 
faces = face_cascade.detectMultiScale( gray, 
                                       scaleFactor=1.2, 
                                       minNeighbors=10, 
                                       minSize=(self.face_size, self.face_size) 
                                      )

когда я печатаю (лица), у меня естьэтот вывод, и я хочу выбрать один из этих элементов.

type(faces) gives `<class 'numpy.ndarray'>` this is type of faces

Ответы [ 2 ]

0 голосов
/ 28 сентября 2018

Вопрос : я хочу выбрать один из этих элементов.

Подробнее о Операции с общей последовательностью


docs.opencv.org
Python: cv2.CascadeClassifier.detectMultiScale2 (image [, scaleFactor [, minNeighbors [, flags [, minSize [, maxSize]]]]]]) → objects, numDetections

Обнаруживает объекты разных размеров во входном изображении.
Обнаруженные объекты возвращаются в виде списка прямоугольников.

Этот вызоввернуть два объекта, вы можете разделить его, например:

objects, numDetections =  cv2.CascadeClassifier.detectMultiScale2(...

или

objects, numDetections =  faces

или

objects = faces[0]
numDetections =  faces[1]
0 голосов
/ 28 сентября 2018

Предполагая, что вы имеете в виду строчку вместо списка, вы можете сделать следующее

import json

test="[[437   5  91  91] [331 303 155 155]]"

#convert the multiple whitespace to single white space
test=' '.join(test.split())

#replace whitespace with comma
test=test.replace(" ",",")

#make a list of it
lists = json.loads(test)

print(lists[0])
...