เจชเฉเจฐเฉเจฒเฉเจ
เจเฉฑเจ เจตเฉเจกเฉเจ เจนเฉเจฃ เจเฉฐเจเจฐเจจเฉเฉฑเจ 'เจคเฉ เจเฉเฉฐเจฎ เจฐเจฟเจนเจพ เจนเฉ เจเจฟเจธ เจตเจฟเฉฑเจ เจฆเจฟเจเจพเจเจ เจเจฟเจ เจนเฉ เจเจฟ เจเฉเจธเจฒเจพ เจฆเจพ เจเจเฉเจชเจพเจเจฒเจ เจธเฉเจ เจจเฉเฉฐ เจเจฟเจตเฉเจ เจฆเฉเจเจฆเจพ เจนเฉเฅค
เจฎเฉเจจเฉเฉฐ เจเฉฑเจ เจกเจฟเจเฉเจเจเจฐ เจจเจพเจฒ เจญเจฐเจชเฉเจฐ เจตเฉเจกเฉเจ เจชเฉเจฐเจธเจพเจฐเจฟเจค เจเจฐเจจ เจฒเจ เจฒเฉฐเจฌเฉ เจธเจฎเฉเจ เจคเฉเจ เจเฉเจเจฒเฉ เจนเฉ เจฐเจนเฉ เจนเฉ, เจ เจคเฉ เจ เจธเจฒ เจธเจฎเฉเจ เจตเจฟเฉฑเจเฅค
เจธเจฎเฉฑเจธเจฟเจ เจเจน เจนเฉ เจเจฟ เจฎเฉเจ เจฐเจพเจธเจฌเฉเจฐเฉ เจคเฉเจ เจตเฉเจกเฉเจ เจชเฉเจฐเจธเจพเจฐเจฟเจค เจเจฐเจจเจพ เจเจพเจนเฉเฉฐเจฆเจพ เจนเจพเจ, เจ
เจคเฉ เจเจธ 'เจคเฉ เจจเจฟเจเจฐเจฒ เจจเฉเจเจตเจฐเจ เจกเจฟเจเฉเจเจเจฐ เจฆเฉ เจเจพเจฐเจเฉเจเจผเจพเจฐเฉ เจฒเฉเฉเฉเจเจฆเฉ เจนเฉเจฃ เจฒเจ เจฌเจนเฉเจค เจเฉเจ เจเฉฑเจกเจฆเฉ เจนเฉเฅค
เจเฉฐเจเฉเจฒ เจจเจฟเจเจฐเจฒ เจเฉฐเจชเจฟเจเจเจฐ เจธเจเจฟเจ
เจฎเฉเจ เจตเฉฑเจ-เจตเฉฑเจ เจนเฉฑเจฒเจพเจ 'เจคเฉ เจตเจฟเจเจพเจฐ เจเฉเจคเจพเฅค
ะ
เจนเจพเจฒเจพเจเจเจฟ เจเฉฐเจเฉเจฒ เจตเฉฑเจกเฉ เจซเจฐเฉเจฎเจตเจฐเจ เจฒเจ เจเจจเจตเจฐเจเจฐ เจชเฉเจฐเจฆเจพเจจ เจเจฐเจฆเจพ เจนเฉ, เจเฉฑเจฅเฉ เจฌเจนเฉเจค เจธเจพเจฐเฉเจเจ เจเจฎเฉเจเจ เจนเจจเฅค
เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจฒเฉเฉเฉเจเจฆเฉ เจจเฉเฉฑเจเจตเจฐเจ เจฆเจพ เจซเจพเจฐเจฎเฉเจ เจ เจธเฉฐเจเจค เจนเฉ เจธเจเจฆเจพ เจนเฉ, เจ เจคเฉ เจเฉเจเจฐ เจเจน เจ เจจเฉเจเฉเจฒ เจนเฉ, เจคเจพเจ เจเฉเจ เจฒเฉเจ เจฐเจพเจ เจกเจฟเจตเจพเจเจธ 'เจคเฉ เจธเจฎเจฐเจฅเจฟเจค เจจเจนเฉเจ เจนเฉ เจธเจเจฆเฉเจเจ เจนเจจ, เจ เจคเฉ เจเฉเจเจฐ เจเจน เจธเจฎเจฐเจฅเจฟเจค เจนเจจ, เจคเจพเจ เจชเจฐเจฟเจตเจฐเจคเจจ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจฆเฉเจฐเจพเจจ เจเจฒเจคเฉเจเจ เจนเฉ เจธเจเจฆเฉเจเจ เจนเจจ, เจเจฟเจธ เจฆเฉ เจจเจคเฉเจเฉ เจตเจเฉเจ เจธเจพเจจเฉเฉฐ เจเจเจเจชเฉเฉฑเจ 'เจคเฉ เจเฉเจ เจ เจเฉเจฌ เจเฉเจเจผเจพเจ เจฎเจฟเจฒเจฆเฉเจเจ เจนเจจเฅค
เจเจฎ เจคเฉเจฐ 'เจคเฉ, เจเฉเจเจฐ เจคเฉเจธเฉเจ เจเจฟเจธเฉ เจเจฟเจธเจฎ เจฆเจพ เจเจฐเจฌเจฟเจเจฐเจฐเฉ เจจเจฟเจเจฐเจฒ เจจเฉเฉฑเจเจตเจฐเจ เจเจพเจนเฉเฉฐเจฆเฉ เจนเฉ, เจคเจพเจ เจเจน NCS เจจเจพเจฒ เจเฉฐเจฎ เจจเจนเฉเจ เจเจฐ เจธเจเจฆเจพเฅค เจเจธ เจฒเจ, เจฎเฉเจ เจธเจญ เจคเฉเจ เจตเฉฑเจง เจตเจฟเจเจชเจ เจ เจคเฉ เจชเจนเฉเฉฐเจเจฏเฉเจ เจธเจพเจงเจจเจพเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจธเจฎเฉฑเจธเจฟเจ เจจเฉเฉฐ เจนเฉฑเจฒ เจเจฐเจจ เจฆเฉ เจเฉเจธเจผเจฟเจธเจผ เจเจฐเจจ เจฆเจพ เจซเฉเจธเจฒเจพ เจเฉเจคเจพ.
เจเจฒเจพเจเจก
เจเฉฑเจ เจธเจฅเจพเจจเจ เจนเจพเจฐเจกเจตเฉเจ เจฐ เจนเฉฑเจฒ เจฆเจพ เจธเจชเฉฑเจธเจผเจ เจตเจฟเจเจฒเจช เจเจฒเจพเจเจก 'เจคเฉ เจเจพเจฃเจพ เจนเฉเฅค
เจคเจฟเจเจฐ เจเฉเจคเฉ เจตเจฟเจเจฒเจช - เจฎเฉเจฐเฉเจเจ เจ เฉฑเจเจพเจ เจเฉฐเจเจฒเฉ เจเจฒเจฆเฉเจเจ เจนเจจ.
เจธเจพเจฐเฉ เจเจเฉ:
... เจ เจคเฉ เจฆเจฐเจเจจเจพเจ เจเฉฑเจ เจเจพเจฃเฉ เจเจพเจเจฆเฉ เจนเจจเฅค
เจเจธ เจเจฟเจธเจฎ เจฆเฉ เจเฉเจฃ เจเจฐเจจเจพ เจฌเจฟเจฒเจเฉเจฒ เจเจธเจพเจจ เจจเจนเฉเจ เจนเฉ.
เจ เจคเฉ เจฎเฉเจ เจเฉเจฃเจจ เจฆเจพ เจซเฉเจธเจฒเจพ เจจเจนเฉเจ เจเฉเจคเจพ, เจชเจฐ เจกเฉเจเจฐ เจตเจฟเฉฑเจ เจเจชเจจเจธเฉเจตเฉ 'เจคเฉ เจเฉฐเจเฉ เจชเฉเจฐเจพเจฃเฉ เจเจพเจฐเจ เจฏเฉเจเจจเจพ เจจเฉเฉฐ เจธเจฎเฉเจเจฃ เจ เจคเฉ เจเจธเจจเฉเฉฐ เจเจฒเจพเจเจก เจตเจฟเฉฑเจ เจเจฒเจพเจเจฃ เจฆเจพ เจซเฉเจธเจฒเจพ เจเฉเจคเจพ.
เจเจธ เจชเจนเฉเฉฐเจ เจฆเจพ เจซเจพเจเจฆเจพ เจฒเจเจเจคเจพ เจ เจคเฉ เจจเจฟเจฏเฉฐเจคเจฐเจฃ เจนเฉ - เจคเฉเจธเฉเจ เจจเจฟเจเจฐเจฒ เจจเฉเจเจตเจฐเจ, เจนเฉเจธเจเจฟเฉฐเจ, เจธเจฐเจตเจฐ เจจเฉเฉฐ เจฌเจฆเจฒ เจธเจเจฆเฉ เจนเฉ - เจเจฎ เจคเฉเจฐ 'เจคเฉ, เจเจฟเจธเฉ เจตเฉ เจคเจฐเฉเจนเจพเจ.
เจธเจฐเจตเจฐ
เจเจ เจเฉฑเจ เจธเจฅเจพเจจเจ เจชเฉเจฐเฉเจเฉเจเจพเจเจช เจจเจพเจฒ เจธเจผเฉเจฐเฉ เจเจฐเฉเจ.
เจฐเจตเจพเจเจคเฉ เจคเฉเจฐ 'เจคเฉ เจฎเฉเจ REST API, OpenCV เจ เจคเฉ MobileSSD เจจเฉเฉฑเจเจตเจฐเจ เจฒเจ เจซเจฒเจพเจธเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเจพ เจนเจพเจเฅค
เจกเฉเจเจฐ 'เจคเฉ เจฎเฉเจเฉเจฆเจพ เจธเฉฐเจธเจเจฐเจฃเจพเจ เจจเฉเฉฐ เจธเจฅเจพเจชเจฟเจค เจเจฐเจจ เจคเฉเจ เจฌเจพเจ เจฆ, เจฎเฉเจ เจเฉเจเจฟเจ เจเจฟ OpenCV 4.1.2 เจฎเฉเจฌเจพเจเจฒ SSD v1_coco_2018_01_28 เจจเจพเจฒ เจเฉฐเจฎ เจจเจนเฉเจ เจเจฐเจฆเจพ เจนเฉ, เจ เจคเฉ เจฎเฉเจจเฉเฉฐ เจธเจพเจฌเจค เจนเฉเจ 11/06_2017 'เจคเฉ เจตเจพเจชเจธ เจเจพเจฃเจพ เจชเจฟเจเฅค
เจธเฉเจตเจพ เจฆเฉ เจธเจผเฉเจฐเฉเจเจค เจคเฉ, เจ เจธเฉเจ เจเจฒเจพเจธ เจฆเฉ เจจเจพเจฎ เจ เจคเฉ เจจเฉเจเจตเจฐเจ เจฒเฉเจก เจเจฐเจฆเฉ เจนเจพเจ:
def init():
tf_labels.initLabels(dnn_conf.DNN_LABELS_PATH)
return cv.dnn.readNetFromTensorflow(dnn_conf.DNN_PATH, dnn_conf.DNN_TXT_PATH)
เจเฉฑเจ เจธเจฅเจพเจจเจ เจกเฉเจเจฐ 'เจคเฉ (เจฌเจนเฉเจค เจเฉฑเจ เจจเฉเจเจตเจพเจจ เจฒเฉเจชเจเจพเจช 'เจคเฉ) เจเจธ เจจเฉเฉฐ 0.3 เจธเจเจฟเฉฐเจ เจฒเฉฑเจเจฆเจพ เจนเฉ, เจฐเจธเจฌเฉเจฐเฉ 'เจคเฉ - 3.5เฅค
เจเจ เจเจฃเจจเจพ เจธเจผเฉเจฐเฉ เจเจฐเฉเจ:
def inference(img):
net.setInput(cv.dnn.blobFromImage(img, 1.0/127.5, (300, 300), (127.5, 127.5, 127.5), swapRB=True, crop=False))
return net.forward()
เจกเฉเจเจฐ - 0.2 เจธเจเจฟเฉฐเจ, เจฐเจธเจฌเฉเจฐเฉ - 1.7.
เจเฉเจเจธเจฐ เจเจเจเจผเฉเจธเจ เจจเฉเฉฐ เจชเฉเฉเจนเจจเจฏเฉเจ json เจตเจฟเฉฑเจ เจฌเจฆเจฒเจฃเจพ:
def build_detection(data, thr, rows, cols):
ret = []
for detection in data[0,0,:,:]:
score = float(detection[2])
if score > thr:
cls = int(detection[1])
a = {"class" : cls, "name" : tf_labels.getLabel(cls), "score" : score}
a["x"] = int(detection[3] * cols)
a["y"] = int(detection[4] * rows)
a["w"] = int(detection[5] * cols ) - a["x"]
a["h"] = int(detection[6] * rows) - a["y"]
ret.append(a)
return ret
เจ
เฉฑเจเฉ
เจเฉฑเจ เจตเจฟเจเจฒเจชเจฟเจ เจตเจฟเจเจฒเจช, เจเจฟเจธ เจตเจฟเฉฑเจ เจตเจงเฉเจฐเฉ เจเฉฐเจฎ เจจเฉเฉฐ เจธเจฐเจตเจฐ เจตเจฟเฉฑเจ เจคเจฌเจฆเฉเจฒ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉ: เจเจน เจเจชเจฃเฉ เจเจช เจฒเฉฑเจญเฉเจเจ เจตเจธเจคเฉเจเจ เจจเฉเฉฐ เจเฉฑเจเจฐ เจฆเจฟเฉฐเจฆเจพ เจนเฉ เจ เจคเฉ เจฎเฉเจเฉฐเจฎเจฒ เจเจฟเฉฑเจคเจฐ เจจเฉเฉฐ เจตเจพเจชเจธ เจเจฐเจฆเจพ เจนเฉเฅค
เจเจน เจตเจฟเจเจฒเจช เจตเจงเฉเจ เจนเฉ เจเจฟเฉฑเจฅเฉ เจ เจธเฉเจ เจธเจฐเจตเจฐ 'เจคเฉ opencv เจจเฉเฉฐ เจเจฟเฉฑเจเจฃเจพ เจจเจนเฉเจ เจเจพเจนเฉเฉฐเจฆเฉ เจนเจพเจเฅค
เจกเฉเจเจฐ
เจ เจธเฉเจ เจเจฟเฉฑเจคเจฐ เจจเฉเฉฐ เจเจเฉฑเจ เจพ เจเจฐเจฆเฉ เจนเจพเจ.
เจเฉเจก เจจเฉเฉฐ เจเฉฐเจฌเจก เจ
เจคเฉ เจชเฉเจธเจ เจเฉเจคเจพ เจเจฟเจ เจนเฉ
เจเฉฑเจ เจชเจฒเฉเจเจซเจพเจฐเจฎ เจฆเฉ เจคเฉเจฐ 'เจคเฉ, เจ เจธเฉเจ เจฐเจพเจธเจฌเฉเจฐเฉ เจตเจพเจเจ เจนเฉ เจกเฉเจฌเฉเจ เจจ เจธเจเฉเจฐเฉเจ เจฒเจตเจพเจเจเฉ - เจ เจธเฉเจ เจชเฉเจฐเจฎเจพเจฃเจฟเจค เจคเจเจจเฉเจเฉ เจธเจเฉเจ เจคเฉเจ เจญเจเจเจฃ เจจเจนเฉเจ เจเจพเจตเจพเจเจเฉเฅค
เจคเฉเจนเจพเจจเฉเฉฐ flask, protobuf, เจฌเฉเจจเจคเฉเจเจ, opencv_python, เจฎเฉเจฌเจพเจเจฒ SSD, Github เจคเฉเจ เจธเจฐเจตเจฐ เจเฉเจก เจจเฉเฉฐ เจกเจพเจเจจเจฒเฉเจก เจเจฐเจจ เจ เจคเฉ เจธเจฐเจตเจฐ เจจเฉเฉฐ เจเจพเจฒเฉ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉเฅค
FROM python:3.7-stretch
RUN pip3 install flask
RUN pip3 install protobuf
RUN pip3 install requests
RUN pip3 install opencv_python
ADD http://download.tensorflow.org/models/object_detection/ssd_mobilenet_v1_coco_11_06_2017.tar.gz /
RUN tar -xvf /ssd_mobilenet_v1_coco_11_06_2017.tar.gz
ADD https://github.com/tprlab/docker-detect/archive/master.zip /
RUN unzip /master.zip
EXPOSE 80
CMD ["python3", "/docker-detect-master/detect-app/app.py"]
เจธเจงเจพเจฐเจจ
เจกเฉเจเจฐ เจนเฉฑเจฌ 'เจคเฉ เจชเฉเจฐเจเจพเจธเจผเจฟเจค เจเฉเจคเจพ เจเจพ เจฐเจฟเจนเจพ เจนเฉ
เจกเฉเจเจฐ เจฐเจเจฟเจธเจเจฐเฉเจเจ เจเจฒเจพเจเจก เจกเจฟเจเฉเจเจเจฐเจพเจ เจคเฉเจ เจเฉฑเจ เจจเจนเฉเจ เจเจคเฉ เจจเจพเจฒ เจเฉเจฃเจพ เจเจฐ เจฐเจนเฉเจเจ เจนเจจ.
เจชเจฐเฉเจธเจผเจพเจจ เจจเจพ เจเจฐเจจ เจฒเจ, เจ
เจธเฉเจ เจฐเฉเฉเฉเจนเฉเจตเจพเจฆเฉ เจคเฉเจฐ 'เจคเฉ เจฒเฉฐเจเจพเจเจเฉ
- เจฐเจเจฟเจธเจเจฐ
- เจฒเจพเจเจฟเจจ:
เจกเฉเจเจฐ เจฒเฉเจเจเจจ - เจเจ เจเฉฑเจ เจ
เจฐเจฅเจชเฉเจฐเจจ เจจเจพเจฎ เจฆเฉ เจจเจพเจฒ เจเจ:
เจกเฉเจเจฐ เจเฉเจ opencv-detect tprlab/opencv-detect-ssd - เจธเจฐเจตเจฐ เจคเฉ เจเจฟเฉฑเจคเจฐ เจ
เฉฑเจชเจฒเฉเจก เจเจฐเฉ:
เจกเฉเจเจฐ เจชเฉเจธเจผ tprlab/opencv-detect-ssd
เจ เจธเฉเจ เจเจฒเจพเจเจก เจตเจฟเฉฑเจ เจฒเจพเจเจ เจเจฐเจฆเฉ เจนเจพเจ
เจเฉฐเจเฉเจจเจฐ เจเจฟเฉฑเจฅเฉ เจเจฒเจพเจเจฃเจพ เจนเฉ เจฆเฉ เจเฉเจฃ เจตเฉ เจเจพเจซเจผเฉ เจเฉเฉเฉ เจนเฉเฅค
เจธเจพเจฐเฉ เจตเฉฑเจกเฉ เจเจฟเจกเจพเจฐเฉ (เจเฉเจเจฒ, โโเจฎเจพเจเจเจฐเฉเจธเจพเจซเจ, เจเจฎเจพเจเจผเจพเจจ) เจชเจนเจฟเจฒเฉ เจธเจพเจฒ เจฒเจ เจเฉฑเจ เจฎเจพเจเจเจฐเฉ-เจเฉฐเจธเจเฉเจเจธ เจฎเฉเจซเจผเจค เจตเจฟเฉฑเจ เจชเฉเจธเจผ เจเจฐเจฆเฉ เจนเจจเฅค
เจฎเจพเจเจเฉเจฐเฉเจธเจพเจซเจ เจ
เจเจผเฉเจฐ เจ
เจคเฉ เจเฉเจเจฒ เจเจฒเจพเจเจก เจจเจพเจฒ เจชเฉเจฐเจฏเฉเจ เจเจฐเจจ เจคเฉเจ เจฌเจพเจ
เจฆ, เจฎเฉเจ เจฌเจพเจ
เจฆ เจตเจฟเฉฑเจ เจธเฉเจเจฒ เจนเฉ เจเจฟเจ เจเจฟเจเจเจเจฟ เจเจน เจคเฉเจเจผเฉ เจจเจพเจฒ เจฌเฉฐเจฆ เจนเฉ เจเจฟเจ เจธเฉเฅค
เจฎเฉเจ เจเฉฑเจฅเฉ เจนเจฆเจพเจเจคเจพเจ เจจเจนเฉเจ เจฒเจฟเจเฉเจเจ, เจเจฟเจเจเจเจฟ เจเจน เจนเจฟเฉฑเจธเจพ เจเฉเจฃเฉ เจนเฉเจ เจชเฉเจฐเจฆเจพเจคเจพ เจฒเจ เจฌเจนเฉเจค เจเจพเจธ เจนเฉเฅค
เจฎเฉเจ เจตเฉฑเจ-เจตเฉฑเจ เจนเจพเจฐเจกเจตเฉเจ
เจฐ เจตเจฟเจเจฒเจชเจพเจ เจฆเฉ เจเฉเจธเจผเจฟเจธเจผ เจเฉเจคเฉ,
เจเฉฑเจ เจชเฉฑเจงเจฐ (เจธเจพเจเจเจพ เจ
เจคเฉ เจธเจฎเจฐเจชเจฟเจค) - 0.4 - 0.5 เจธเจเจฟเฉฐเจเฅค
เจตเจงเฉเจฐเฉ เจธเจผเจเจคเฉเจธเจผเจพเจฒเฉ เจเจพเจฐเจพเจ - 0.25 - 0.3.
เจเฉเจฐ, เจธเจญ เจคเฉเจ เจฎเจพเฉเฉ เจนเจพเจฒเจพเจค เจตเจฟเฉฑเจ เจตเฉ, เจเจฟเฉฑเจคเจพเจ เจคเจฟเฉฐเจจ เจตเจพเจฐ เจนเจจ, เจคเฉเจธเฉเจ เจเฉเจธเจผเจฟเจธเจผ เจเจฐ เจธเจเจฆเฉ เจนเฉเฅค
เจตเฉเจกเฉเจ
เจ
เจธเฉเจ Raspberry 'เจคเฉ เจเฉฑเจ เจธเจงเจพเจฐเจจ OpenCV เจตเฉเจกเฉเจ เจธเจเฉเจฐเฉเจฎเจฐ เจฒเจพเจเจ เจเจฐเจฆเฉ เจนเจพเจ, Google Cloud เจฐเจพเจนเฉเจ เจเฉเจ เจเจฐเจฆเฉ เจนเฉเจเฅค
เจชเฉเจฐเจฏเฉเจ เจฒเจ, เจเฉฑเจ เจตเฉเจกเฉเจ เจซเจพเจเจฒ เจตเจฐเจคเฉ เจเจ เจธเฉ เจเฉ เจเฉฑเจ เจตเจพเจฐ เจเฉฑเจ เจฌเฉเจคเจฐเจคเฉเจฌ เจเฉเจฐเจพเจนเฉ 'เจคเฉ เจซเจฟเจฒเจฎเจพเจ เจเจ เจธเฉเฅค
def handle_frame(frame):
return detect.detect_draw_img(frame)
def generate():
while True:
rc, frame = vs.read()
outFrame = handle_frame(frame)
if outFrame is None:
(rc, outFrame) = cv.imencode(".jpg", frame)
yield(b'--framern' b'Content-Type: image/jpegrnrn' + bytearray(outFrame) + b'rn')
@app.route("/stream")
def video_feed():
return Response(generate(), mimetype = "multipart/x-mixed-replace; boundary=frame")
เจกเจฟเจเฉเจเจเจฐ เจจเจพเจฒ เจธเจพเจจเฉเฉฐ เจชเฉเจฐเจคเฉ เจธเจเจฟเฉฐเจ เจคเจฟเฉฐเจจ เจซเจฐเฉเจฎเจพเจ เจคเฉเจ เจตเฉฑเจง เจจเจนเฉเจ เจฎเจฟเจฒเจฆเจพ, เจธเจญ เจเฉเจ เจฌเจนเฉเจค เจนเฉเจฒเฉ เจนเฉเฉฐเจฆเจพ เจนเฉเฅค
เจเฉ เจคเฉเจธเฉเจ GCloud เจตเจฟเฉฑเจ เจเฉฑเจ เจธเจผเจเจคเฉเจธเจผเจพเจฒเฉ เจฎเจธเจผเฉเจจ เจฒเฉเจเจฆเฉ เจนเฉ, เจคเจพเจ เจคเฉเจธเฉเจ เจชเฉเจฐเจคเฉ เจธเจเจฟเฉฐเจ 4-5 เจซเจฐเฉเจฎเจพเจ เจฆเจพ เจชเจคเจพ เจฒเจเจพ เจธเจเจฆเฉ เจนเฉ, เจชเจฐ เจเจน เจ
เฉฐเจคเจฐ เจ
เฉฑเจ เจฒเจ เจฒเจเจญเจ เจ
เจฆเจฟเฉฑเจ เจนเฉ, เจเจน เจ
เจเฉ เจตเฉ เจนเฉเจฒเฉ เจนเฉเฅค
เจเจฒเจพเจเจก เจ
เจคเฉ เจเจตเจพเจเจพเจ เจฆเฉ เจเจฐเจเจฟเจเจ เจฆเจพ เจเจธ เจจเจพเจฒ เจเฉเจ เจฒเฉเจฃเจพ-เจฆเฉเจฃเจพ เจจเจนเฉเจ เจนเฉ, เจกเจฟเจเฉเจเจเจฐ เจเจฎ เจนเจพเจฐเจกเจตเฉเจ
เจฐ 'เจคเฉ เจเฉฑเจฒเจฆเจพ เจนเฉ เจ
เจคเฉ เจเฉฐเจจเฉ เจเจคเฉ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจฆเจพ เจนเฉเฅค
เจจเจฟเจเจฐเจฒ เจเฉฐเจชเจฟเจเจเจฐ เจธเจเจฟเจ
เจฎเฉเจ เจตเจฟเจฐเฉเจง เจจเจนเฉเจ เจเจฐ เจธเจเจฟเจ เจ เจคเฉ NCS 'เจคเฉ เจฌเฉเจเจเจฎเจพเจฐเจ เจจเฉเฉฐ เจเจฒเจพเจเจเฅค
เจกเจฟเจเฉเจเจเจฐ เจฆเฉ เจเจคเฉ 0.1 เจธเฉเจเจฟเฉฐเจก เจคเฉเจ เจฅเฉเฉเฉเจนเฉ เจนเฉเจฒเฉ เจธเฉ, เจเจฟเจธเฉ เจตเฉ เจธเจฅเจฟเจคเฉ เจตเจฟเฉฑเจ เจเฉฑเจ เจเจฎเจเจผเฉเจฐ เจฎเจธเจผเฉเจจ 'เจคเฉ เจฌเฉฑเจฆเจฒ เจจเจพเจฒเฉเจ 2-3 เจเฉเจฃเจพ เจคเฉเจเจผ, เจญเจพเจต 8-9 เจซเจฐเฉเจฎ เจชเฉเจฐเจคเฉ เจธเจเจฟเฉฐเจเฅค
เจจเจคเฉเจเจฟเจเจ เจตเจฟเฉฑเจ เจ
เฉฐเจคเจฐ เจเจธ เจคเฉฑเจฅ เจฆเฉเจเจฐเจพ เจธเจฎเจเจพเจเจ เจเจฟเจ เจนเฉ เจเจฟ เจฎเฉเจฌเจพเจเจฒ SSD เจธเฉฐเจธเจเจฐเจฃ 2018_01_28 NCS 'เจคเฉ เจฒเจพเจเจ เจเฉเจคเจพ เจเจฟเจ เจธเฉเฅค
เจชเฉ.เจเฉฑเจธ. เจเจธ เจคเฉเจ เจเจฒเจพเจตเจพ, เจชเฉเจฐเจฏเฉเจเจพเจ เจจเฉ เจฆเจฟเจเจพเจเจ เจนเฉ เจเจฟ เจเฉฑเจ I7 เจชเฉเจฐเฉเจธเฉเจธเจฐ เจตเจพเจฒเฉ เจเฉฑเจ เจเจพเจซเจผเฉ เจธเจผเจเจคเฉเจธเจผเจพเจฒเฉ เจกเฉเจธเจเจเฉเจช เจฎเจธเจผเฉเจจ เจฅเฉเฉเฉ เจตเจงเฉเจ เจจเจคเฉเจเฉ เจฆเจฟเจเจพเจเจเจฆเฉ เจนเฉ เจ เจคเฉ เจเจน เจชเฉเจฐเจคเฉ เจธเจเจฟเฉฐเจ 10 เจซเจฐเฉเจฎเจพเจ เจจเฉเฉฐ เจจเจฟเจเฉเฉเจจเจพ เจธเฉฐเจญเจต เจธเจพเจฌเจค เจนเฉเจเจ เจนเฉเฅค
เจเจฒเฉฑเจธเจเจฐ
เจชเฉเจฐเจฏเฉเจ เจนเฉเจฐ เจ
เฉฑเจเฉ เจเจฟเจ เจ
เจคเฉ เจฎเฉเจ เจเฉเจเจฒ เจเฉเจฌเจฐเจจเฉเจเจธ เจตเจฟเฉฑเจ เจชเฉฐเจ เจจเฉเจกเจพเจ 'เจคเฉ เจกเจฟเจเฉเจเจเจฐ เจธเจฅเจพเจชเจค เจเฉเจคเจพเฅค
เจชเฉเจก เจเจชเจฃเฉ เจเจช เจตเจฟเฉฑเจ เจเจฎเจเจผเฉเจฐ เจธเจจ เจ
เจคเฉ เจเจนเจจเจพเจ เจตเจฟเฉฑเจเฉเจ เจนเจฐ เจเฉฑเจ 2 เจซเจฐเฉเจฎเจพเจ เจชเฉเจฐเจคเฉ เจธเจเจฟเฉฐเจ เจคเฉเจ เจตเฉฑเจง เจชเฉเจฐเจเจฟเจฐเจฟเจ เจจเจนเฉเจ เจเจฐ เจธเจเจฆเจพ เจธเฉเฅค
เจชเจฐ เจเฉเจเจฐ เจคเฉเจธเฉเจ N เจจเฉเจกเจธ เจ
เจคเฉ N เจฅเจฐเจฟเฉฑเจกเจพเจ เจตเจฟเฉฑเจ เจชเจพเจฐเจธ เจซเจฐเฉเจฎเจพเจ เจฆเฉ เจจเจพเจฒ เจเฉฑเจ เจเจฒเฉฑเจธเจเจฐ เจเจฒเจพเจเจเจฆเฉ เจนเฉ, เจคเจพเจ เจจเฉเจกเจธ (5) เจฆเฉ เจเจพเจซเฉ เจเจฟเจฃเจคเฉ เจฆเฉ เจจเจพเจฒ เจคเฉเจธเฉเจ เจชเฉเจฐเจคเฉ เจธเจเจฟเฉฐเจ เจฒเฉเฉเฉเจเจฆเฉ 10 เจซเจฐเฉเจฎเจพเจ เจจเฉเฉฐ เจชเฉเจฐเจพเจชเจค เจเจฐ เจธเจเจฆเฉ เจนเฉเฅค
def generate():
while True:
rc, frame = vs.read()
if frame is not None:
future = executor.submit(handle_frame, (frame.copy()))
Q.append(future)
keep_polling = len(Q) > 0
while(keep_polling):
top = Q[0]
if top.done():
outFrame = top.result()
Q.popleft()
if outFrame:
yield(b'--framern' b'Content-Type: image/jpegrnrn' + bytearray(outFrame) + b'rn')
keep_polling = len(Q) > 0
else:
keep_polling = len(Q) >= M
เจเฉฑเจฅเฉ เจเฉ เจนเฉเจเจ เจนเฉ:
NCS เจฆเฉ เจฎเฉเจเจพเจฌเจฒเฉ เจฅเฉเฉเจพ เจเฉฑเจ เจคเฉเจเจผ, เจชเจฐ เจเฉฑเจ เจธเจเฉเจฐเฉเจฎ เจจเจพเจฒเฉเจ เจตเจงเฉเจฐเฉ เจเจผเฉเจฐเจฆเจพเจฐเฅค
เจฒเจพเจญ, เจฌเฉเจธเจผเจ, เจฐเฉเจเจฟเจ เจจเจนเฉเจ เจนเฉ - เจเจชเจจเจธเฉเจตเฉ เจเจฟเฉฑเจคเจฐเจพเจ เจฆเฉ เจธเจฎเจเจพเจฒเฉเจเจฐเจจ เจ เจคเฉ เจกเฉเฉฐเจเฉ เจจเจเจฒ เจฒเจ เจเจตเจฐเจฒเฉเจ เจนเจจเฅค
เจธเจฟเฉฑเจเจพ
เจเฉเฉฑเจฒ เจฎเจฟเจฒเจพ เจเฉ, เจชเฉเจฐเจฏเฉเจ เจธเจพเจจเฉเฉฐ เจเจน เจธเจฟเฉฑเจเจพ เจเฉฑเจขเจฃ เจฆเฉ เจเจเจพเจเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉ เจเจฟ เจเฉเจเจฐ เจคเฉเจธเฉเจ เจเฉเจธเจผเจฟเจธเจผ เจเจฐเจฆเฉ เจนเฉ, เจคเจพเจ เจคเฉเจธเฉเจ เจเฉฑเจ เจธเจงเจพเจฐเจจ เจเจฒเจพเจเจก เจจเจพเจฒ เจฆเฉเจฐ เจนเฉ เจธเจเจฆเฉ เจนเฉเฅค
เจชเจฐ เจเฉฑเจ เจธเจผเจเจคเฉเจธเจผเจพเจฒเฉ เจกเฉเจธเจเจเจพเจช เจเจพเจ เจธเจฅเจพเจจเจ เจนเจพเจฐเจกเจตเฉเจ เจฐ เจคเฉเจนเจพเจจเฉเฉฐ เจฌเจฟเจนเจคเจฐ เจจเจคเฉเจเฉ เจชเฉเจฐเจพเจชเจค เจเจฐเจจ เจฆเฉ เจเจเจพเจเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉ, เจ เจคเฉ เจฌเจฟเจจเจพเจ เจเจฟเจธเฉ เจเจพเจฒ เจฆเฉเฅค
เจนเจตเจพเจฒเฉ
Github 'เจคเฉ เจเฉเจก DockerHub 'เจคเฉ เจกเฉเจเจฐ เจเจฟเฉฑเจคเจฐ OpenCV เจ เจคเฉ Python 'เจคเฉ เจตเฉเจกเฉเจ เจธเจฐเจตเจฐ
เจธเจฐเฉเจค: www.habr.com