Developers Club geek daily blog

As the video analytics is arranged

2 years, 11 months ago

Recently I read article in which the author on a simple example tells how the algorithm of recognition of the movement works. It reminded me own researches of algorithms of analytics of video flows. Many know that there is an excellent OpenCV project. It is the extensive cross-platform library of computer sight containing a set of different algorithms. However it is not so simple to understand it. It is possible to find a set of publications and examples about that, as well as where to use machine vision, but not how it is arranged. Namely it often is also not enough for understanding of process, especially when only you begin to study this subject.

In this article I will tell about architecture of video analytics.

Read more »

Price elasticity in a retail

2 years, 11 months ago
In the economic theory many sections are devoted to process of pricing in trade.

But at practical use of tools of pricing retailers face a set of problems, it leads to errors at determination of the price and, as a result, to losses in profit.

For example, when the retailer reduces the price, the consumer demand grows, but there is no profit. Increases the goods price — demand falls.

As we see, there is a strong dependence between the price, demand and profit.

Elasticity allows to find the optimum ratio of cost and the number of sales allowing to increase profit. In other words, the price acts as the balancing factor between the expected demand and the income.

Read more »

Game for the mathematician. Oral account

2 years, 11 months ago
Just imagine, we live during a wonderful era, invented computers, forgot how to use mechanical schyota, at every second in a pocket a heavy-duty computer, to steam of generations already grew having pocket calculators, elementary calculations are demanded more and more seldom. Whether long ago you had to do mental arithmetic? Well, say, why not to put couple four or five-digit numbers shopping, then to give to the cashier money to within kopek? You will tell, nonsense all this, waste of time. To whom empty, to whom not empty. I consider that first for maintenance of functionality of a brain it is necessary to use periodically this remarkable functionality, and secondly art to succeed in basic skills makes the person the master.

So, we will start. What can be the most fundamental knowledge for the mathematician? Probably, this that to what we teach children in the first class or even in kindergarten, summing of integral numbers. So, meet game which trains brain performance in the elementary arithmetics:

That well, right there everything relies in reaction and a blind set of numbers

Read more »

Titanic on Kaggle: you will not read up this post up to the end

2 years, 11 months ago
Hi, habr!

# { Data Science for beginners }

My name is Gleb Morozov, we are already familiar under the previous articles. At numerous requests I continue to describe experience of the participation in the educational projects (by the way who was not in time yet — up to the end still it is possible to receive materials of last courses is, probably, the shortest and most practical course on data analysis which can be imagined).

This work describes my attempt to create model for a prediction of the survived passengers of "Titanic". The main objective — training in use of the tools used in Data Science to data analysis and the presentation of results of research therefore this article will be very much and very long. The main attention is paid to the research analysis (exploratory research) and work on creation and the choice of predictors (feature engineering). The model is created within the competition Titanic: Machine Learning from Disaster passing on the website Kaggle. In the work I will use the R language.

Read more »

Assembly of a 4-dimensional cube of Rubik

2 years, 11 months ago
We are familiar with a puzzle Rubik's cube, but, living in three-dimensional space, it is difficult to imagine such in four-dimensional. Certainly, Rubik did not patent four-dimensional cubes, and it is only about similarity of a cube of Rubik.

Therefore at first I will tell about how I imagine a four-dimensional puzzle.

Read more »

Theory of a sound. What it is necessary to know about a sound that to work with it. Experience of Yandex. Music

2 years, 11 months ago
The sound, as well as color, people perceive differently. For example, the fact that it seems too loud or low-quality to one can be normal for others.

For work on Yandex. Music it is always important to us to remember different subtleties which are concealed in itself by a sound. What is volume as it changes and what depends on? How sound filters work? What noise happen? How the sound changes? As people perceive it.

We learned about all this very much, working on our project, and today I will try to describe on fingers some basic concepts which are required to be known if you deal with digital sound processing. In this article there is no serious mathematics like fast Fourier transforms and other — it is simple to find these formulas in a network. I will describe an essence and sense of things which it is necessary to face.

As reason for this post you can consider that we added to applications of Yandex. Music an opportunity to listen to tracks in high quality (320kbps). And you can not consider. So.

Read more »

Processing of private data on public computer networks

2 years, 11 months ago
Computing systems passed a way from mainframes to personal computers, and now make a way back — from personal computers to mainframes.
Services for all comers in execution of calculations on the high-performance computers implemented in the form of the cloudy and other systems, from the companies providing similar services in public networks are in large quantities offered.
However use of public computer networks bears risks for their consumers:
  • Leakages of private data in the course of their processing on the external device or in data transfer process;
  • Possibility of existence of distortions in the received results of calculations on the external device or in data transfer process. At the same time, even repeated repetition of calculations with the same basic data will not allow to find existence of these distortions if they carry system, but not accidental character.

