Dziś chciałbym zaprezentować zastosowanie sieci Hopfielda do rozpoznawania polskich banknotów. Można zastosować takie rozwiązanie w automacie przyjmującym banknoty w celu odgadnięcia właściwego nominału banknotu. Oczywiście zapamiętanie obrazka całego banknotu nie jest dobrym pomysłem gdyż w przyzwoitej rozdzielczości obraz będzie zbyt duży do zapamiętania, poza tym, banknoty mają różną wielkość, postanowiłem pokazać przykład z zapamiętaniem prawego górnego rogu i rozpoznawaniem ...
Programowanie rozproszone 5160 dni, 18 godzin, 49 minut temu 170 źrodło rozwiń
Ten wpis jest kontynuacją tematyki związanej z grafiką trójwymiarową opartej o WPF. Zostanie w nim pokazane jak przy pomocy kodu napisanego w C# narysować proste wielościany.Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wykorzystania treści stanowi również opis pewnych zagadnień związanych z projektem Mesh Diagram 3D.Informacje dotyczące projektu oznaczone są etykietą MeshDiagram3D.Poprzedni wypis został zakończony na prezentacji najprostszego obiektu w scenie – czyli trójkąta. Tr...
Podczas zapoznawania się z ASP.NET .oraz MVC2 trafiłem na coś, co jest bardzo denerwujące. Mianowicie strony aspx nie są kompilowane podczas kompilacji samego projektu. Jaki jest tego skutek? Dodatkowa robota w poszukiwaniu błędów wynikających z literówek. A zatem zobaczmy zmienić ten żmudny proces poprzez włączenie w visual studio sprawdzania widoków podczas build'a.
Podobnie jak w czystym ASP.NET, framework ASP.NET MVC pozwala na wysyłanie formularzy w tle. Załóżmy, że chcemy napisać shoutbox’a, w którym wysłanie wiadomości na serwer nie wymagałoby ponownego przeładowania całej strony. Zamiast definiowania formularza za pomocą Html.BeginForm, musimy skorzystać z Ajax.BeginForm:<%using(Ajax.BeginForm("AddMessage",new AjaxOptions(){ OnComplete="OnFinish", UpdateTargetId="messages"})) { %>// treść<%}%> Pierwszy parametr to nazwa akcji. W drugim parametrze prz...
Dzisiaj bardzo króciutki post. Do tabeli dodałem computed column (wartość liczona na podstawie innych kolumn). Formuła obliczająca wartość wyglądała następująco:VotesFor / TotalVoteCount Chciałem po prostu dodać kolumnę, która liczy procent oddanych głosów aby potem móc stworzyć indeks po tej kolumnie. W przypadku jednak gdy TotalVoteCount wynosi 0 pojawił się wyjątek Divide by Zero. Na szczęście funkcja NULLIF rozwiązała problem:VotesFor / NULLIF(TotalVoteCount,0) W sytuacji gdy TotalVoteCount rów...
Bazy danych i XML 5163 dni, 2 godziny, 26 minut temu 70 źrodło rozwiń
Metoda w obiekcie GetHashCode() służy do generowania prostego (Int32) skrótu danego obiektu. We własnych klasach powinniśmy ją nadpisać, szczególnie jeśli dane obiekty będą wykorzystywane w kolekcjach typu Dictionary i HashSet. Jednak powinniśmy zrobić to prawidłowo, przestrzegając 3 prostych zasad...
OpenMP - źródło, które zainspirowało mnie do zmian w HopfieldSymulatorze znajduje się tudaj. Dzisiaj napiszę o C++ w wykorzystanym projekcie. Cała warstwa obliczeniowa jest napisana w tym języku. Oczywiście po napisaniu dobrze jest program zoptymalizować, można jeśli używamy C# i kodu zarządzalnego użyć Parallel.For(...), no ale w czystym natywnym C++ nie ma takij możliwości, pozostaje użycie OpenMP lub wzorców wielowątkowości, które są dostępne w Visual C++ 2010. Niestety nie mam ...
Programowanie rozproszone 5163 dni, 2 godziny, 26 minut temu 54 źrodło rozwiń
August 07Daj się poznać #3 Dzisiaj postanowiłem usprawnić symulator sieci Hopfielda o zapamiętywanie kolorów. Jak pewnie wiecie z poprzednich wpisów na wyjściu sieci Hopfielda są wartości od -1 do +1 aby zapisać obraz kolorowy można – taki był mój pierwszy zamysł – podzielić ten przedział na wszystkie dostępne kolory RGB bez przezroczystości Alpha wychodzi 256x256x256 przedziałów, trochę dużo. Eksperymenty pokazały, że jest z tym kłopot obrazy co prawda zapamiętywały się ale pokazywały się przekłamania…
Programowanie rozproszone 5163 dni, 4 godziny, 7 minut temu 76 źrodło rozwiń
Jeszcze przed założeniem własnej działalności i przeniesieniem wszelkich operacji związanych z programowaniem na własną maszynę, do własnego gniazda, nieśmiało i powoli badałem przydatność wirtualizacji dla programisty. Z badań owych wyniknął wniosek bardzo jasny - wirtualizacja to dla mnie rozwiązanie IDEALNE i bez niego nie bardzo wyobrażam sobie pracę. Szczególnie jako pseudo-freelancer jakim jestem teraz, gdy zdarza mi się pracować nad więcej niż jednym projektem jednocześnie.
Autor: Chciałbym napisać dziś słów kilka o WCF RIA Services. Dokładnego przeglądu standardowych scenariuszy wersji pierwszej finalnej dokonałem niejako publikując zaktualizowane przykłady w dwóch częściach (patrz cz.I i cz.II). I chociaż jest tam wiele fajnych funkcjonalności, to dziś napiszę o trochę mniej standardowych, rzadziej spotykanych rzeczach. Mam tu na myśli takie zagadnienia jak korzystanie z NHibernate, MVVM (jest to typowe podejście dla Silverlight, ale nie zawsze przykłady czy prezentacje...
Programowanie rozproszone 5167 dni, 23 godziny, 4 minuty temu 216 źrodło rozwiń
W sytuacji, gdy nad danym projektem pracuje większa grupa programistów czasami trudno jest się wystrzec oczywistych błędów. Takim błędem jest zapominanie o domyślnej inicjalizacji zmiennych w przypadku enum-a.
Jak w wielu miejscach można przeczytać, Microsoft ogłosił nową edycję swojego środowiska programistycznego – Visual Studio LightSwitch. Jak można określić nową wersję? W przeciwieństwie do wersji Professsional, Premium, gdzie jest coraz więcej lub mniej opcji, nowa wersja LightSwitch skupia się na jednym konkretnym zadaniu – budowaniu aplikacji biznesowych. Budowaniu tych aplikacji w konwencji RAD (Rapid Application ...
W niniejszym post'cie chciałbym zaprezentować podstawowe elementy niezbędne do rozpoczęcia przygody z grafiką trójwymiarową opartą o Windows Presentation Foundation (WPF). Niniejszy wpis poza prezentacją różnych i niezależnych od konkretnego wykorzystania treści stanowi również opis pewnych zagadnień związanych z projektem MeshDiagram3D. Przed przystąpieniem do pisania jakiejkolwiek aplikacji wykorzystującej WPF 3D należy zrozumieć pewne podstawy: potrzebujemy kontrolkę, która zapewni nam możliwość wyś...
Dziś przedstawiam nowe GUI do Hopfield Symulatora 0.2.1. Źródła projektu można pobrać tutaj: http://hopfieldsimulator.codeplex.com/SourceControl/list/changesets Instalator w wersji 0.2.1 x86 tutaj: http://hopfieldsimulator.codeplex.com/releases/view/49956
Programowanie rozproszone 5167 dni, 23 godziny, 4 minuty temu 78 źrodło rozwiń
Niedawno miałem przyjemność uczestniczyć w pierwszym spotkaniu Krakowskim spotkaniu inicjatywy NoSQL Summer. Zainteresowała mnie, przede wszystkim, forma spotkań — dyskusje dotyczące przeczytanych “lektur obowiązkowych”. Skojarzyło mi się bardziej z dyskusyjnym klubem filmowym, niż typową technologiczną juzergrupą. Postanowiłem się więc wybrać. Nie żałowałem. Organizacji krakowskich spotkań podjął się Adam Pohorecki. Dzięki temu org...
Bazy danych i XML 5167 dni, 23 godziny, 4 minuty temu 100 źrodło rozwiń
W grach komputerowych pisanych w XNA następuje wcześniejsze przetwarzanie danych takich jak: tekstury, modele czy dane muzyczne w celu weryfikacji ich poprawności i optymalizacji wykorzystania ich w kodzie (można ustawiać nawet poziom ich kompresji). Otóż, za wszystko odpowiada tzw. Content Pipeline, będący swojego rodzaju pośrednikiem pomiędzy danymi zewnętrznymi, a tymi wykorzystywanymi bezpośrednio w grach. Jak się okazuje bowiem, oprócz kodu… kompilowane są też dane, za co odpowiada tzw. Content Mana...
STM (z ang. Software Transactional Memory) to podejście zaczerpnięte od kolegów z baz danych. Idea jest bardzo prosta: albo wszystkie instrukcje w danej transakcji wykonają się poprawnie, albo żadna z nich nie powinna się wykonać. Cecha ta określana jest jako niepodzielność. Głównych cech jest w sumie 4...
Programowanie rozproszone 5167 dni, 23 godziny, 4 minuty temu 46 źrodło rozwiń
Sposób debugowania zmienił się diametralnie w najnowszej wersji SharePointa głównie za przyczyną tego, że w końcu wystarczy wcisnąć F5 i patrzeć jak się wykonuje kod. To jednak nie wszystko co jest do dyspozycji w temacie kontroli kodu w trakcie wykonywania.
Dobry artykuł w skrócie opisujący użycie Sketchflow. Jeżeli ktoś jeszcze go nie używał, to jest to świetna okazja, aby poznać podstawy. Sketchflow to technologia bazująca na Silverlight, która pozwala na pokazanie klientowi koncepcji planowanego produktu za pomocą kilku okienek łączonych linkami, bądź kilkoma linijkami kodu.
Silverlight 5167 dni, 23 godziny, 4 minuty temu 150 źrodło rozwiń
11 rozdziałów książki "Programming Windows Phone 7" autorstwa Charlesa Petzolda do pobrania zupełnie za darmo.
Mobile development 5168 dni, 3 godziny, 39 minut temu 109 źrodło rozwiń