Соответствие шаблона Python3 Opencv с контурами на jetson nanoLinux

Ответить Пред. темаСлед. тема
Anonymous
 Соответствие шаблона Python3 Opencv с контурами на jetson nano

Сообщение Anonymous »

У меня проблема с получением результата сопоставления шаблона Opencv с Contours на Jetson Nano En715. Приведенный ниже код отлично работает в системе ПК (Windows и Linux) без каких-либо задержек или задержек, но когда я запускаю его на jetson nano En715 с USB-камера c270 Logitech (эта камера такая же, как камера, которую я использую на ПК) Я не могу сопоставить шаблон. Никаких ошибок, просто шаблон и изображение не совпадают.
Кто-нибудь может мне помочь, в чем проблема? может быть, из моего кода, или, может быть, jetson nano En715 настолько слаб для этого и имеет задержку, спасибо, ребята
import cv2
import numpy as np
import matplotlib.pyplot as plt
from math import copysign, log10
MatchImage = False
vc = cv2.VideoCapture(0)
template = cv2.imread('template.jpg')
template_img = template
plt.axis('off')
plt.imshow(template)
plt.title('OUR TEMPLATE')
plt.show()
template = cv2.cvtColor(template,cv2.COLOR_BGR2GRAY)
_, target = vc.read()
img_copy=target.copy()
target_gray = cv2.cvtColor(target,cv2.COLOR_BGR2GRAY)
plt.axis('off')
plt.imshow(target)
plt.title('OUR TARGET')
plt.show()
ret,thresh1 = cv2.threshold(template,127,255,0)
ret,thresh2 = cv2.threshold(target_gray,127,255,0)
contours,hierarchy = cv2.findContours(thresh1,cv2.RETR_CCOMP, cv2.CHAIN_APPROX_NONE)
if hierarchy[0][0][3] == -1 :
cv2.drawContours(template_img,contours,-1,(0,255,0),3)
else:
cv2.drawContours(template_img,contours,-1,(0,0,255),3)
plt.axis('off')
plt.imshow(template_img)
plt.title('Identifying the Contours')
plt.show()
sorted_contours = sorted(contours, key=cv2.contourArea, reverse=True)
template_contour = contours[1]
contours,hierarchy = cv2.findContours(thresh2,cv2.RETR_CCOMP,cv2.CHAIN_APPROX_SIMPLE)
for c in contours:
match = cv2.matchShapes(template_contour,c,3,0.0)
print(match)
if match < 0.15:
closest_contour = c
area = cv2.contourArea(c)
printtext = 'data print: ' + str(area)
print (printtext)
if (match < 0.01):
cv2.drawContours(target,[closest_contour],-1,(255,0,0),3)
c = max([closest_contour], key = cv2.contourArea)
x,y,w,h = cv2.boundingRect(c)
cv2.rectangle(target, (x,y), (x+w,y+h), (0,255,0), 5)
print ("Match")
MatchImage = True
plt.title("Original Image with a bounding box")
plt.imshow(target)
plt.show()
if MatchImage == False:
print("not match")
plt.title("Original Image with a bounding box")
plt.imshow(target)
plt.show()
if MatchImage == True:
plt.title("Original Image with a bounding box")
plt.imshow(target)
plt.show()


Подробнее здесь: https://stackoverflow.com/questions/790 ... etson-nano
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Соответствие шаблона Python3 Opencv с контурами на jetson nano
    Anonymous » » в форуме Python
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Соответствие шаблона Python3 Opencv с контурами на jetson nano
    Anonymous » » в форуме Python
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Детектор Jetson Nano Adafruit ServoKit не может обнаружить Jetson
    Гость » » в форуме Python
    0 Ответы
    95 Просмотры
    Последнее сообщение Гость
  • Jetson Nano, может использовать CUDA в терминале Python3, но не в файле
    Anonymous » » в форуме Python
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Как использовать 100% графический процессор в Jetson Nano 8 ГБ, есть ли какой-либо код или необходимо установить некотор
    Anonymous » » в форуме Python
    0 Ответы
    38 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Linux»