Перейти к содержимому
Compvision.ru

ProgRoman

Пользователи
  • Количество публикаций

    190
  • Зарегистрирован

  • Посещение

  • Days Won

    7

ProgRoman last won the day on April 13 2016

ProgRoman had the most liked content!

Репутация

9 Новичек

1 подписчик

О ProgRoman

  • Звание
    Эксперт

Посетители профиля

1 541 просмотр профиля
  1. привожу проверенный код для сохранения и считывания сетки #сохранение сетки import cPickle as pickle with open('net1.pickle', 'wb') as f: pickle.dump(net, f, -1) net это обученная сеть #загрузка обученной сетки из файла import cPickle as pickle with open('net1.pickle', 'rb') as f: net_pretrain = pickle.load(f) net_pretrain новая сеть загруженная из файла, теперь её можно дообучать довольно удобно дообучение сетки происходит так же как и просто обучение net_pretrain.fit(X,y) причём можно установить другое количество эпох (к примеру сеть net обучалась 10-ть эпох, для до обучения можно поставить как меньше так и больше ну или оставить столько же)) net_pretrain.max_epochs = 30
  2. Обучил сеть используя библиотеки nolearn и lasagne привожу код import os import matplotlib.pyplot as plt %pylab inline import numpy as np import lasagne from lasagne import layers from lasagne.updates import nesterov_momentum from lasagne.layers import DenseLayer from lasagne.layers import InputLayer from lasagne.layers import DropoutLayer from lasagne.layers import Conv2DLayer from lasagne.layers import MaxPool2DLayer from lasagne.nonlinearities import softmax from lasagne.updates import adam from lasagne.layers import get_all_params from nolearn.lasagne import NeuralNet from nolearn.lasagne import TrainSplit from nolearn.lasagne import objective from nolearn.lasagne import visualize from sklearn.metrics import confusion_matrix, classification_report, accuracy_score net_cnn = NeuralNet( layers=[ ('input', layers.InputLayer), ('conv1', layers.Conv2DLayer), #Convolutional layer. Params defined below ('pool1', layers.MaxPool2DLayer), # Like downsampling, for execution speed ('conv2', layers.Conv2DLayer), ('hidden3', layers.DenseLayer), ('output', layers.DenseLayer), ], input_shape=(None, 1, 28, 28), conv1_num_filters=7, conv1_filter_size=(3, 3), conv1_nonlinearity=lasagne.nonlinearities.rectify, pool1_pool_size=(2, 2), conv2_num_filters=12, conv2_filter_size=(2, 2), conv2_nonlinearity=lasagne.nonlinearities.rectify, hidden3_num_units=1000, output_num_units=10, output_nonlinearity=lasagne.nonlinearities.softmax, update_learning_rate=0.0001, update_momentum=0.9, max_epochs=10, verbose=1, ) net_cnn.fit(train,target) как можно сохранить net_cnn в какой-нибудь файлик, что бы потом можно было бы загрузить как-нибудь net_new = load_net('имя файла') ну и продолжить работать уже как с обученной сетью, ещё интересует вопрос дообучения сети может кто-то пробовал работать с этими библиотеками я не нашёл как это можно сделать.. а всё время обучать сеть заново это как-то совсем печально)
  3. Linux Opencv 2.2.0

    проект довольно старый и изначально там привязались к этой версии, заливать более свежие версии на отрез отказываются:) opencv-шные либы к своим.. да надо попробовать, идея хорошая)
  4. Linux Opencv 2.2.0

    Почему так происходит не понятно... может версия старая.. не знаю.. для отладки сделал что бы просто считывались и сохранялись отдельные кадры.. так вроде бы работает...
  5. Linux Opencv 2.2.0

    Какая-то странная ситуация у меня происходит.. Пишу под линуксом в eclipse в проекте используется opencv 2.2.0 подключал внутренние (написанные) библиотеки через -rpath вот и начались проблемы перестали работать imshow, waitkey, и видео не читается ... VideoCapture cap; cap.open(filename); Mat frm; cap>>frm; ...тоже не работает как будто ролика нету.. (остальные функции работают..) т.е. даже читать и писать изображение можно.. если исключить подключаемые дополнительные(внутренние) библиотеки то роботоспособность opencv возвращается) можно ли как-то восстановить что бы работали методы всегда) или это какой-то косяк старых версий?...
  6. Shadow Detection

    Попробовал предложенный метод детекции теней... что-то у меня совсем не только тени детектируются.. приведу код и картинки .... Mat ims = imread(filename); Mat imslb; cvtColor(ims,imslb,CV_BGR2Lab); vector<Mat> vlb; split(imslb, vlb); Mat imL = vlb[0].clone(); Scalar mean, dev; meanStdDev(imL, mean, dev); float mnL = (float)(mean.val[0]); float dvL = ((float)(dev.val[0]))/3.0; float thr = mnL - dvL; Mat bin = Mat::zeros(imL.size(),CV_8UC1); threshold(imL,bin,thr,255,CV_THRESH_BINARY); ...ну и соответственно получил следующий результат вывожу маску после пороговой обработки бинарная маска это результат обработки..
  7. Kalman

    А ок понял! спасибо большое!)
  8. Kalman

    а как её задавать тогда?... для 2-х мерной точки вроде бы ничего сложного не было просто писал ... KalmanFilter KF(4,2,0);//x,y,dx,dy KF.transitionMatrix = *(Mat_<float>(4, 4) << 1,0,1,0, 0,1,0,1, 0,0,1,0, 0,0,0,1); ...я так задавал, вроде бы было корректно... а с трёхмерными точками каким образом модель движения получать что бы матрицу задать...
  9. Kalman

    Добрый день! У меня тут появился вопрос.. в примерах фильтра Калмана обычно рассматривают предсказание и или (сглаживание) 2d точек, каким образом изменится матрица перехода если у нас точки 3-хмерные .... KalmanFilter KF(6,3,0);//x,y,z,dx,dy,dz KF.transitionMatrix = *(Mat_<float>(6, 6) << 1,0,1,0,1,0 0,1,0,1,0,1, 0,0,1,0,1,0, 0,0,0,1,0,1, 0,0,0,0,1,0, 0,0,0,0,0,1); ....матрица KF.transitionMatrix должна иметь такой блочный вид или она должна быть просто единичной?..
  10. Стабилизация видеопотока

    Да в opencv уже есть реализация, я пока с алгоритмом не определился буду пробовать и opencv конечно тоже, вообще нужна стабилизация за реальное время, так что буду тестировать несколько вариантов, вроде бы на ютубе есть стабилизация... правда не знаю есть ли реализация в открытом доступе)
  11. Стабилизация видеопотока

    камера неподвижная. Неподвижность я думаю просто вектором смещений(dx,dy)(т.к. камера неподвижна) чем меньше тем лучше) а вот о границах я даже не подумал... как я понимаю их же обрезать придётся...
  12. Стабилизация видеопотока

    У меня вопрос есть ли стандартные наборы для оценки качества алгоритма стабилизации?
  13. Работа с камерами

    что-то непонятно... сейчас явно гружу opencv_ffmpeg2410_64.dll но видео не идёт.. есть метод open в файле cap_ffmpeg.cpp virtual bool open( const char* filename ) { icvInitFFMPEG::Init(); close(); if( !icvCreateFileCapture_FFMPEG_p ) return false; ffmpegCapture = icvCreateFileCapture_FFMPEG_p( filename ); return ffmpegCapture != 0; } ffmpegCapture = icvCreateFileCapture_FFMPEG_p( filename ); эта строка похоже как-то некорректно отрабатывает filename корректный, а связать она почему-то не может.. выводит следующее сообщение
  14. Работа с камерами

    Здравствуйте! Есть IP камера видео передаётся через rtsp вставляю ссылку в vlc и всё работает... абсолютно такая же строка но при коннекте камеры через opencv ничго не происходит... вернее самого конекта не происходит... формат строки rtsp://x.x.x.x:PORT при связывании через vlc видео показывает... ..................... VideoCapture cap; cap.open(filename);//filename - строка конекта ............................ он даже его не открывает...
×