My recent side project: sChord.com.
Posts tagged as «C#»
Smart typing for game consoles
Quick line segmentation
From the Equation OCR front line…
Problem:
Splitting up handwritten calculations into single lines.
Algorithm description:
First map all the strokes on the y-axis. Then travel along the axis and record the the ink density (number of strokes underneath). Remember local maximums. If the density falls below a certain percentage (tolerance) of a last local maximum – insert a break line.
C# code:
Win7 Math recognition
…you can look but you better not touch
Recently I’ve started working on a new project with my friend, so development of Falasol will be slower for a while. But fear not – I’m not going to give up on that. Falasol is my long term plan and what you can see so far is just a little part of it. I expect to get back to it next year. Meanwhile I’ll be occasionally posting stories from EqOCR development. You probably guessed that it will have something to do with equations & math – that is correct.
C# benchmark of 2^x optimizations
As promised last week I’m going to compare three methods of optimizing 2 ^ x calculation:
- Cache table – described in my previous post
- Polynomial approximation – suggested by Gregory, implemented here celt_exp2(…) and described here
- Compact IEEE-754 – 3 lines of code(!) described here and here
2^x optimization for double type
Signal processing often requires moving between logarithmic & linear domains. In audio area we can talk about Octaves (logarithmic representation) and Frequencies (linear representation). Octave -> Frequency conversion corresponds to transformation x = 2 ^ x.
Most programming languages provide support for such calculation, for example Pow(a, b) in C#.
Those functions however tend to be time consuming. We can take advantage of the fact that in our case a = const = 2 and optimize the calculation.
Let’s start with equation:
