You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
296 lines
28 KiB
Plaintext
296 lines
28 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "4fdb98fc-65bb-467e-be0c-168fee9b0fca",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"cuda:0\n"
|
|
]
|
|
},
|
|
{
|
|
"ename": "NameError",
|
|
"evalue": "name '_ndimage_api' is not defined",
|
|
"output_type": "error",
|
|
"traceback": [
|
|
"\u001b[31m---------------------------------------------------------------------------\u001b[39m",
|
|
"\u001b[31mNameError\u001b[39m Traceback (most recent call last)",
|
|
"\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[3]\u001b[39m\u001b[32m, line 29\u001b[39m\n\u001b[32m 27\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mgc\u001b[39;00m\n\u001b[32m 28\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtorchsig\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mutils\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mu\u001b[39;00m\n\u001b[32m---> \u001b[39m\u001b[32m29\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtorchsig\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mtransforms\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mtransforms\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mT\u001b[39;00m\n\u001b[32m 30\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtorchsig\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mtransforms\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m functional \u001b[38;5;28;01mas\u001b[39;00m F\n\u001b[32m 31\u001b[39m matplotlib.use(\u001b[33m'\u001b[39m\u001b[33mAgg\u001b[39m\u001b[33m'\u001b[39m)\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m~/from_ssh/DroneDetector/torchsig/torchsig/transforms/transforms.py:1\u001b[39m\n\u001b[32m----> \u001b[39m\u001b[32m1\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[34;01mdataset_transforms\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m Spectrogram \u001b[38;5;28;01mas\u001b[39;00m _Spectrogram\n\u001b[32m 4\u001b[39m \u001b[38;5;28;01mclass\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mSpectrogram\u001b[39;00m(_Spectrogram):\n\u001b[32m 5\u001b[39m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34m__init__\u001b[39m(\u001b[38;5;28mself\u001b[39m, nperseg=\u001b[38;5;28;01mNone\u001b[39;00m, fft_size=\u001b[38;5;28;01mNone\u001b[39;00m, nfft=\u001b[38;5;28;01mNone\u001b[39;00m, **kwargs):\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m~/from_ssh/DroneDetector/torchsig/torchsig/transforms/dataset_transforms.py:37\u001b[39m\n\u001b[32m 4\u001b[39m __all__ = [\n\u001b[32m 5\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mDatasetTransform\u001b[39m\u001b[33m\"\u001b[39m,\n\u001b[32m 6\u001b[39m \n\u001b[32m (...)\u001b[39m\u001b[32m 33\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mTimeReversal\u001b[39m\u001b[33m\"\u001b[39m\n\u001b[32m 34\u001b[39m ]\n\u001b[32m 36\u001b[39m \u001b[38;5;66;03m# TorchSig\u001b[39;00m\n\u001b[32m---> \u001b[39m\u001b[32m37\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtorchsig\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mtransforms\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mbase_transforms\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m Transform\n\u001b[32m 38\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtorchsig\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01msignals\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01msignal_types\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m DatasetSignal, SignalMetadata\n\u001b[32m 39\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtorchsig\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mtransforms\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mfunctional\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mF\u001b[39;00m\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m~/from_ssh/DroneDetector/torchsig/torchsig/transforms/base_transforms.py:16\u001b[39m\n\u001b[32m 6\u001b[39m __all__ = [\n\u001b[32m 7\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mTransform\u001b[39m\u001b[33m\"\u001b[39m,\n\u001b[32m 8\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mCompose\u001b[39m\u001b[33m\"\u001b[39m,\n\u001b[32m (...)\u001b[39m\u001b[32m 12\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mRandAugment\u001b[39m\u001b[33m\"\u001b[39m,\n\u001b[32m 13\u001b[39m ]\n\u001b[32m 15\u001b[39m \u001b[38;5;66;03m# TorchSig\u001b[39;00m\n\u001b[32m---> \u001b[39m\u001b[32m16\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtorchsig\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mtransforms\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mfunctional\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mF\u001b[39;00m\n\u001b[32m 17\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtorchsig\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01msignals\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01msignal_types\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m Signal, DatasetSignal\n\u001b[32m 18\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtorchsig\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mutils\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mrandom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m Seedable\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m~/from_ssh/DroneDetector/torchsig/torchsig/transforms/functional.py:6\u001b[39m\n\u001b[32m 3\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtyping\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m Literal, Optional, Tuple\n\u001b[32m 5\u001b[39m \u001b[38;5;66;03m# TorchSig\u001b[39;00m\n\u001b[32m----> \u001b[39m\u001b[32m6\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtorchsig\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mutils\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mdsp\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mdsp\u001b[39;00m\n\u001b[32m 7\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtorchsig\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mutils\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mdsp\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m (\n\u001b[32m 8\u001b[39m torchsig_complex_data_type,\n\u001b[32m 9\u001b[39m torchsig_float_data_type\n\u001b[32m 10\u001b[39m )\n\u001b[32m 12\u001b[39m \u001b[38;5;66;03m# Third Party\u001b[39;00m\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m~/from_ssh/DroneDetector/torchsig/torchsig/utils/dsp.py:5\u001b[39m\n\u001b[32m 1\u001b[39m \u001b[33;03m\"\"\"Digital Signal Processing (DSP) Utils\u001b[39;00m\n\u001b[32m 2\u001b[39m \u001b[33;03m\"\"\"\u001b[39;00m\n\u001b[32m 4\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtorchsig\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m __version__ \u001b[38;5;28;01mas\u001b[39;00m torchsig_version\n\u001b[32m----> \u001b[39m\u001b[32m5\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mscipy\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m signal \u001b[38;5;28;01mas\u001b[39;00m sp\n\u001b[32m 6\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mnumpy\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mnp\u001b[39;00m\n\u001b[32m 7\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mcopy\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m copy\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m<frozen importlib._bootstrap>:1412\u001b[39m, in \u001b[36m_handle_fromlist\u001b[39m\u001b[34m(module, fromlist, import_, recursive)\u001b[39m\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m~/from_ssh/DroneDetector/.venv-train/lib/python3.12/site-packages/scipy/__init__.py:131\u001b[39m, in \u001b[36m__getattr__\u001b[39m\u001b[34m(name)\u001b[39m\n\u001b[32m 129\u001b[39m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34m__getattr__\u001b[39m(name):\n\u001b[32m 130\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m name \u001b[38;5;129;01min\u001b[39;00m submodules:\n\u001b[32m--> \u001b[39m\u001b[32m131\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43m_importlib\u001b[49m\u001b[43m.\u001b[49m\u001b[43mimport_module\u001b[49m\u001b[43m(\u001b[49m\u001b[33;43mf\u001b[39;49m\u001b[33;43m'\u001b[39;49m\u001b[33;43mscipy.\u001b[39;49m\u001b[38;5;132;43;01m{\u001b[39;49;00m\u001b[43mname\u001b[49m\u001b[38;5;132;43;01m}\u001b[39;49;00m\u001b[33;43m'\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[32m 132\u001b[39m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[32m 133\u001b[39m \u001b[38;5;28;01mtry\u001b[39;00m:\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m/usr/lib/python3.12/importlib/__init__.py:90\u001b[39m, in \u001b[36mimport_module\u001b[39m\u001b[34m(name, package)\u001b[39m\n\u001b[32m 88\u001b[39m \u001b[38;5;28;01mbreak\u001b[39;00m\n\u001b[32m 89\u001b[39m level += \u001b[32m1\u001b[39m\n\u001b[32m---> \u001b[39m\u001b[32m90\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43m_bootstrap\u001b[49m\u001b[43m.\u001b[49m\u001b[43m_gcd_import\u001b[49m\u001b[43m(\u001b[49m\u001b[43mname\u001b[49m\u001b[43m[\u001b[49m\u001b[43mlevel\u001b[49m\u001b[43m:\u001b[49m\u001b[43m]\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mpackage\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mlevel\u001b[49m\u001b[43m)\u001b[49m\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m~/from_ssh/DroneDetector/.venv-train/lib/python3.12/site-packages/scipy/signal/__init__.py:306\u001b[39m\n\u001b[32m 1\u001b[39m \u001b[33;03m\"\"\"\u001b[39;00m\n\u001b[32m 2\u001b[39m \u001b[33;03m=======================================\u001b[39;00m\n\u001b[32m 3\u001b[39m \u001b[33;03mSignal processing (:mod:`scipy.signal`)\u001b[39;00m\n\u001b[32m (...)\u001b[39m\u001b[32m 300\u001b[39m \n\u001b[32m 301\u001b[39m \u001b[33;03m\"\"\"\u001b[39;00m\n\u001b[32m 302\u001b[39m \u001b[38;5;66;03m# bring in the public functionality from private namespaces\u001b[39;00m\n\u001b[32m 303\u001b[39m \n\u001b[32m 304\u001b[39m \u001b[38;5;66;03m# mypy: ignore-errors\u001b[39;00m\n\u001b[32m--> \u001b[39m\u001b[32m306\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_support_alternative_backends\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m *\n\u001b[32m 307\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m _support_alternative_backends\n\u001b[32m 308\u001b[39m __all__ = _support_alternative_backends.__all__\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m~/from_ssh/DroneDetector/.venv-train/lib/python3.12/site-packages/scipy/signal/_support_alternative_backends.py:7\u001b[39m\n\u001b[32m 2\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtypes\u001b[39;00m\n\u001b[32m 3\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mscipy\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_lib\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_array_api\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m (\n\u001b[32m 4\u001b[39m is_cupy, is_jax, scipy_namespace_for, SCIPY_ARRAY_API, xp_capabilities\n\u001b[32m 5\u001b[39m )\n\u001b[32m----> \u001b[39m\u001b[32m7\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_signal_api\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m * \u001b[38;5;66;03m# noqa: F403\u001b[39;00m\n\u001b[32m 8\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m _signal_api\n\u001b[32m 9\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m _delegators\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m~/from_ssh/DroneDetector/.venv-train/lib/python3.12/site-packages/scipy/signal/_signal_api.py:16\u001b[39m\n\u001b[32m 12\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_upfirdn\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m upfirdn \u001b[38;5;66;03m# noqa: F401\u001b[39;00m\n\u001b[32m 14\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_spline\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m sepfir2d \u001b[38;5;66;03m# noqa: F401\u001b[39;00m\n\u001b[32m---> \u001b[39m\u001b[32m16\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_spline_filters\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m * \u001b[38;5;66;03m# noqa: F403\u001b[39;00m\n\u001b[32m 17\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_filter_design\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m * \u001b[38;5;66;03m# noqa: F403\u001b[39;00m\n\u001b[32m 18\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_fir_filter_design\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m * \u001b[38;5;66;03m# noqa: F403\u001b[39;00m\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m~/from_ssh/DroneDetector/.venv-train/lib/python3.12/site-packages/scipy/signal/_spline_filters.py:14\u001b[39m\n\u001b[32m 12\u001b[39m \u001b[38;5;66;03m# From splinemodule.c\u001b[39;00m\n\u001b[32m 13\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_spline\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m sepfir2d, symiirorder1_ic, symiirorder2_ic_fwd, symiirorder2_ic_bwd\n\u001b[32m---> \u001b[39m\u001b[32m14\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_signaltools\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m lfilter, sosfilt, lfiltic\n\u001b[32m 15\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_arraytools\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m axis_slice, axis_reverse\n\u001b[32m 17\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mscipy\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01minterpolate\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m BSpline\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m~/from_ssh/DroneDetector/.venv-train/lib/python3.12/site-packages/scipy/signal/_signaltools.py:19\u001b[39m\n\u001b[32m 17\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_upfirdn\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m upfirdn, _output_len, _upfirdn_modes\n\u001b[32m 18\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mscipy\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m linalg, fft \u001b[38;5;28;01mas\u001b[39;00m sp_fft\n\u001b[32m---> \u001b[39m\u001b[32m19\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mscipy\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m ndimage\n\u001b[32m 20\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mscipy\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mfft\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01m_helper\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m _init_nd_shape_and_axes\n\u001b[32m 21\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mnumpy\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mnp\u001b[39;00m\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m<frozen importlib._bootstrap>:1412\u001b[39m, in \u001b[36m_handle_fromlist\u001b[39m\u001b[34m(module, fromlist, import_, recursive)\u001b[39m\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m~/from_ssh/DroneDetector/.venv-train/lib/python3.12/site-packages/scipy/__init__.py:131\u001b[39m, in \u001b[36m__getattr__\u001b[39m\u001b[34m(name)\u001b[39m\n\u001b[32m 129\u001b[39m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34m__getattr__\u001b[39m(name):\n\u001b[32m 130\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m name \u001b[38;5;129;01min\u001b[39;00m submodules:\n\u001b[32m--> \u001b[39m\u001b[32m131\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43m_importlib\u001b[49m\u001b[43m.\u001b[49m\u001b[43mimport_module\u001b[49m\u001b[43m(\u001b[49m\u001b[33;43mf\u001b[39;49m\u001b[33;43m'\u001b[39;49m\u001b[33;43mscipy.\u001b[39;49m\u001b[38;5;132;43;01m{\u001b[39;49;00m\u001b[43mname\u001b[49m\u001b[38;5;132;43;01m}\u001b[39;49;00m\u001b[33;43m'\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[32m 132\u001b[39m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[32m 133\u001b[39m \u001b[38;5;28;01mtry\u001b[39;00m:\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m/usr/lib/python3.12/importlib/__init__.py:90\u001b[39m, in \u001b[36mimport_module\u001b[39m\u001b[34m(name, package)\u001b[39m\n\u001b[32m 88\u001b[39m \u001b[38;5;28;01mbreak\u001b[39;00m\n\u001b[32m 89\u001b[39m level += \u001b[32m1\u001b[39m\n\u001b[32m---> \u001b[39m\u001b[32m90\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43m_bootstrap\u001b[49m\u001b[43m.\u001b[49m\u001b[43m_gcd_import\u001b[49m\u001b[43m(\u001b[49m\u001b[43mname\u001b[49m\u001b[43m[\u001b[49m\u001b[43mlevel\u001b[49m\u001b[43m:\u001b[49m\u001b[43m]\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mpackage\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mlevel\u001b[49m\u001b[43m)\u001b[49m\n",
|
|
"\u001b[36mFile \u001b[39m\u001b[32m~/from_ssh/DroneDetector/.venv-train/lib/python3.12/site-packages/scipy/ndimage/__init__.py:162\u001b[39m\n\u001b[32m 160\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m _support_alternative_backends\n\u001b[32m 161\u001b[39m __all__ = _support_alternative_backends.__all__\n\u001b[32m--> \u001b[39m\u001b[32m162\u001b[39m \u001b[38;5;28;01mdel\u001b[39;00m _support_alternative_backends, \u001b[43m_ndimage_api\u001b[49m, _delegators \u001b[38;5;66;03m# noqa: F821\u001b[39;00m\n\u001b[32m 165\u001b[39m \u001b[38;5;66;03m# Deprecated namespaces, to be removed in v2.0.0\u001b[39;00m\n\u001b[32m 166\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01m.\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m filters\n",
|
|
"\u001b[31mNameError\u001b[39m: name '_ndimage_api' is not defined"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"import pandas as pd\n",
|
|
"import numpy as np\n",
|
|
"import matplotlib.pyplot as plt\n",
|
|
"import time\n",
|
|
"import io\n",
|
|
"import cv2\n",
|
|
"import copy\n",
|
|
"import os\n",
|
|
"from tqdm import tqdm\n",
|
|
"import torch.nn as nn\n",
|
|
"import torch\n",
|
|
"import torchvision\n",
|
|
"from torch.utils.data import Dataset\n",
|
|
"from torch import default_generator, randperm\n",
|
|
"from PIL import Image\n",
|
|
"#from torch._utils import _accumulate\n",
|
|
"import csv\n",
|
|
"from torch.utils.data.dataset import Subset\n",
|
|
"from scipy import ndimage\n",
|
|
"device = torch.device(\"cuda:0\" if torch.cuda.is_available() else \"cpu\")\n",
|
|
"print(device)\n",
|
|
"batch_size = 16\n",
|
|
"momentum=0.9\n",
|
|
"lr = 1e-3\n",
|
|
"import random\n",
|
|
"sub_sample = 0.5\n",
|
|
"import matplotlib\n",
|
|
"import gc\n",
|
|
"import torchsig.utils as u\n",
|
|
"import torchsig.transforms.transforms as T\n",
|
|
"from torchsig.transforms import functional as F\n",
|
|
"matplotlib.use('Agg')\n",
|
|
"import matplotlib as mpl\n",
|
|
"mpl.rcParams['agg.path.chunksize'] = 256*256\n",
|
|
"plt.ioff()"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "4848b066-2e09-4c1c-b8fa-8e3fa84d907a",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"s = T.Spectrogram(nperseg=1024)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "9267fbe1",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"def sig2pic_with_spec(path_to_data, filename, specT=None,figsize=(16,16), dpi=16, resize = None):\n",
|
|
" try:\n",
|
|
" if specT is None:\n",
|
|
" specT = T.Spectrogram(nperseg=1024)\n",
|
|
" with open(path_to_data + filename, 'rb') as file:\n",
|
|
" tmp = np.frombuffer(file.read(), dtype=np.complex64)\n",
|
|
" signal = tmp\n",
|
|
"\n",
|
|
" #rint(\"vSE ok\")\n",
|
|
"\n",
|
|
" spectr = np.array(F.spectrogram(signal, fft_size=specT.fft_size, fft_stride=specT.fft_stride)[:, :figsize[0] * dpi])\n",
|
|
" #print(\"VSE OK\")\n",
|
|
" mag = np.abs(signal)\n",
|
|
" real = signal.real\n",
|
|
"\n",
|
|
" fig2 = plt.figure(figsize = figsize)\n",
|
|
" plt.axes(ylim=(-1, 1))\n",
|
|
"\n",
|
|
" plt.plot(real, color='black')\n",
|
|
" plt.gca().set_axis_off()\n",
|
|
" plt.subplots_adjust(top = 1, bottom = 0, right = 1, left = 0, hspace = 0, wspace = 0)\n",
|
|
" plt.margins(0,0)\n",
|
|
" buf2 = io.BytesIO()\n",
|
|
" fig2.savefig(buf2, format=\"png\", dpi=dpi)\n",
|
|
" buf2.seek(0)\n",
|
|
" img_arr2 = np.frombuffer(buf2.getvalue(), dtype=np.uint8)\n",
|
|
" buf2.close()\n",
|
|
" img2 = cv2.imdecode(img_arr2, 1)\n",
|
|
" img2 = cv2.cvtColor(img2, cv2.COLOR_BGR2GRAY)\n",
|
|
" plt.clf()\n",
|
|
" plt.cla()\n",
|
|
" plt.close()\n",
|
|
" plt.close(fig2)\n",
|
|
"\n",
|
|
" fig3 = plt.figure(figsize = figsize)\n",
|
|
" plt.axes(ylim=(-1, 1))\n",
|
|
"\n",
|
|
" plt.plot(mag, color='black')\n",
|
|
" plt.gca().set_axis_off()\n",
|
|
" plt.subplots_adjust(top = 1, bottom = 0, right = 1, left = 0, hspace = 0, wspace = 0)\n",
|
|
" plt.margins(0,0)\n",
|
|
" buf3 = io.BytesIO()\n",
|
|
" fig3.savefig(buf3, format=\"png\", dpi=dpi)\n",
|
|
" buf3.seek(0)\n",
|
|
" img_arr3 = np.frombuffer(buf3.getvalue(), dtype=np.uint8)\n",
|
|
" buf3.close()\n",
|
|
" img3 = cv2.imdecode(img_arr3, 1)\n",
|
|
" img3 = cv2.cvtColor(img3, cv2.COLOR_BGR2GRAY)\n",
|
|
" plt.clf()\n",
|
|
" plt.cla()\n",
|
|
" plt.close()\n",
|
|
" plt.close(fig3)\n",
|
|
"\n",
|
|
" if resize != None:\n",
|
|
" resized_real = cv2.resize(img2, resize)\n",
|
|
" resized_mag = cv2.resize(img3, resize)\n",
|
|
" resized_spectr = cv2.resize(spectr, resize)\n",
|
|
" img = np.asarray([resized_real, resized_mag, resized_spectr], dtype=np.float32)\n",
|
|
" return img\n",
|
|
" img = np.asarray([img2, img3, spectr], dtype=np.float32)\n",
|
|
" return img\n",
|
|
" except Exception as e:\n",
|
|
" print(str(e))\n",
|
|
" return None"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "448da74a-e0ae-44d8-9877-8dd1f257a24f",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"selected_freq=2400\n",
|
|
"\n",
|
|
"path_to_binaries = f'/mnt/nvme1/dataset_5_5_26/noise/{selected_freq}'\n",
|
|
"path_to_pictures = f'/mnt/nvme1/dataset_5_5_26_img/noise/{selected_freq}_jpg'"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "ac4945a8-29c4-4da4-945f-08658953e3e5",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"from tqdm import tqdm"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "6f226f86-5d72-4573-8af6-750128b70263",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stderr",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"drone: 100%|██████████| 935/935 [13:33<00:00, 1.15it/s]"
|
|
]
|
|
},
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"Dir: drone finished!\n"
|
|
]
|
|
},
|
|
{
|
|
"name": "stderr",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"size = (256,256)\n",
|
|
"\n",
|
|
"if not os.path.exists(path_to_pictures):\n",
|
|
" os.makedirs(path_to_pictures,exist_ok=True)\n",
|
|
"\n",
|
|
"for subdir in os.listdir(path_to_binaries):\n",
|
|
" filepath = path_to_binaries + '/' + subdir + '/'\n",
|
|
"\n",
|
|
" if not os.path.isdir(filepath):\n",
|
|
" sig2pic_with_spec(path_to_data=filepath, filename=file, specT=s, resize=size)\n",
|
|
"\n",
|
|
" files = os.listdir(filepath)\n",
|
|
" k = max(1, int(len(files) * 0.3))\n",
|
|
" files = random.sample(files, k)\n",
|
|
" for file in tqdm(files, desc=subdir):\n",
|
|
" full_input_path = filepath + file\n",
|
|
"\n",
|
|
" if not os.path.isfile(full_input_path):\n",
|
|
" continue\n",
|
|
"\n",
|
|
" if file in ('run.log', 'reading_in_progress'):\n",
|
|
" continue\n",
|
|
"\n",
|
|
" save_base = subdir + '__' + file\n",
|
|
"\n",
|
|
" savepath = path_to_pictures + '/' + save_base + '.npy'\n",
|
|
" savepath_real_png = path_to_pictures + '/' + save_base + '_real' + '.png'\n",
|
|
" savepath_imag_png = path_to_pictures + '/' + save_base + '_imag' + '.png'\n",
|
|
" savepath_spec_png = path_to_pictures + '/' + save_base + '_spec' + '.png'\n",
|
|
"\n",
|
|
" if not os.path.exists(savepath):\n",
|
|
" img = sig2pic_with_spec(path_to_data=filepath, filename=file, specT=s, resize=size)\n",
|
|
" gc.collect()\n",
|
|
"\n",
|
|
" try:\n",
|
|
" plt.imshow(img[0])\n",
|
|
" plt.savefig(savepath_real_png)\n",
|
|
" plt.clf()\n",
|
|
" plt.cla()\n",
|
|
" plt.close()\n",
|
|
"\n",
|
|
" plt.imshow(img[1])\n",
|
|
" plt.savefig(savepath_imag_png)\n",
|
|
" plt.clf()\n",
|
|
" plt.cla()\n",
|
|
" plt.close()\n",
|
|
"\n",
|
|
"\n",
|
|
" except Exception as e:\n",
|
|
" print(f\"error {e}\")\n",
|
|
" \n",
|
|
"\n",
|
|
" print('Dir: ', subdir , ' finished!')"
|
|
]
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": ".venv-train",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 3
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython3",
|
|
"version": "3.12.3"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 5
|
|
}
|