LINUX.ORG.RU

Сообщения m1rag3

 

OpenCV, ANPR, Haar - производительность

Форум — Development

Всем доброго времени суток! Давно тут не писал/не спрашивал, но помню, что тут много умных людей. Собственно вопрос. Дано: Windows(пардон), OpenCV master + TBB (собрано из сорсов), Visual Studio 2015 Community. Для самодельной ANPR юзаю уже обученный каскад Хаара из примеров самого OpenCV. Вся беда в том, что меня смущает конское время обработки кадра (640*480) в 130-170мс одним только каскадом. Очень долго. Как я понял, реализация каскадов в OpenCV не умеет cuda/opencl, только через tbb можно устроить распараллеливание (работает, грузит 2-3 ядра вместо одного, если считать по процентам загрузки core i5, но выигрыш от этого 40мс от силы). Код написан с поддержкой TAPI (функции обработки изображения типа фильтров Кэнни и т.д. дают прирост в разы). Вот примерно так все юзается.


UMat _Frame;
// Инициализация _Frame из видеопотока идет в цикле
CascadeClassifier _HAAR = CascadeClassifier("haarcascade_russian_plate_number.xml");
vector<Rect> _Rects;
// начало замера времени
_HAAR.detectMultiScale(_Frame, _Rects);
// конец замера времени

 ,

m1rag3
()

[совет-тред]Как сообщить об ошибке?

Форум — Development

Всем доброго времени суток!

Вопрос возник, есть некий класс, содержащий в себе буфер ввода-вывода, для класса перегружен оператор []:

class A
{
    unsigned char *buffer;
    unsigned long buffer_size;
  public:
    unsigned char &operator[](const int index);
};

unsigned char &A::operator[](const int index)
{
  // здесь надо проверить индекс на соответствие размеру буфера
  return buffer[index];
}

Весь прикол в том, что вернуть константу вроде как нельзя, ибо возвращается значение по ссылке, можно конечно объявить статическую константу внутри класса, содержащую некий код ошибки, но тут другой момент - как тогда отличить нормальное значение байта в буфере от значения кода ошибки. Есть подозрение, что смотреть надо в сторону обработки исключений, но все-таки решил поспрашивать опытных людей.

m1rag3
()

[C++][критика]Отругайте реализацию задачки

Форум — Development

Началось с того, что смотрел вакансии на одном сайте. Увиденная задачка заинтересовала и заставила вспомнить былое. Вакансия, к слову, из ДС. Стало интересно, насколько мои высушенные мозги годятся для дела в нормальных конторах.

Есть последовательность идентификаторов, строящаяся по особым правилам: 1. Первый идентификатор последовательности имеет вид «A1». Второй - «A2», третий - «A3» и так далее.

За «A9» следующий - «B1». Следующий после «Z9» имеет вид «A1-A1», потом «A1-A2» и так далее.

После «A1-Z9» следующим идет «A2-A1».

2. Максимальная длина идентификатора - десять групп по два символа. 3. В идентификаторах никогда не должны присутствовать буквы «D», «F», «G», «J», «M», «Q», «V», и цифра «0».

Нужно: на C++ написать библиотечный класс, предназначенный для использования другими программистами.

Функция должна получать в качестве входного параметра строку с идентификатором из описанной последовательности, и генерировать на выходе строку, содержащую следующий идентификатор последовательности. Например, функция получает «A1-Z9» и возвращает «A2-A1».

Вот моя реализация, хочу услышать здравую критику грамотного народа. Судя по наблюдениям, здесь такой встречается.

main.cpp

#include <iostream>
#include <cstring>

#include "cmeganumber.h"

using namespace std;

int main(int argc, char** argv)
{
    CMegaNumber t;
    t = "C9-Z9-Z9-Z9-Z9-Z9-Z9-Z9-Z9-Z9";
    cout << "baseval = " << t.szvalue() << endl;
    cout << "newval = " << (++t).szvalue() << ", overflow = " << t.m_bOverflow << endl;
    return 0;
}
cmeganumber.h
#ifndef CMEGANUMBER_H_INCLUDED
#define CMEGANUMBER_H_INCLUDED

