Портирование на мобильное приложение

Мне хотелось бы портировать программу для консоли на python на мобильное приложение. Проблема в том что я совсем не разбираюсь в программировании для мобильных приложений. Хотелось бы услышать насколько сложно это реализовать и как много времени это займёт. Код прикладываю ниже:

import io
import cv2
import time
import numpy as np
import matplotlib as plt
import matplotlib.pyplot as plt

cap = cv2.VideoCapture(0)
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1280)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 720)
cap.set(cv2.CAP_PROP_FPS, 30)
x, y, w, h = 550, 250, 100, 100
cascade = cv2.CascadeClassifier(r'C:\Users\srsc1\Desktop\haarcascades\haarcascade_frontalface_default.xml')
heartbeat_count = 128
heartbeat_values = [0]*heartbeat_count
heartbeat_times = [time.time()]*heartbeat_count
fig = plt.figure()
ax = fig.add_subplot(111)

while(True):    
    ret, frame = cap.read() 
    img = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    faces = cascade.detectMultiScale(img, scaleFactor = 1.5, minNeighbors = 5, minSize= (20, 20))
    for (x, y, w, h) in faces:
        face_dec = cv2.rectangle(img, (x, y), (x+w, y+h), (255, 0 , 0), 2)
        #Заменить crop_img на алгоритм отслеживания лица(по каскаду) = img[y:y + h, x:x + w]
        heartbeat_values = heartbeat_values[1:] + [np.average(face_dec)]
        heartbeat_times = heartbeat_times[1:] + [time.time()]
        #Функции графика
        ax.plot(heartbeat_times, heartbeat_values)
        fig.canvas.draw()
        plot_img_np = np.fromstring(fig.canvas.tostring_rgb(), dtype=np.uint8, sep='')
        plot_img_np = plot_img_np.reshape(fig.canvas.get_width_height()[::-1] + (3,))
        plt.cla()
        #Показ фрейма
        cv2.imshow('Main', img )
        cv2.imshow('Graph', plot_img_np)
        if cv2.waitKey(1) & 0xFF == ord('q'):
           break
    cap.release()
    cv2.destroyAllWindows()

Заранее спасибо!


Ответы (0 шт):