{"id":16139536,"url":"https://github.com/bergercookie/spermproject_server","last_synced_at":"2026-01-20T21:32:34.467Z","repository":{"id":78140211,"uuid":"49436927","full_name":"bergercookie/SpermProject_server","owner":"bergercookie","description":"Server side of the SpermProject - Communication modules and Image analysis algorithms","archived":false,"fork":false,"pushed_at":"2016-05-15T11:21:39.000Z","size":1823,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-06T17:52:00.271Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Matlab","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bergercookie.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":"2016-01-11T15:56:09.000Z","updated_at":"2016-03-16T21:11:34.000Z","dependencies_parsed_at":"2023-02-27T10:00:36.465Z","dependency_job_id":null,"html_url":"https://github.com/bergercookie/SpermProject_server","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/bergercookie/SpermProject_server","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bergercookie%2FSpermProject_server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bergercookie%2FSpermProject_server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bergercookie%2FSpermProject_server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bergercookie%2FSpermProject_server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bergercookie","download_url":"https://codeload.github.com/bergercookie/SpermProject_server/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bergercookie%2FSpermProject_server/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28614590,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-20T18:56:40.769Z","status":"ssl_error","status_checked_at":"2026-01-20T18:54:26.653Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":[],"created_at":"2024-10-09T23:49:16.796Z","updated_at":"2026-01-20T21:32:34.451Z","avatar_url":"https://github.com/bergercookie.png","language":"Matlab","funding_links":[],"categories":[],"sub_categories":[],"readme":"SpermProject - Server Side\n==========================\n\nThe repository consists of the server side communication modules as well as the\nimage processing algorithms used to compute the specifications of a given sperm\nsample video.\n\n* The server-side communication is written in *Python*. The goal of the module\n    is to make a TCP connection with the Java client running on the Android\n    device, receive the video and pass execution to the image processing\n    algorithms. The communcation steps are listed below:\n\n    + It first listens to a predefined Ip/port pair for connections\n    + After the connection has succeeded it receives a video. \n    + Decodes the received file using base64 binary decoding\n    + Places the output mp4 file in a predefined directory (videos_in/ready/). \n    It then blocks for the image processing algorithm to finish processing.\n    This id implemented by  continuously checking for added files in another\n    predefined directory (results_out/ready/).\n\n* Due to its versatility and ease in writing boilerplate code, the initial\nversion of the image processing algorithm which is to run on the server is\ncoded in *MATLAB*. The steps followed can be summarised below:\n\n    + As with the Python server (after receiving the content) the\n    MATLAB node blocks for modified content in the videos_in/ready/ directory (by\n    running the watchDog_dir.m module). \n    + After the video has been moved to the specified folder by the Python\n    server, the image processing part calculates the sperm specifications both for\n    the total spermatozoa population of the sample and for its mobility. See the\n    countingSperms.m and multipleObjectTracking.m modules for their corresponding\n    implementations.\n\nFor more information on the overall project, visit the \n[project webpage](http://biotech-ntua.wikispaces.com/Project_20152016_Spermodiagram).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbergercookie%2Fspermproject_server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbergercookie%2Fspermproject_server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbergercookie%2Fspermproject_server/lists"}