class CMegaNumber
{
    private:
        char m_lpszValue[30];
        bool m_bAssigned;
    public:
        bool m_bOverflow;
        CMegaNumber();
        CMegaNumber& operator=(const char * lpszValue);
        CMegaNumber& operator++();
        char * szvalue() { return m_lpszValue; };
};

#endif // CMEGANUMBER_H_INCLUDED
cmeganumber.cpp
#include <cstring>

#include "cmeganumber.h"

// CMegaNumber implementation
/* constructor
    */
CMegaNumber::CMegaNumber()
{
    m_bOverflow = false;
    m_bAssigned = false;
    memset(m_lpszValue, 0, 30);
}
/* assignment operator overload
    */
CMegaNumber& CMegaNumber::operator=(const char * lpszValue)
{
    if(30 <= strlen(lpszValue))
    {
        strcpy(m_lpszValue, "err-too-long");
        m_bAssigned = false;
        return *this;
    }
    strcpy(m_lpszValue, lpszValue);
    m_bAssigned = true;
    return *this;
}
/* pre-increment operator overload
    */
CMegaNumber& CMegaNumber::operator++()
{
    if(!m_bAssigned)
    {
        strcpy(m_lpszValue, "err-not-assigned");
        return *this;
    }
    bool bIncHigh = false;
    char * p = m_lpszValue + strlen(m_lpszValue) - 1;
    *p == '9' ? *p = '1', bIncHigh = true : (*p)++;
    p--;
    if(bIncHigh)
    while(p >= m_lpszValue && bIncHigh)
    {
        switch(((unsigned long)p - (unsigned long)m_lpszValue) % 3)
        {
            case 1:
            *p == '9' && bIncHigh ? *p = '1' : ((*p)++, bIncHigh = false);
            break;
            
            case 0:
            *p == 'Z' && bIncHigh ? *p = 'A' : ((*p)++, bIncHigh = false);
            while(*p == 'D' ||
                  *p == 'F' ||
                  *p == 'G' ||
                  *p == 'J' ||
                  *p == 'M' ||
                  *p == 'Q' ||
                  *p == 'V') (*p)++;
            break;
            
            case 2:;
        }
        p--;
    }
    m_bOverflow = bIncHigh;
    return *this;
}

 ,

m1rag3
()

[logitech][unifying]Мышь + клава

Форум — Talks

Всем доброго времени суток!

