What method is used in PitchTap in AudioKit? - audiokit

Does someone know what pitch tracker is implemented in AudioKit? I couldn't find any clues in the source code. We are using it in scientific research and a reference would be greatly appreciated.

It uses Soundpipe.
https://llllllll.co/t/lower-level-audio-programming/1259/31?page=2
"Soundpipe has adopted a pitch tracking algorithm originally written by Miller Puckette, adapted from the ptrack opcode in Csound. It is a very portable opcode written in c99-compliant C code. It is also the main pitch tracker used by AudioKit."

Related

Kaggle: TrackML Particle Tracking Challenge

I'm new to ML and Kaggle. I was going through the solution of a Kaggle Challenge.
Challenge: https://www.kaggle.com/c/trackml-particle-identification
Solution: https://www.kaggle.com/outrunner/trackml-2-solution-example
While going through the code, I noticed that the author has used only train_1 file (not train_2, 3, …).
I know there is some strategy involved behind using only the train_1 file. Can someone, please, explain why is it so? Also, what are the use of blacklist_training.zip, train_sample.zip, and detectors.zip files?
I'm one of the organiser of the challenge. train_1 2 3 .. files are all equivalent. Outrunner has probably seen there was no improvement using more data.
train_sample.zip is a small dataset equivalent to train_1 2 3... provided for convenience.
blacklist_training.zip is a list of particles to be ignored due to a small bug in the simulator (not very important).
detectors.zip is the list of the geometrical surfaces where the x y z measurements are made.
David

Explanation of Mapping structure in Veins

I try to understand and implement modifications to the Veins framework. Right now, I have some difficulties figuring out how the "Mapping" structure works. It is used to set the transmission power in "Mac1609_4.cc"
ConstMapping* txPowerMapping = createSingleFrequencyMapping(start, end, frequency, 5.0e6, power)
and to calculate received power, SNR and SINR in "Decider80211p.cc". Could you give some insight and some examples related to the structure manipulation?
The mapping structure is from MiXiM, as Veins initially forked that project. MiXiM, however, is deprecated now and should not be used anymore [2]. Unfortunately, there is no real documentation available (anymore).
As replacement, there is either INET, which also is supported by Veins, or, as it will be introduced in the next release, a much simpler representation of Signals, removing the Mapping structure [4].
If you still need to understand the structure, you can have a look at this paper where the authors explained the physical layer including the Mapping structure.

How to use LogiCORE DSP48 Macro?

I want to learn how to use LogiCORE DSP48 Macro. I'm reading the Xilinx documentation but I cannot understand well how to start my first design with DSP48 Macro. Can anyone help me to make a simple design to get a better understanding of this IP core please?
Thanks in advance!
In many cases you would use DSP48 by writing Verilog/VHDL expressions containing add, subtract, and multiply.
x = a * b + c
A problem with the above expression is that the multiplication and addition take place in a single cycle. You can run the expression at a higher frequency if the operation could be pipelined. Vivado can sometimes retime these expressions across registers in order to make use of the DSP48 pipeline registers.
However, I understand wanting to use the DSP48 directly. You instantiate DSP48's just like other RTL modules. The ports, parameters, and behaviors are described in the DSP Slice User Guide for the FPGA logic that you are using.
wire [47:0] c;
wire [24:0] a;
wire [17:0] b;
DSP48E1#() dsp(
.a(a),
.b(b),
.c(c),
.p(x),
.opmode(5),
.alumode(0)
);
This instance is copied from one of my inner-product implementations. It is fully pipelined because I was aiming for 500MHz operation. Only achieved 400MHz due to other combinational paths.
For Xilinx 7 Series:
DSP48E1 Slice User Guide
For Xilinx Ultrascale:
DSP48E2 Slice User Guide

Zener Diode - What constitutes "Similar?"

I have very little experience with ECE in general and I am delving into using an Arduino for some small hobby type projects.
I was following an online guide, and the person who wrote says that I need:
"2 - 1N5227 or similar 3.6V biased zener diodes"
I have read up a bit on Zener Diodes and now understand what they do and what their purpose is. I am not able to tell what he means by similar in this context though. I purchased a Diode Kit that includes 4 types of Zener Diodes. They all have different part numbers and voltages.
The 4 I have are:
1N751 5.1V
1N4733 5.1V
1N4735 6.2V
1N4742 12V
Would any of those be usable in this context or should I order the specific model he states?
The guide being referenced is this, if it is helpful: http://www.instructables.com/id/RC-Transmitter-to-USB-Gamepad-Using-Arduino/
I really appreciate the time and assistance with this, this is a fun area to learn in!
In electronics and other engineering areas, similar refers to the property that stands out (in this case the voltage), in your case refers to looking for another zener diode whose voltage is similar to the example. As I see none of those diodes replaces the example.
Zener diodes has two parameters you need to match in the selection of a replacement (independently the manufacturer):
The Zener voltage (Vz) and the diode power.
For your application you will need a Zener diode of 3.6 V, and usually with 1/4 W to 1/2 W (depending the application power you will need) it will be enough.
You need also to calculate the limiting resistor for the Zener diode.
I recommend you to read the book of Albert Paul Malvino or similar to better understand.
Regards.

Original paper for DisparityWLSFilter in openCV?

I am working on post processing of disparity map.
My disparity image, even though it is WLS filtered, has too many 'holes'.
This is what i get for now. Rectified, but in fish eye way. Anyway rectified for sure, but have many holes. Disparity matching algorithm is SGBM. WLS filter sigma is 2.1, lambda is 30000. Black regions are holes.
I am referring official opencv site which says Disparity map post-filtering and it is using DisparityWLSFilter extensively. But I wonder how it works internally and want to read theoretical paper regarding this implementation. I want to know what Sigma and Lambda does, and how it will filter my image.
And, is there any other good disparity filter that i can use? WLS filter cannot fill the 'holes' effectively. Or, any algorithm that is easy to use or easy to implement, or library that is not GPL?
Self reply.
Got answer from Opencv.
Orig question is HERE.
Reply says
References have been added here, documentation reference
cc #sbokov
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
Check out the comments here, and the code here. That should answer some of your questions. To see how the code author has come up with this method perhaps should contact him directly as there is no reference for that in the code comments.

Resources