We will not consider questions of leakage of private data or distortions in the results caused in data transfer process, leaving this subject of classical cryptography on providing a closed channel of communication of required degree of reliability.
Let's consider a question when the external calculator can it is subject to a compromise, and on him are possible also the analysis of private data in processing, and distortion of results of calculations, and we will try to solve a problem which we will formulate as follows:
  • It is required to provide the mechanism of processing of private data on the external computing device which, when saving opportunities of use of standard algorithms, would allow to make impossible (that is rather difficult) detection of values of private data, and also would allow to reveal and correct the possible distortions in results of calculations entered accidentally or systemically.
  • As, undoubtedly, some additional processing of tasks and results, on the party of the consumer will be required, it is desirable that complexity (the price, time) such processing was much less complexity (the price, time) of a solution of the main objective – otherwise the consumer has no sense for carrying out calculations on external public networks.
  • Also, undoubtedly, the total quantity of the calculations given on the external calculator as any entering of redundancy into basic data, or for the purpose of an exception of their uniquely identifying, or for the purpose of control of their reliability, will undoubtedly demand processing of bigger amount of information can increase. However, as external computational capabilities can be increased only due to bigger payment from the consumer, reasonable increase in cost should not be decisive factor at the choice of algorithm of the mechanism of data protection.

Read more »

Gauss method on Java

2 years, 11 months ago
Article is devoted to implementation of algorithm of Gauss for a solution of system of the linear algebraic equations in the Java language.

Theoretical data

Let's consider the mathematical theory. The linear equation system can have one solution, infinitely there are a lot of solutions or to be incompatible (not to have solutions). Not all methods of the solution SLOUGH can will cope with the second case when the system has infinitely many solutions. For example, Kramer's method and the matrix approach are not applicable, but the method of Gauss can quite be used.

The algorithm can be shared into two stages conditionally:

  • Forward stroke
  • Return motion

In the first stage zero below or above the main diagonal, due to use of elementary conversions of a matrix are formed. At the second stage unknown since the end find. It is possible to look at the detailed theory according to the link: the Gauss method therefore with the theory welcome everything. Let's pass to implementation.


Let's begin with a problem definition:

  • we need to create the program implementing linear equation system in the form of some data structure, using acceptances of the generalized programming. The system has to contain coefficients of derived type from the class Number (i.e. Float, Integer, Double, etc.)
  • To program algorithm which having received a data structure of system on an input forms zero below main diagonal

Read more »

Surfaces and axially symmetrical bodies: use of "a virtual potter's wheel" in Wolfram|Alpha

2 years, 11 months ago

Transfer of a post of Peter Barendse "Surfaces and Solids of Revolution: Using Wolfram|Alpha's "Virtual Potter's Wheel"".
The code given in article can be downloaded here.
I express huge gratitude to Kirill Guzenko of KirillGuzenko for the help in transfer and preparation of the publication

Even before emergence of the modern 3D technology of printing in us there was an opportunity to create objects practically of any form, and the only restrictions for mankind were connected only with the accuracy which we can provide. And on the way of overcoming of these restrictions the various devices capable to make products of very irregular shapes were developed; (before emergence of 3D-printers) emergence of machines with ChPU and a large number of degrees of freedom became the culmination of this process:

Historically the potter's wheel by means of which we had an opportunity to create very exact axisymmetric products of any profile was one of the first similar devices, perhaps. I still perceive it as magic, looking at how the potter creates a curve the hands; how this curve sets a form for all vase through rotation of a wheel:

Read more »

Practical application of Fourier transform for the analysis of signals. Introduction for beginners

2 years, 11 months ago

1. Fourier transform and range of a signal

In many cases the problem of obtaining (calculation) of a range of a signal looks as follows. There is ATsP which with a sampling rate of Fd will transform the continuous signal arriving on its input during T time to digitized samples — N pieces. Further the array of counting moves in a certain applet which issues N/2 of some numerical values (the programmer who dragged away from the Internet wrote an applet, assures that it does Fourier transform).

To check whether the program correctly works, we will create an array of counting as the sum of two sinusoids of sin(10*2*pi*x) +0,5*sin(5*2*pi*x) and we will palm off on an applet. The program drew the following:

fig. 1 Diagram of temporary function of a signal

fig. 2 Diagram of a Range of a Signal

On the diagram of a range there are two sticks (harmonics) of 5 Hz with an amplitude of 0.5 V and 10 Hz — with an amplitude of 1 V, all as in a formula of an original signal. Everything is excellent, the programmer well done! the Program works correctly.

It means that if we give on ATsP input a real signal from mix of two sinusoids, then we will receive the similar range consisting of two harmonics.

Total, our real measured signal, the lasting 5 sec., digitized ATsP that is provided by discrete counting has a discrete non-periodic range.
From the mathematical point of view — how many errors in this phrase?

Now the administration solved we decided that 5 seconds are too long, let's measure a signal for 0.5 sec.

Read more »