Search the site for the term 'C#'
-
25/02/2022
All massive data processing applications can benefit from the ever-increasing processing capacity of modern computers, which is now affordable for anyone's pocket. I will show in this article a basic performance comparison among various CPU / GPU platforms, based on the well-known Mandelbrot set and its surprising graphical representation.
[Read More...] -
28/01/2021
This article is the last in the series dedicated to building the Octopussy martial arts and self-defence training sparring robot. Here, I will explain the use of the software to control the device, which allows you to design a virtually unlimited range of training routines within the robot's features.
[Read More...] -
27/01/2021
This article is the second one on the Octopussy training sparring robot for self-defence and martial arts. Here, I will explain how to build the electronics of the invention. The task consists of little more than connecting a few wires, although a tin soldering iron would also be convenient to have at hand to finish the job better.
[Read More...] -
25/01/2021
I will show in this series of articles how to build a self-defence and martial arts training robot. I have named Octopussy to the invention since you can put several limbs to simulate different types of punches and kicks directed to all of the body parts. It is controlled by a computer, an Arduino board, and an application. I also provide the application source code for you to make modifications as you want.
[Read More...] -
18/03/2019
With this article I conclude the series dedicated to the application of genetic algorithms to the design of neural networks. I will explain the most relevant code of the sample application given with these articles, mainly the classes dedicated to the genes management and the selection process. You can find more information in the previous articles of the series.
[Read More...] -
28/02/2019
In this second article on the application of evolutionary algorithms to the optimization of the design of neural networks, I am going to provide a small sample application that allows you to build and train networks, in addition to using this type of algorithms to find the best configuration for a given data set. The application allows generating artificial test data, and I provide the source code for you to be able to modify it, as you want.
[Read More...] -
22/02/2019
When we try to apply a neural network to a given problem, finding the most suitable topology for it can be a tedious trial and error task, as well as end up producing a poorly optimized network. To automate this process, we can draw on evolutionary algorithms, inspired in the natural selection of living organisms, which can greatly facilitate our job.
[Read More...] -
02/12/2018
One of the most popular algorithms for training multilayer artificial neural networks is the back propagation algorithm, or retro-propagation algorithm. In this article I will try to explain its fundamentals, through a simplified implementation of a neural network that allows testing with different configurations of the network.
[Read More...] -
23/07/2018
This article closes the series on posture recognition using the Microsoft Kinect sensor. To finish, I will simply show you the implementation of a basic form that uses the class libraries explained in the previous articles.
[Read More...] -
04/06/2018
We continue with the series about posture recognition with the Microsoft Kinect sensor. This time I will comment the classes responsible of posture normalization of the body in the way commented in the first article, so that we obtain a series of data that constitute a simplified version of the skeleton most appropriate for analysis using pattern recognition techniques.
[Read More...] -
13/05/2018
In the previous article of this series I showed the structures, enumerations and classes that the application uses to be independent of the sensor version and the Kinect SDK. In this third article I will show a possible implementation of a class that deals with reading and converting the skeletons using version 2.0 of the SDK, for the Xbox One sensor.
[Read More...] -
05/05/2018
In this second article in the series about recognition of postures using the Microsoft Kinect sensor I will show generic classes and structs used to isolate the application from the different versions of the SDK. The version of the SDK that we must use depends on the sensor model that we have. In the example code I have used version 2.0, for the Xbox One sensor.
[Read More...] -
22/04/2018
One of the most interesting features offered by the Microsoft Kinect sensor is human bodies detection, which allows us to develop applications based on the different positions of the user's body and that can be handled remotely using those positions. To do this, it provides a series of points that represent the different joints of the body.
[Read More...] -
11/03/2018
In previous articles I presented a home video surveillance system, the ThiefWatcher application. It is an extensible application that works combining several protocols, such as cameras, triggers, communication channels and storage systems. In this article I will show how to implement some of these protocols using the Microsoft Kinect sensor.
[Read More...] -
18/02/2018
The Microsoft Kinect sensor is a very powerful device that provides image capturing, distance measurement and body postures and facial expressions recognition services, which makes it suitable for infinity of applications. In this introductory article I will show how to use it to capture different types of images.
[Read More...] -
10/12/2017
Solving any Sudoku is a problem that can seem complicated if brute force methods are used, testing each and every one of the possible combinations. But, with the right approach, any of these problems can be solved in a few milliseconds. In this article, I will show you a way to achieve it through an optimized method.
[Read More...] -
02/12/2017
To conclude this series about programming multitasking applications, I will show the use of a simple mechanism that allows implementing asynchronous methods whose waiting times are used for the execution of other parallel tasks or events triggered by user interface controls.
[Read More...] -
18/11/2017
So far I have shown examples of multitasking that block the application until they finished. This is not very useful in practice. Usually, we want that the user can continue interacting with the application while the tasks are running in the background; we could want also the threads to interact with the user interface.
[Read More...] -
05/11/2017
In multitasking applications there is a problem when concurrent access to resources, such as files or memory, when you launch several tasks at once. Two tasks cannot write at the same time in the same memory address, it is required to make sure that some data is not modified while we are reading them or things like that. In this article I will review the tools provided by .NET Framework to deal with these issues.
[Read More...] -
19/09/2017
After reviewing the classes to implement the basic multitasking, in this article I will review different mechanisms that allow a synchronization between various tasks, all of them defined in the System.Threading namespace, with which you can organize the work when the Interactions between tasks require a particular order.
[Read More...]