Тут незадачка получилась.... Есть у меня клава Logitech K340. Поддерживает Unifying (http://www.logitech.com/en-us/349/6072). Имеется также мышь Logitech M305. Так вот, решил привязать мышь (на дне мышки значок, что она поддерживает данную технологию) к приемнику клавы, дабы юзать ее на десктопе и не занимать лишний порт USB. Привязал, получилось, а когда захотел заюзать мышку на ноуте с родным приемником, с ужасом НЕ обнаружил заветного значка на родном приемнике мыши (соответственно спец. прога от Logitech не видит приемник и не может к нему привязывать устройства). Теперь вопрос, никто кроме меня не совершал такого идиотского поступка, или кто-нибудь и без этого знает, может есть способ сбросить настройки мыши к заводским, чтобы она заработала с родным приемником?

Заранее спасибо за долготерпение.

Зы пишу тут, а не в хардваре, ибо к линуксу отношения не имеет. Зы2 Как вариант, может можно где-нить заказать отдельно приемник с поддержкой unifying? Хотя наверное с учетом доставки выйдет как раз рупий 700, как цена новой мышки M305...

 

m1rag3
()

[Arch][Wifi][acer laptop]Не переподключается автоматически после нажатия кнопки включения WiFi

Форум — General

Доброго времени суток!
Есть проблема с подключением Wifi после выключения и повторного включения специально предназначенной для этого кнопкой на ноуте Acer Aspire 5720.
Wifi настроен через netcfg. Файл профиля выглядит следующим образом:

CONNECTION='wireless'
INTERFACE=wlan0
SECURITY='wpa-configsection'
ESSID='some_value'
IP='dhcp'
CONFIGSECTION='
scan_ssid=1
ssid=«some_value»
key_mgmt=WPA-PSK
group=CCMP
pairwise=CCMP
priority=1
psk=###############################################################'

Чтобы задействовать кнопку аппаратного отключения попробовал создать файл /etc/network.d/interfaces/wlan0 следующего содержания (выключался вайфай по кнопке и без этого файла):

RFKILL=soft
RFKILL_NAME='acer-wireless'

Загружен модуль acer_wmi, rfkill до нажатия кнопки выдает следующее:

0: acer-wireless: Wireless LAN
Soft blocked: no
Hard blocked: no

После нажатия на кнопку rfkill меняет вывод на:

0: acer-wireless: Wireless LAN
Soft blocked: yes
Hard blocked: no

После этого вайфай, как собственно и положено, пропадает. Только вот беда, после повторного нажатия связь не восстанавливается, хоть rfkill и возвращается к первоначальным показаниям. Помогает только выполнение команды /etc/rc.d/net-auto-wireless restart от рута.

Кто-нибудь решал такую проблему? В убунте все нормально было, когда пробовал ставить ее.

 ,

m1rag3
()

[bluetooth][audio]Нужен мануал...

Форум — General

Всем доброго времени суток!

Имеется следующая задача: поднять синезуб на буке с возможностью пускать звук на bluetooth-гарнитуру (Sony DR-BT101). Сам сервис вроде уже работает (hcitool scan видит устройства).
В нете ничего вменяемого не могу найти (ищу плохо).
Если у кого есть в системе настроенный зуб, буду рад увидеть рабочие конфиги.

PS: система Archlinux, бубунту не предлагать, хоть там все работает.
И да! Все надо сделать в консоли, ибо иксов пока нет и ставить не планирую.

 ,

m1rag3
()

[ubuntu]Вывод звука через DVI

Форум — Linux-hardware

Всем доброго времени суток!

Много гуглил, толком ничего не нашел.

Имеется свежеустановленная Ubuntu 10.10, в системе присутствует видеокарта Palit GTX460 (2 DVI, 1 HDMI). К ней подключен монитор и телевизор Sony. Оба через переходники DVI->HDMI. В оффтопике звук идет на телек и монитор без проблем. Здесь звук только на мониторе (при выборе для вывода видеокарты через Параметры звука). Я так полагаю, надо как-то явно указать, через какой выход DVI (а лучше сделать сразу на все цифровые интерфейсы видяхи, если возможно) нужно выдавать звук, вопрос - как?

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

 

m1rag3
()

[D-Link DIR-320]Не поднимает PPPoE

Форум — Linux-hardware

Всем доброго времени суток!
Возникла у меня проблемка, подскажите, куда копать.
Есть инет по витой паре, пров Волгателеком. Есть сабжевый роутер, управляющий соединением. Прошивка на данный момент dd-wrt v24-sp2 micro.
Теперь суть проблемы. Все работало, как часы. В один прекрасный день роутер отказался выдавать инет. Звоню в техподдержку, мне милый женский голос говорит, что от меня нет запросов авторизации. Пробую напрямую с ноута из-под вин7 - все как часы, ни обрывов, ни неудачных подключений. Пробую PPPoE под убунтой на том же ноуте - аналогично, все работает.
Пробовал прошивать как родные прошивки от самой старой до последней, так и разные варианты dd-wrt, ничего не помогает. Вот лог роутера под прошивкой, указанной выше:
http://paste.org/pastebin/view/24502
Несколько раз симптомы чудесным образом исчезали сами собой, но теперь вот уже полдня не могу оживить роутер.
Все возможные варианты сброса настроек к дефолту пробовались неоднократно.
Заранее спасибо!

m1rag3
()

[skype]Хочется странного...

Форум — Talks

А есть консольный клиент для скайпа, чтоб тупо только чатиться можно было?

 

m1rag3
()

[hdd][seagate][ссзб]Бэд-блоки

Форум — Linux-hardware

Доброго времени, ЛОР!

Приобрел месяца три-четыре назад винт ST3500418AS (ССЗБ, хотя вроде 12-ая серия, а не 11-ая), за это время смарт говорит от 34 бэдах, автоматически перемещенных в резервную (spare area) область. Количество битых секторов медленно, но очень уверенно растет. Собсно, вопрос, при каком количестве битых секторов наступает гарантийный случай? Оффтопиковая программулина Hard Disk Sentinel говорит, что здоровье 66%, но по гарантии обращаться еще рано. У кого есть аналогичный опыт?

 , ,

m1rag3
()

[спецам широкого профиля]Нужны тексты стандартов ISO

Форум — Talks

Сабж!

ISO 3766:2003 - Конструкционные чертежи. Упрощенное представление арматуры железобетона. ISO 4066:1994 - Чертежи для промышленного и гражданского строительства. Спецификации арматурных чертежей.

Очень надо! Люди добрые, если есть в сети - киньте ссылкой, если есть в наличии - поделитесь коли не жалко! Заранее спасибо!

ЗЫж год стандарта значения особого не имеет, но чем новее, тем лучче.

m1rag3
()

[fbxkb]Не собирается из АУРа

Форум — General

Сабж. Пишет:

Количество контрольных сумм (md5) не совпадает с количеством файлов в source().

В общем то, суть в чем, поставил Openbox, нужен индикатор раскладок клавиатуры, посоветуйте плиз вменяемый аналог (переключаюсь через hal).

m1rag3
()

[Zyxel Prestige 660HTW2 EE]Хренота...

Форум — Linux-hardware

Сабж...

Купил вместо Dlink DSL-2640U, который от перегрева постоянно рвал DSL-соединение.

Сабж работает нестабильно, при закачке торрентов (в отличие от Dlink DSL-2540U, с которым все нормально) невозможно открыть ничего. Прошил последней официальной прошивкой, вообще пи;%ец... При попытке зайти в некоторые разделы веб-конфигуратора девайс ребутится. Улучшений не наблюдается. Скорость линка выставляет ниже чем Dlink (линия не очень у меня). Откатил прошивку в итоге.

Короче, не везет мне на модемы. У кого сабж, отпишитесь о впечатлениях, буду благодарен.

m1rag3
()

[апстенко]Мучаюсь выбором телефона...

Форум — Talks

Всем привет!

Уже сколько времени не могу решить че брать: Samsung i900 Witu, LG KM900 Arena или Nokia 5530.

Сначала хотел нокию, но продавец в магазине сказал что венгерская сборка говно и хуже корейской (да магазин Евросеть мне доверия не внушает, а в других в нашей деревне этот аппарат не продается до сих пор). Samsung... ну вы поняли, но эта срань, которая оффтопик, мне для работы может пригодиться, плюс нравится внешний вид. Лыжа не смартфон, чем меня больше всего и покупает но там свои недостатки типа НИКАКОГО комплекта поставки.

У кого есть эти аппараты - жду ваших комментов.

m1rag3
()

[хочется странного]Авторизация на сайте через AD

Форум — General

Доброго времени суток!

Скажу сразу, ничего подобного не делал, с чего начать не знаю.

Задача - сделать сайт, неважно какой, при заходе на который авторизация будет производиться по данным пользователя в системе (Винда), работающей в домене с AD.

Веб-сервер Apache, субд скорее всего Oracle.

Очень жду ваших советов, или хотя бы ссылок на мануалы, как и через что все это можно организовать.

 

m1rag3
()

Еще один взгляд на российские реалии...

Форум — Talks

Очередной ученый пытается рассказать президенту о том, что он и без него знает, но не говорит... Короче, тихий рашакапец...

http://www.nr2.ru/moskow/249949.html

m1rag3
()

[ArchLinux]Зеркало репозитория

Форум — General

Всем доброго времени суток!

Подскажите, плиз, сабж, оптимальный по скорости и свежести.

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

 

m1rag3
()

[Arch]laptop-mode-tools

Форум — General

Всем доброго времени суток!

Вот пытаюсь прикрутить сабж дабы он управлял подсветкой бука (Acer 5720). Установил пакет laptop-mode-tools, поставил laptop-mode на загрузку в rc.conf. Но ни хрена не пашет. Вот кое-какие выхлопы:

[m1rag3@darkstar ~]$ sudo /etc/rc.d/laptop-mode start
:: Starting laptop-mode [DONE]
[m1rag3@darkstar ~]$

[m1rag3@darkstar ~]$ cat /proc/sys/vm/laptop_mode
0
[m1rag3@darkstar ~]$

echo 20 > /proc/acpi/video/VGA/LCD/brightness - прокатывает только если под рутом делать, sudo не дает, пишет нет привилегий.

Даже не знаю что еще... Куда копать подскажите...

ЗЫ вот еще:

[m1rag3@darkstar ~]$ cat /etc/laptop-mode/conf.d/lcd-brightness.conf
#
# Configuration file for Laptop Mode Tools module lcd-brightness.
#
# For more information, consult the laptop-mode.conf(8) manual page.
#


###############################################################################
# LCD brightness settings
# -----------------------
#
# Using these settings, you can make laptop mode tools automatically adjust
# your LCD's brightness settings. The settings are extremely simple -- they
# only allow for the execution of a command, nothing more. The reason for this
# is that LCD brightness settings are very different between laptop vendors.
#
# Suggestions for commands:
#
# * If your system has the file "/proc/acpi/video/VID/LCD/brightness" (VID may
# be VID1 or similar), use this file as BRIGHTNESS_OUTPUT, and use
# the command "echo <value>". The possible values can be listed using the
# command:
#
# cat /proc/acpi/video/VID/LCD/brightness
#
# * If you have a file /sys/class/backlight/.../brightness, then you can use
# that file as BRIGHTNESS_OUTPUT, and the command "echo <value>".
#
# As far as I understand it the values are between 0 and
# the value contained in the file /sys/class/backlight/.../max_brightness.
#
# * For Toshiba laptops, use the command "toshset" with the -lcd or -inten
# command. Read the toshset(1) manual page for more information on the
# parameters for this command. If you use this command, set
# BRIGHTNESS_OUTPUT to "/dev/null".
#
###############################################################################

###############################################################################
#
# IMPORTANT: In versions 1.36 and earlier, these settings were included in the
# main laptop-mode.conf configuration file. If they are still present, they
# overrule the settings in this file. To fix this, simply delete the settings
# from the main config file.
#
###############################################################################


#
# Should laptop mode tools control LCD brightness?
#
CONTROL_BRIGHTNESS=1


#
# Commands to execute to set the brightness on your LCD
#
BATT_BRIGHTNESS_COMMAND="echo 24"
LM_AC_BRIGHTNESS_COMMAND="echo 80"
NOLM_AC_BRIGHTNESS_COMMAND="echo 80"
BRIGHTNESS_OUTPUT="/proc/acpi/video/VGA/LCD/brightness"
[m1rag3@darkstar ~]$

 

m1rag3
()

[Xfce4.6.0][Archlinux]Сеть, сменные носители etc.

Форум — General

Доброго времени суток всем!

Продолжая доводить сабж до вменяемого состояния, столкнулся с проблемами:

1. Оптические диски монтируются нормально, но когда нажимаю кнопку на приводе для извлечения диска, выдает какую то ерунду типа Устройство такое то не является томом или сменным носителем. При извлечении через пункт меня значка все путем.

2. Флэшки маунтятся, но вместо русских букв знаки вопроса. Все что нарыл в инете, это либо патчить пакет exo_hal (кажется так), либо прописать файл mount.mvfat (не уверен, не успел дочитать вчера).

3. Тунар не умеет сеть, интересуют виндовые шары, мож плагин какой есть? thunar_shares_plugin? Если он, то как в арче пакет называется, чет не нашел...

Заранее спасибо за ответы!

 

m1rag3
()

[Archlinux] XFCE 4.6.0, версии пакетов

Форум — General

Доброго времени суток всем!

Поставил вчера сабж, все нравится, но... Некоторые пакеты в репах в частности xfce4-icon-theme (кажется так называется), имеет версию еще 4.4. И я так думаю, поэтому у меня в системе, в частности в панели настройки Xfce, отсутствуют некоторые иконки, есть только надписи. И русификация неполная, кое-где имеются надписи на буржуйском.

Кто пользуется сабжем, подскажите, как довести сабж до нормального состояния, ибо решил окончательно перейти на Xfce.

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

 

m1rag3
()

RSS подписка на новые темы