{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Getting Started with Acoular – Part 2\n" ] }, { "cell_type": "raw", "metadata": { "vscode": { "languageId": "raw" } }, "source": [ "---\n", "title: \"Getting started with Acoular - Part 2\"\n", "subtitle: \"How to use Acoular - simple example with 64 microphone array and three sources, frequency domain beamforming, additional methods and caching\"\n", "author: \"Ennes Sarradj\"\n", "date: \"2021-04-02\"\n", "categories:\n", " - getting started\n", " - frequency domain\n", " - deconvolution \n", " - CLEAN SC\n", " - functional beamforming\n", "image: thumb_getstart.png\n", "---" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Introduction\n", "\n", "This is the second in a series of three blog posts about the basic use of Acoular. It assumes that you already have read the first post and continues by explaining some more concepts and additional methods.\n", "\n", "Acoular is a Python library that processes multichannel data (up to a few hundred channels) from acoustic measurements with a microphone array. The focus of the processing is on the construction of a map of acoustic sources. This is somewhat similar to taking an acoustic photograph of some sound sources.\n", "\n", "\n", "To continue, we do the same set up as in [Part 1](getstart1.ipynb). We define `TimeSamples`, `PowerSpectra`, `MicGeom`, `RectGrid` and `SteeringVector` objects and set up a `BeamformerBase`." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import acoular\n", "ts = acoular.TimeSamples( file=\"three_sources.h5\" )\n", "ps = acoular.PowerSpectra( source=ts, block_size=256, window=\"Hanning\" )\n", "mg = acoular.MicGeom( file=\"array_64.xml\" )\n", "rg = acoular.RectGrid( x_min=-0.2, x_max=0.2,\n", " y_min=-0.2, y_max=0.2,\n", " z=0.3, increment=0.005 )\n", "st = acoular.SteeringVector( grid=rg, mics=mg )\n", "bb = acoular.BeamformerBase( freq_data=ps, steer=st )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can now plot the result the same way as we already did in Part 1." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[('three_sources_cache.h5', 1)]\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "2e0df370c72f4a2891754afb64299e9b", "version_major": 2, "version_minor": 0 }, "image/png": "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BxJAAABchiFgJEICCACAy4TlVTiJWV7hJmwLzkzMAQQAAEgx9AACAOAyJsk5gIY5gK5HAggAgMswBxCJMAQMAACQYugBBADAZcLGq7BJYhEIzwJ2PRJAAABcJiKPIkkM8kVEBuh2DAEDAACkGHoAAQBwGRaBIBESQAAAXCb5OYAMAbsdQ8AAAAAphh5AAABc5ugikMYP4yZTF2cHEkAAAFwmkuSzgFkF7H4MAcfx9NNPq3v37srMzNSAAQP0zjvvNBi7e/duTZgwQT169JDX61VRUZEVs3DhQnk8Huuora1txrsAAKSqY3MAkzngbvwfjrFs2TIVFRVpxowZKisr01VXXaVrr71WO3bsiBtfV1en9u3ba8aMGbr44osbvG52drZ2797tODIzM5vrNgAAABpEAhhj7ty5uuOOO/SDH/xAvXr10rx589S5c2c988wzceO7deumJ598UrfccosCgUCD1/V4PMrLy3McAAA0h4i8SR9wN/4PH6e+vl4bN25UQUGBo7ygoEBr165N6tqHDx9W165d1alTJ40ePVplZWVJXQ8AgIaEjSfp41QdOnRIRUVF6tq1q7KysjRkyBC999570Z8bYzRz5kzl5+crKytLw4YN0wcffNCUt41TQAJ4nH379ikcDis3N9dRnpubq4qKikZft2fPnlq4cKGWL1+upUuXKjMzU1dccYU+/vjjBuvU1dWpqqrKcQAAcKb6wQ9+oJKSEr3wwgv629/+poKCAg0fPly7du2SJD3xxBOaO3eufvnLX+q9995TXl6errnmGh06dOg0tzw1kQDG4fE4//Ixxlhlp2LQoEH6/ve/r4svvlhXXXWVfve73+nCCy/U/PnzG6xTXFysQCAQPTp37tzo1wcApJbwV6uAkzlORU1NjV5++WU98cQTuvrqq/Uv//Ivmjlzprp3765nnnlGxhjNmzdPM2bM0He+8x317dtXixYtUnV1tZYsWdJM7wJOhATwODk5OfL5fFZv3549e6xewWR4vV594xvfOGEP4PTp01VZWRk9du7c2WSvDwBwt4jxJn2cilAopHA4bC1uzMrK0po1a7Rt2zZVVFQ4plj5/X4NHTo06SlWaBwSwONkZGRowIABKikpcZSXlJRoyJAhTfY6xhiVl5erY8eODcb4/X5lZ2c7DgAAWlLsVKS6urq4cW3atNHgwYP17//+7/r8888VDoe1ePFirV+/Xrt37452rDT1FCs0HglgjGnTpunXv/61fvOb32jLli269957tWPHDk2ePFnS0Z65W265xVGnvLxc5eXlOnz4sPbu3avy8nJ9+OGH0Z8/+uijev311/XJJ5+ovLxcd9xxh8rLy6PXBACgKTXVEHDnzp0d05GKi4sbfM0XXnhBxhh97Wtfk9/v11NPPaUJEybI5/NFY5p6ihUajyeBxBg3bpz279+vWbNmaffu3erbt69WrFihrl27Sjq68XPsnoD9+/eP/vfGjRu1ZMkSde3aVZ9++qkk6eDBg7rzzjtVUVGhQCCg/v376+2339bll1/eYvcFAEgdEalRK3mPry9JO3fudIxA+f3+But8/etf1+rVq3XkyBFVVVWpY8eOGjdunLp37x7d+qyiosIx+tXUU6xw8jzGGJ73chaoqqpSIBDQMI1Rmif9dDcHAHCKQiaov+iPqqysbLZpPce+K/5z0wBlndP4Pp6awyHddenGpNp64MABde/eXU888YQmTZqk/Px83XvvvfrJT34i6ejWax06dNCcOXN01113NbqtaBx6AAEAcJlkN3NuTN3XX39dxhj16NFD//d//6f77rtPPXr00G233SaPx6OioiI99thjuuCCC3TBBRfoscceU6tWrTRhwoRGtxONRwIIAIDLJPs838bUrays1PTp0/XZZ5+pbdu2+u53v6vZs2crPf3oqNVPfvIT1dTUaMqUKTpw4IAGDhyoVatWqU2bNo1uJxqPIeCzBEPAOBt40jOsMl+785wFWfYzsE2azyqzrh0MOescqbFiIgcr7WsH6xNeG2gJLTkE/NTGQUkPAd8zYF2zthWnF6uAAQAAUgxDwAAAuMzpGALG2YUEEAAAl2nM49xi68PdSAABNEpanr13VySvnVVWd65zzl84057vZ2KL4sxM9tVFHOdpR4J2zJf2XCXz2W5nG6ur7YsDQIohAQQAwGUixqNIMhtBJ1EXZwcSQAAAXCaS5BBwMnsI4uzA/2EAAIAUQw8gAAAuEzFeRZJYyZtMXZwdSAABnJS0jnmO82B3exFIbQf7QfF1bZwrPMJxniV/cotAnOcZR+xfX/5W9ibpfk/MXKat/2dfHHCZsDwKq/Hz+JKpi7MDKT4AAECKoQcQAACXYQgYiZAAAgDgMmElN4wbbrqm4AxFAggAgMvQA4hESAABWLytWllloc7tHefVHTOtmJp29pdGsI2zF+KkFoFE7BhfzIM/goftJ4qEM+weD49xPh3Efzjfignt+tx+QQBwMRJAAABcJmy8CifRi5dMXZwdSAABAHAZI48iScwBNGwD43qk+AAAACmGHkAAFs/X8qyy2g5ZjvN48/3q2tq9BsFznLs6x58D6IzxxJkD6A3GzCWMM99PXrtN3qBzc+i0qvPseswBhMswBIxESAABAHCZiPEoYho/jJtMXZwdSPEBAABSDD2AAAC4TFhehZPo40mmLs4OJIAAALgMQ8BIhAQQgCXc7hyrrC7g7BGoz7a/IOqzjVUWOse5osNk2DGKWQSiOCGReufrmzgLPjwRu02+Wmecv12WFZPZ3rnJdXjvXrsBAOAiJIAAALhMRF5FkhjGTaYuzg4kgAAAuEzYeBROYhg3mbo4O5AAAgDgMswBRCIkgADkOzfgOK89J92KCbZ2fiGEWtnXCWfZk/dMlnMOoDczZMV4YuYAmjhz+SJpPudrxZknGAraw1ax7a5v47NiMts671/MAQTgciSAAAC4jDFeRZJ4mofhSSCuRwIIAIDLhOVRWEnMAUyiLs4OpPgAAAAphh5AAABcJmKSW8gRiTPHFu5CAghAntatHefhTHuhRNjv/DKJxNnQOd4mz56MsOPclx62Ynwxi0AicRaBxC4diQTjLBRJtwc1In7neex9SFLkHL9VhrOPJy3mK81nf44Vtj9/JmQvTDrbRZKcA5hMXZwd+D8MAACQYkgA43j66afVvXt3ZWZmasCAAXrnnXcajN29e7cmTJigHj16yOv1qqioKG7cyy+/rN69e8vv96t379569dVXm6n1AIBUF5En6QPuRgIYY9myZSoqKtKMGTNUVlamq666Stdee6127NgRN76urk7t27fXjBkzdPHFF8eNKS0t1bhx41RYWKjNmzersLBQY8eO1fr165vzVgAAKerYk0CSOeBuJIAx5s6dqzvuuEM/+MEP1KtXL82bN0+dO3fWM888Eze+W7duevLJJ3XLLbcoEAjEjZk3b56uueYaTZ8+XT179tT06dP1r//6r5o3b14z3glwCrxex2F8sg/vSRw+Yx2emMMX5/B6I47D57MPj9c4DnllHfFeP7aNEZ/HOky6z3HgLOXzOQ6Px2MdJhSyDiAVkQAep76+Xhs3blRBQYGjvKCgQGvX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qHA4rIqKClVUVES73wOBgO644w796Ec/0ptvvqmysjJ9//vfV79+/TR8+PDTcq8AACC1ub4H8FS8+OKLuueee6Irdm+44Qb98pe/dMRs3bo1uiL3s88+0/LlyyVJl1xyiSPurbfe0rBhwyRJv/jFL5SWlqaxY8eqpqZG//qv/6qFCxfK5/OddNv8fr8eeeSRuMPCZ7Kztd3S2dt22t2yaHfLO1vbfra2G+7EPoAAAAAphiFgAACAFEMCCAAAkGJIAAEAAFIMCSAAAECKIQE8Qxw4cECFhYUKBAIKBAIqLCzUwYMHG4wPBoO6//771a9fP7Vu3Vr5+fm65ZZb9Pnnnzvi6urq9MMf/lA5OTlq3bq1brjhBn322Wente2S9Morr2jEiBHKycmRx+NReXm5FTNs2DB5PB7HkWhT7zOh3c39njem3cYYzZw5U/n5+crKytKwYcP0wQcfOGKa+v1++umn1b17d2VmZmrAgAF65513Thi/evVqDRgwQJmZmTr//PO1YMECK+bll19W79695ff71bt37+iWTE2tqdu+cOFC6731eDyqra09be3evXu3JkyYoB49esjr9aqoqChuXEu8503d7jPx/X7llVd0zTXXqH379srOztbgwYP1+uuvW3Et9RkHZHBGGDlypOnbt69Zu3atWbt2renbt68ZPXp0g/EHDx40w4cPN8uWLTN///vfTWlpqRk4cKAZMGCAI27y5Mnma1/7mikpKTGbNm0y3/zmN83FF19sQqHQaWu7Mcb89re/NY8++qh59tlnjSRTVlZmxQwdOtRMmjTJ7N69O3ocPHjwjG93c7/njWn3448/btq0aWNefvll87e//c2MGzfOdOzY0VRVVUVjmvL9fumll0x6erp59tlnzYcffmimTp1qWrdubbZv3x43/pNPPjGtWrUyU6dONR9++KF59tlnTXp6uvnv//7vaMzatWuNz+czjz32mNmyZYt57LHHTFpamlm3bl2j2tiSbX/++edNdna2473dvXv3aW33tm3bzD333GMWLVpkLrnkEjN16lQrpiXe8+Zo95n4fk+dOtXMmTPHvPvuu+ajjz4y06dPN+np6WbTpk3RmJb6jAPGGEMCeAb48MMPjSTHP/LS0lIjyfz9738/6eu8++67RlL0F9DBgwdNenq6eemll6Ixu3btMl6v16xcufKMaPu2bdtOmADG++XeFJqr3c39njem3ZFIxOTl5ZnHH388WlZbW2sCgYBZsGBBtKwp3+/LL7/cTJ482VHWs2dP88ADD8SN/8lPfmJ69uzpKLvrrrvMoEGDoudjx441I0eOdMSMGDHCjB8/vknafExztP355583gUCgSdsZ61TbfbyG/t+3xHveHO0+09/vY3r37m0effTR6HlLfcYBY4xhCPgMUFpaqkAgoIEDB0bLBg0apEAgoLVr1570dSorK+XxeHTuuedKkjZu3KhgMBjd2FqS8vPz1bdv31O6bku0vSEvvviicnJy1KdPH/34xz/WoUOHkr6m1Hztbu73vDHt3rZtmyoqKhxt8vv9Gjp0qFWnKd7v+vp6bdy40fF6klRQUNBgG0tLS634ESNGaMOGDQoGgyeMaarPcnO2XZIOHz6srl27qlOnTho9erTKyspOa7tPRnO/583VbunMf78jkYgOHTqktm3bRsta4jMOHMOTQM4AFRUV6tChg1XeoUMHVVRUnNQ1amtr9cADD2jChAnRh6NXVFQoIyND5513niM2Nzf3pK+bSFO0vSE333yzunfvrry8PL3//vuaPn26Nm/erJKSkqSuKzVfu5v7PW9Mu4+V5+bmWm3avn179Lyp3u99+/YpHA7Hfb0TtTFefCgU0r59+9SxY8cGY5rqs9ycbe/Zs6cWLlyofv36qaqqSk8++aSuuOIKbd68WRdccMFpaffJaO73vLnafTa83//xH/+hI0eORJ8RLzX/+w0cjx7AZjRz5sy4E5GPPzZs2CBJ8ng8Vn1jTNzyWMFgUOPHj1ckEtHTTz+dMP5krttSbT+RSZMmafjw4erbt6/Gjx+v//7v/9Ybb7yhTZs2ndHtjifRdVui3bE/j63TmPc7mdc7mfjY8lO9ZmM1ddsHDRqk73//+7r44ot11VVX6Xe/+50uvPBCzZ8//7S2+3Rds7lf40x/v5cuXaqZM2dq2bJl1h90LfUZB+gBbEZ33313wlWU3bp101//+ld98cUX1s/27t1r/TUYKxgMauzYsdq2bZv+/Oc/R3v/JCkvL0/19fU6cOCAo0dqz549GjJkyGlv+6m69NJLlZ6ero8//liXXnpp3JjT3e7GvufN2e68vDxJR3sXOnbs6GjTie71ZN7veHJycuTz+axeixO9Xl5eXtz4tLQ0tWvX7oQxTfk5a662x/J6vfrGN76hjz/++LS1+2Q093veXO2OdSa938uWLdMdd9yh3//+9xo+fLjjZy3xGQeOoQewGeXk5Khnz54nPDIzMzV48GBVVlbq3XffjdZdv369KisrT5g0HEv+Pv74Y73xxhvWl82AAQOUnp7uGMLbvXu33n///YQJYHO3vTE++OADBYNBRxJzprW7se95c7b72LDu8W2qr6/X6tWrT9imk3m/48nIyNCAAQOsoeOSkpIGX2/w4MFW/KpVq3TZZZcpPT39hDFN+TlrrrbHMsaovLz8lN/bpmz3yWju97y52h3rTHm/ly5dqltvvVVLlizRqFGjrJ+3xGcciGrhRSdowMiRI81FF11kSktLTWlpqenXr5+1tUePHj3MK6+8YowxJhgMmhtuuMF06tTJlJeXO7Y6qKuri9aZPHmy6dSpk3njjTfMpk2bzP/3//1/zbINzKm03Rhj9u/fb8rKysyf/vQnI8m89NJLpqysLLpVw//93/+ZRx991Lz33ntm27Zt5k9/+pPp2bOn6d+/f5Nup9LU7Tam+d/zxrT78ccfN4FAwLzyyivmb3/7m7npppsc28A09ft9bIuM5557znz44YemqKjItG7d2nz66afGGGMeeOABU1hYGI0/tpXKvffeaz788EPz3HPPWVup/L//9/+Mz+czjz/+uNmyZYt5/PHHm3UbmKZs+8yZM83KlSvNP/7xD1NWVmZuu+02k5aWZtavX3/a2m2MMWVlZaasrMwMGDDATJgwwZSVlZkPPvgg+vOWeM+bo91n4vu9ZMkSk5aWZn71q181uNVSS33GAWPYBuaMsX//fnPzzTebNm3amDZt2pibb77ZHDhwwBEjyTz//PPGmH9uQxLveOutt6J1ampqzN13323atm1rsrKyzOjRo82OHTtOa9uNObpNQ7y2P/LII8YYY3bs2GGuvvpq07ZtW5ORkWG+/vWvm3vuucfs37//jG63Mc3/njem3ZFIxDzyyCMmLy/P+P1+c/XVV5u//e1v0Z83x/v9q1/9ynTt2tVkZGSYSy+91KxevTr6s4kTJ5qhQ4c64v/yl7+Y/v37m4yMDNOtWzfzzDPPWNf8/e9/b3r06GHS09NNz549zcsvv9zo9rVk24uKikyXLl1MRkaGad++vSkoKDBr16497e2O91nu2rWrI6Yl3vOmbveZ+H4PHTo0brsnTpzouGZLfcYBjzFfzVYGAABASmAOIAAAQIohAQQAAEgxJIAAAAAphgQQAAAgxZAAAgAApBgSQAAAgBRDAggAAJBiSAABAABSDAkgAABAiiEBBAAASDEkgAAAACmGBBAAACDFkAACAACkGBJAAACAFEMCCAAAkGJIAAEAAFIMCSAAAECKIQEEAABIMSSAAAAAKYYEEAAAIMWQAAIAAKQYEkAAAIAUQwIIAACQYkgAAQAAUgwJIAAAQIohAQQAAEgxJIAAAAAphgQQAAAgxZAAAgAApBgSQAAAgBRDAggAAJBi/n9p4IhC4a5I9gAAAABJRU5ErkJggg==", "text/html": [ "\n", "