Pokazywanie postów oznaczonych etykietą projekty. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą projekty. Pokaż wszystkie posty

2012/04/26

libSVMWrapper now on SourceForge.net


EN:

I decided to put project LibSVMWrapper on sourceforge. This way after a few months of problems with broken server and not having a lot of time to fix it, project came back to the internet. You may find it on http://sourceforge.net/projects/libsvmwrapper

It is the last version (3.1.5) that I was able to recover thanks to Ori Cohen. I hope that it works and that it won't make any trouble for persons, who would like to use it.

In the upcoming weeks I plan to update libsvm.dll to version 3.12 and put in place some additional features making choosing learning process parameters better, what was suggested by Ori Cohen.

PL:

Zdecydowałem się umieścić projekt libSVMWrapper na sourceforge'u. Tym samym po kilku miesiącach borykania się z padniętym serwerem oraz notorycznym brakiem czasu, aby go naprawić, projekt wrócił do sieci. Znajduje się teraz pod adresem http://sourceforge.net/projects/libsvmwrapper

Udostępniona wersja (3.1.5) jest ostatnią, jaką udało mi się odnaleźć dzięki Ori Cohen'owi. Mam nadzieję, że działa ;D i, że nie będzie sprawiać problemów osobom, które chciałyby z niej skorzystać.

W najbliższym czasie planuję wykonać update libsvm.dll do wersji 3.12 oraz wprowadzić kilka drobnych dodatków umożliwiających lepszy dobór parametrów uczenia zasugerowanych przez Ori Cohen.


Rafał Prasał

2011/04/06

libSVMWrapper a wrapper for libsvm.dll

What is it?

libSVMWrapper is a .NET wrapper for libsvm.dll and is provided to you under LGPL license version 3.
This library should work with 32bit version of libsvm.dll.
If you do not find any functionality or find a problem with a wrapper, let me know or add/repair it and then let me know.
I will incorporate it in this library and place your name in acknowledgments.
If you find this wrapper usefull and want to give your gratitude to me, let me know ;).

Advantages

  • Does not use any unsafe code.
  • Includes method TrainAuto, which searches for best parameter in grids which is similar to used in OpenCV.MachineLearning
  • Usage is very similar to libsvm itself, so migration from it to .NET should be very easy.
  • Ease of use. See DOCS

Documents

Chih-Chung Chang and Chih-Jen Lin, LIBSVM : a library for support vector machines, 2001. Software available at http://www.csie.ntu.edu.tw/~cjlin/libsvm
Rafał "R@V" Prasał : a wrapper for libsvm.dll http://sourceforge.net/projects/libsvmwrapper/
SVN: http://svn.code.sf.net/p/libsvmwrapper/code/trunk

2010/05/14

SharpNapiProjekt

Całkiem niedawno, to znaczy w dniu dzisiejszym ukończyłem aplikację do pobierania napisów z NapiProjekt.pl. Napisana ona została z użyciem platformy .NET 4.0 w języku C# i w przeciwieństwie do pierwowzoru nie otwiera wielu okien przy pobieraniu napisów do więcej niż jednego filmu. Jedno okno w zupełności jej wystarcza. Jeśli chodzi o funkcjonalność to jest ona na podstawowym poziomie, ale w zupełności powinna wystarczyć przy normalnym użytkowaniu tzn. pobieraniu napisów :). Odpowiednie odnośniki do pobrania znajdują się niżej.



Jak Zainstalować

  1. Rozpakuj SharpNapiProjekt.zip np. do c:\Program files\
  2. Uruchom jako Administrator c:\Program files\SharpNapiProjekt\SharpNapiProjekt.exe (Prawym na programie i 'Uruchom jako Administrator')
  3. Kliknij "Install ShellMenu"

Jak Odinstalować
  1. Uruchom jako Administrator c:\Program files\SharpNapiProjekt\SharpNapiProjekt.exe
  2. Kliknij na "Remove ShellMenu"
  3. Skasuj c:\Program files\SharpNapiProjekt

Jak Używać
  1. Po zainstalowaniu ShellMenu
  2. Klikasz prawym przyciskiem myszy na pliku lub plikach z filmami
  3. Klikasz lewym przyciskiem myszy na "Get Subtitles"

Aplikacja zostaje udostępnione tak jak jest. Autor nie ponosi żadnej odpowiedzialności za straty wynikłe z używania tej aplikacji.

Pobieranie

Rafał Prasał

2009/12/21

.NET/ GPS/ SerialPort i takie tam

W dzisiejszych czasach wielu z nas posiada w swoich zasobach sprzętowych GPS'a. Czy to na USB, czy BlueTooth czy też w końcu port szeregowy. Wydawałoby się, że jest to urządzenie tak magiczne, że tylko niektórym uda się je poprawnie obsłużyć. Okazuje się jednak, że w rzeczywistości, nie jest to jakieś specjalnie trudne. GPS, jest widoczny w systemie jako port szeregowy, który inicjujemy następującymi parametrami
  • prędkość: 9600 baud
  • parzystość: 1 bit
  • dane: 8 bitów
W .NET można to swobodnie zrobić przy pomocy obiektu SerialPort. Jako, że komunikaty GPS(NMEA) przychodzą do nas w liniach bardzo pomocna będzie metoda ReadLine(). Komunikaty przychodzą w sposób ciągły, więc funkcję odczytującą je należałoby zamknąć w innym wątku.

Tu właśnie zaczynają się schody, gdyż
  • Do odpalania metod obiektów operujących w innym wątku służy Invoke().
Najzwyczajniej w świecie musimy do obiektu wątku przekazać jako parametr obiekt, który będzie aktualizował dane na ekranie.
  • Obiekt SerialPort potrafi rzucić wyjątkiem podczas próby odczytu, w trakcie zamykania z innego wątku. Jest to ten rodzaj wyjątku, którego nie da się w sposób łatwy przechwycić.
Aby pozbyć tego niemiłego akcentu należy wykonać kombinację alpejską i umieścić odczyt danych z portu szeregowego w bloku finally, gdzie musimy przechwytywać wyjątek pochodzący właśnie z SerialPort.

I tym oto sposobem po kilku godzinkach przeglądania stron i przeszukiwania internetu udało mi się popełnić prostą aplikację, która wskazuje na GoogleMaps, gdzie się aktualnie znajdujemy.

Zapraszam do pobrania i lektury kodu aplikacji

Zastrzegam, że nie ponoszę żadnej odpowiedzialności za straty powstałe w wyniku wykorzystania stworznej przeze mnie aplikacji . Taki Lajf :>

Rafał Prasał