{"id":19760641,"url":"https://github.com/nouralmulhem/communication_assignments","last_synced_at":"2025-07-27T11:39:04.527Z","repository":{"id":179703362,"uuid":"633998744","full_name":"nouralmulhem/Communication_Assignments","owner":"nouralmulhem","description":"📶 Digital Communication (ELC325B) Assignments Solutions","archived":false,"fork":false,"pushed_at":"2023-07-08T15:34:30.000Z","size":2297,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-01T02:49:37.100Z","etag":null,"topics":["awgn-channel","communication","dequantization","design","digital-communication","gram-schmidt","matlab","quantization","quantization-algorithms"],"latest_commit_sha":null,"homepage":"","language":"MATLAB","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nouralmulhem.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-04-28T19:19:55.000Z","updated_at":"2024-03-22T22:05:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"e34a0220-b75d-4842-acd2-7a772d14a791","html_url":"https://github.com/nouralmulhem/Communication_Assignments","commit_stats":null,"previous_names":["nouralmulhem/communication_assignments"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nouralmulhem%2FCommunication_Assignments","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nouralmulhem%2FCommunication_Assignments/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nouralmulhem%2FCommunication_Assignments/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nouralmulhem%2FCommunication_Assignments/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nouralmulhem","download_url":"https://codeload.github.com/nouralmulhem/Communication_Assignments/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253809751,"owners_count":21967789,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["awgn-channel","communication","dequantization","design","digital-communication","gram-schmidt","matlab","quantization","quantization-algorithms"],"created_at":"2024-11-12T03:38:10.374Z","updated_at":"2025-05-12T19:44:22.925Z","avatar_url":"https://github.com/nouralmulhem.png","language":"MATLAB","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align= \u003e\r\n\r\n# \u003cimg align=center width=75px height=75px src=\"https://media2.giphy.com/media/jPYkx3b1R8X7lLappW/giphy.gif?cid=ecf05e47zkbwgfsujumrocqtcbmhye26zlysngf74qk8adib\u0026ep=v1_stickers_search\u0026rid=giphy.gif\u0026ct=s\"\u003e Digital Communication Assignments\r\n\r\n\r\n\u003c/div\u003e\r\n\u003cdiv align=\"center\"\u003e\r\n   \u003cimg align=\"center\" height=400px src=\"https://cdn.dribbble.com/users/1371241/screenshots/6829039/07-wave.gif\" alt=\"logo\"\u003e\r\n\r\n\u003c/div\u003e\r\n\r\n\u003cp align=\"center\"\u003e \r\n    \u003cbr\u003e \r\n\u003c/p\u003e\r\n\r\n## \u003cimg align= center width=50px height=50px src=\"https://thumbs.gfycat.com/HeftyDescriptiveChimneyswift-size_restricted.gif\"\u003e Table of Contents\r\n\r\n- \u003ca href =\"#about\"\u003e 📙 Overview\u003c/a\u003e\r\n- \u003ca href =\"#assignments\"\u003e 📝 Assignments\u003c/a\u003e\r\n  - \u003ca href =\"#assignment1\"\u003e ☝️ Assignment 1\u003c/a\u003e\r\n  - \u003ca href =\"#assignment2\"\u003e ✌️ Assignment 2\u003c/a\u003e\r\n  - \u003ca href =\"#assignment3\"\u003e 👌 Assignment 3\u003c/a\u003e\r\n- \u003ca href =\"#contributors\"\u003e ✨ Contributors\u003c/a\u003e\r\n- \u003ca href =\"#license\"\u003e 🔒 License\u003c/a\u003e\r\n\u003chr style=\"background-color: #4b4c60\"\u003e\u003c/hr\u003e\r\n\r\n \u003ca id = \"about\"\u003e\u003c/a\u003e\r\n\r\n## \u003cimg align=\"center\"  height =50px src=\"https://user-images.githubusercontent.com/71986226/154076110-1233d7a8-92c2-4d79-82c1-30e278aa518a.gif\"\u003e Overview\r\n\u003cbr\u003e\r\n\u003cul\u003e \r\n\u003cli\u003e\r\nSolution of assignment in course Digital communications ELC325B\u003c/li\u003e\r\n\u003cli\u003eThis project has solutions for 3 assignments\u003c/li\u003e\r\n\u003cul\u003e\r\n\u003cli\u003e\u003ca href=\"https://github.com/nouralmulhem/Communication_Assignments/tree/main/Assignment%201\"\u003eAssignment 1\u003c/a\u003e\u003c/li\u003e\r\n\u003cli\u003e\u003ca href=\"https://github.com/nouralmulhem/Communication_Assignments/tree/main/Assignment%202\"\u003eAssignment 2\u003c/a\u003e\u003c/li\u003e\r\n\u003cli\u003e\u003ca href=\"https://github.com/nouralmulhem/Communication_Assignments/tree/main/Assignment%203\"\u003eAssignment 3\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\r\n\r\n\u003cli\u003eBuilt using  \u003ca href=\"https://www.mathworks.com/products/matlab.html\"\u003eMatlab\u003c/a\u003e\u003c/li\u003e\r\n\r\n\u003c/ul\u003e\r\n\u003chr style=\"background-color: #4b4c60\"\u003e\u003c/hr\u003e\r\n\r\n\u003ca id =\"assignments\"\u003e\u003c/a\u003e\r\n\r\n## \u003cimg align= \"center\" width=50px src=\"https://media4.giphy.com/media/xN3IbsXsm1pOtGOkx2/giphy.gif?cid=ecf05e47lnbd6mvq1joc1wjqtdh7aonlxeiin9t26d7qgrh1\u0026ep=v1_stickers_search\u0026rid=giphy.gif\u0026ct=s\"\u003e Assignments \r\n\r\n\u003ca id = \"assignment1\"\u003e\u003c/a\u003e\r\n\r\n### \u003cimg align= \"center\" width=60px src=\"https://media0.giphy.com/media/ksNc3DpgrXoVbfm55o/giphy.gif?cid=ecf05e47xx37ikbgcba0srqvlw511mrn6z2g65a20hc3tn00\u0026ep=v1_stickers_search\u0026rid=giphy.gif\u0026ct=s\"\u003e Assignment 1\r\n\u003cul\u003e\r\n\u003cli\u003eThis assignment is mainly talking about using uniform quantizer and see the  affect of this quantizer on both uniform signal and non-uniform ones with  small modification on the quantizer\u003c/li\u003e\r\n\u003cli\u003e calculating the signal to noise ratio for each to compare results when different number of bits are used to transmit the signal which means a more or less resolution on transmitting\u003c/li\u003e\r\n\u003cli\u003e for the non-uniform signal we used smaller quantization \r\nsteps for smaller signal amplitudes this achieved through compressing \r\nthe signal using the μ-Law Companding Technique then applying uniform \r\nquantizer which is equivalent to non-uniform quantization\u003c/li\u003e\r\n\u003cli\u003eView \u003ca href=\"https://github.com/nouralmulhem/Communication_Assignments/tree/main/Assignment%201\"\u003eAssignment 1\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\r\n\u003ctable\u003e\r\n\u003cthead\u003e\r\n\u003cth\u003eTitle\u003c/th\u003e\r\n\u003cth\u003eImage\u003c/th\u003e\r\n\u003cth\u003eDescription\u003c/th\u003e\r\n\u003c/thead\u003e\r\n\u003ctr\u003e\r\n\u003ctd\u003eUniform Quantizer\u003c/td\u003e\r\n\u003ctd width=\"50%\"\u003e\u003cimg  src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/5c01f681-9211-4a73-ac15-2b358c524b71\"\u003e\u003c/td\u003e\r\n\u003ctd\u003eFunction is responsible to quantize and encode the transmitted \r\nsignal to a specific number of levels specified by the number of bits \r\nit takes so the block outputs the zero-based index of the associated \r\nregion\u003c/td\u003e\r\n\u003c/tr\u003e\r\n\u003ctr\u003e\r\n\u003ctd\u003eUniform De Quantizer\u003c/td\u003e\r\n\u003ctd width=\"50%\"\u003e\u003cimg  src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/92b4a97a-5e91-451c-8ab4-ad2446c52097\"\u003e\r\n\u003c/td\u003e\r\n\u003ctd\u003ewhich was mainly responsible to decode the quantized signal and get the range back to the originally transmitted signal using previously calculated delta and x_min values\u003c/td\u003e\r\n\u003c/tr\u003e\r\n\u003ctr\u003e\r\n\u003ctd\u003eQuantize Dequantize Ramp Signal\u003c/td\u003e\r\n\u003ctd width=\"50%\"\u003e\u003cimg  src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/4ecfbb9f-b59b-4255-a464-aaa616194494\"\u003e\u003cimg  src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/90319681-d33e-4b90-8de7-0113ac33df0c\"\u003e\u003c/td\u003e\r\n\u003ctd\u003e\r\n\r\n- Midrise Figure\r\n\r\n  The figure shows a ramp function (dashed) which values ranges from -6 to 6 and the output of the quantizer and dequantizer for this signal where we used the mid-rise staircase for transmitting and using number of bits = 3 which leads to have 8 levels of values. the origin lies in the middle of a raising part of the stair-case like graph.\r\n\r\n- Midtread Figure\r\n  This figure shows the same ramp function (dashed) but when we used the mid-tread staircase for transmitting the signal, as shown the origin lies in the middle of a tread of the stair-case like graph. \r\n\u003c/td\u003e\r\n\u003c/tr\u003e\r\n\u003ctr\u003e\r\n\u003ctd\u003eUniform Quantizer and De Quantizer on uniform random Signal\u003c/td\u003e\r\n\u003ctd width=\"50%\"\u003e\u003cimg  src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/90319681-d33e-4b90-8de7-0113ac33df0c\"\u003e\u003c/td\u003e\r\n\u003ctd\u003e\r\n\u003cul\u003e\r\n\u003cli\u003eThe signal-to-noise ratio (SNR) is one of the performance measures used to describe communication systems.\r\n\u003c/li\u003e\r\n\u003cli\u003eIn this particular figure we did generate a uniform random function and tried to transmit it at different number of levels to see the affect of quantizer and dequantizer on it.\r\n\u003c/li\u003e\r\n\u003c/ul\u003e\r\n\u003c/td\u003e\r\n\u003c/tr\u003e\r\n\u003ctr\u003e\r\n\u003ctd\u003eUniform Quantizer and De Quantizer on non-uniform random Signa\u003c/td\u003e\r\n\u003ctd width=\"50%\"\u003e\u003cimg  src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/488f63de-a58a-4c01-9099-f79ab5222ef4\"\u003e\u003c/td\u003e\r\n\u003ctd\u003e\r\n\u003cul\u003e\r\n\u003cli\u003e\r\nFor this figure we generated a non-uniform random function and tried the uniform quantizer on it and we discovered that for small number of bits we transmit at.\r\n\u003c/li\u003e\r\n\u003cli\u003eThe SNR value was less than expected and theoretically proved in equations as it is a uniform quantizer applied on a non-uniform signal, in the other hand at higher number of bits we can hardly see a difference.\r\n\u003c/li\u003e\r\n\u003c/ul\u003e\r\n\u003c/td\u003e\r\n\u003c/tr\u003e\r\n\u003ctr\u003e\r\n\u003ctd\u003eUsing a non-uniform 𝝁 law quantizer\u003c/td\u003e\r\n\u003ctd width=\"50%\"\u003e\u003cimg  src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/20d79f70-4e3d-4b4d-b250-72a878dae0e6\"\u003e\u003c/td\u003e\r\n\u003ctd\u003e\r\nFor this part we used non-uniform μ-Law quantizer for different μ-val using zero value for the μ means uniform quantizing the signal the blocks output exactly the same graph as last mentioned one and for different μ-values we could obviously see the difference between theoretically calculated SNR and experimentally calculated one\r\n\u003c/td\u003e\r\n\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\r\n\r\n\u003ca id = \"assignment2\"\u003e\u003c/a\u003e\r\n\r\n### \u003cimg align= \"center\" width=60px src=\"https://media2.giphy.com/media/3o3IJrFTTV6Vf8Mfgy/giphy.gif?cid=ecf05e471k7i9700r3t25juhe42xfdkg4qzmfd6wdgoupt6v\u0026ep=v1_stickers_search\u0026rid=giphy.gif\u0026ct=s\"\u003e Assignment 2\r\n\u003cdiv align=\"center\"\u003e\r\n\u003cimg height=500px src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/00828815-c7cd-4f92-841f-592f20bd8d4c\"\u003e\r\n\u003c/div\u003e\r\n\r\nView \u003ca href=\"https://github.com/nouralmulhem/Communication_Assignments/tree/main/Assignment%202\"\u003eAssignment 2\u003c/a\u003e\r\n\u003cbr\u003e\r\n\r\nPlot the output of the receive filter for the three mentioned cases \r\nFor input: 0011000011\r\n\u003cbr\u003e\r\n\u003cdiv align=\"center\"\u003e\u003cimg height=\"220px\" width=\"30%\" src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/793783cf-a554-46a6-9d55-ff7268937efe\"\u003e\r\n\u003cimg width=\"30%\"  height=\"220px\" src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/ecd78784-bc65-457d-9098-d8d2fded7cbd\"\u003e\r\n\u003cimg width=\"30%\" height=\"220px\" src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/87c21840-d5d1-4b2d-a6da-b0c89cf8e711\"\u003e\r\n\u003c/div\u003e\r\n\u003cbr\u003e\r\n\u003ctable\u003e\r\n\u003cthead\u003e\r\n\u003cth\u003eDescription\u003c/th\u003e\r\n\u003cth\u003eImage\u003c/th\u003e\r\n\u003c/thead\u003e\r\n\u003ctr\u003e\r\n\u003ctd\u003eOn the same figure, plot the theoretical and simulated Bit Error Rate (BER) Vs E/𝑵𝒐 (where E is the average symbol energy) for the three mentioned cases. Take E/No to be in the range -10 dB: 20:dB. (Use a semilogy plot) \r\n\u003c/td\u003e\r\n\u003ctd width=\"40%\"\u003e\u003cimg  src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/088ab469-5d15-4e77-ac62-1fb623b8bc21\"\u003e\r\n\u003c/td\u003e\r\n\r\n\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\r\n\u003ca id = \"assignment3\"\u003e\u003c/a\u003e\r\n\r\n### \u003cimg align= \"center\" width=60px src=\"https://media1.giphy.com/media/v1.Y2lkPTc5MGI3NjExM3dxeHRrZGUzZW9kZzB2aDVjZjlqaG04OTFucm9oZDA5azBlODYxYyZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9cw/Lrge8fr6HFydZqahbw/giphy.gif\"\u003e Assignment 3\r\n\r\n  Gram-Schmidt orthogonalization is a mathematical procedure that takes a set of linearly independent vectors and constructs an orthogonal or orthonormal set of vectors that span the same subspace. It is commonly used in linear algebra and signal processing.\r\n\r\n  View \u003ca href=\"https://github.com/nouralmulhem/Communication_Assignments/tree/main/Assignment%203\"\u003eAssignment 3\u003c/a\u003e\r\n\r\n\u003ctable\u003e\r\n\u003ctr\u003e\r\n\u003ctd  width=\"50%\"\u003e\r\n\u003cimg src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/70ebb47c-23de-4971-8bf6-1a80ccf94887\" \u003e\r\n\u003c/td\u003e\r\n\u003ctd  width=\"50%\"\u003e\r\n\u003cimg src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/905d7979-e1a0-48c9-b34e-43469bb6cd98\" \u003e\r\n\u003c/td\u003e\r\n\r\n\u003c/tr\u003e\r\n\r\n\u003c/table\u003e\r\n\r\n\r\n\u003ctable\u003e\r\n\u003cthead\u003e\r\n\u003cth\u003eDescription\u003c/th\u003e\r\n\u003cth\u003eImage\u003c/th\u003e\r\n\u003c/thead\u003e\r\n\u003ctr\u003e\r\n\u003ctd\u003eΦ1 VS time after using the GM_Bases function\u003c/td\u003e\r\n\u003ctd  width=\"40%\"\u003e\r\n\u003cimg src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/7718f5e6-4368-41ec-8178-f4ff8e2fb13d\"\u003e\r\n\u003c/td\u003e\r\n\u003c/tr\u003e\r\n\u003ctr\u003e\r\n\u003ctd\u003eΦ2 VS time after using the GM_Bases function\u003c/td\u003e\r\n\u003ctd  width=\"40%\"\u003e\u003cimg src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/1181b03a-a42c-431d-a12c-c70f1b0a8605\"\u003e\u003c/td\u003e\r\n\u003c/tr\u003e\r\n\u003ctr\u003e\r\n\u003ctd\u003eSignal Space representation of signals s1,s2\u003c/td\u003e\r\n\u003ctd  width=\"40%\"\u003e\u003cimg src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/ad16f1a3-bfd1-420b-9bde-e8876c128bc2\"\u003e\u003c/td\u003e\r\n\u003c/tr\u003e\r\n\u003ctr\u003e\r\n\u003ctd\u003eSignal Space representation of signals s1,s2 with E/σ¬2 =10dB\u003c/td\u003e\r\n\u003ctd  width=\"40%\"\u003e\u003cimg src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/0ed2d44a-1417-4f60-8912-d118382588b1\"\u003e\u003c/td\u003e\r\n\u003c/tr\u003e\r\n\u003ctr\u003e\r\n\u003ctd\u003eSignal Space representation of signals s1,s2 with E/σ¬2 =0dB\u003c/td\u003e\r\n\u003ctd  width=\"40%\"\u003e\u003cimg src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/57272a81-3e8f-41d9-8669-6dcd0ab637d5\"\u003e\u003c/td\u003e\r\n\u003c/tr\u003e\r\n\u003ctr\u003e\r\n\u003ctd\u003eSignal Space representation of signals s1,s2 with E/σ¬2 =-5dB\u003c/td\u003e\r\n\u003ctd  width=\"40%\"\u003e\u003cimg src=\"https://github.com/EslamAsHhraf/Hand-Gesture-Recognition/assets/71986226/155d8d47-7482-415e-bad3-01f7aebcc642\"\u003e\u003c/td\u003e\r\n\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\r\n\u003chr style=\"background-color: #4b4c60\"\u003e\u003c/hr\u003e\r\n\u003ca id =\"contributors\"\u003e\u003c/a\u003e\r\n\r\n## \u003cimg  align=\"center\" width= 70px height =55px src=\"https://media0.giphy.com/media/Xy702eMOiGGPzk4Zkd/giphy.gif?cid=ecf05e475vmf48k83bvzye3w2m2xl03iyem3tkuw2krpkb7k\u0026rid=giphy.gif\u0026ct=s\"\u003e Contributors \r\n\r\n\u003ctable  \u003e\r\n  \u003ctr\u003e\r\n      \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/nouralmulhem\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/76218033?v=4\" width=\"150px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eNour Ziad Almulhem\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003c/td\u003e\r\n      \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/EslamAsHhraf\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/71986226?v=4\" width=\"150;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eEslam Ashraf\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003c/td\u003e\r\n  \u003c/tr\u003e\r\n\u003c/table\u003e\r\n\r\n## 🔒 License \u003ca id =\"license\"\u003e\u003c/a\u003e\r\n\r\n\u003eThis software is licensed under MIT License, See [License](https://github.com/nouralmulhem/Communication_Assignments/blob/main/LICENSE) for more information ©Nour.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnouralmulhem%2Fcommunication_assignments","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnouralmulhem%2Fcommunication_assignments","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnouralmulhem%2Fcommunication_assignments/lists"}