{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":405354358,"defaultBranch":"master","name":"KCT_cbct","ownerLogin":"kulvait","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2021-09-11T10:55:31.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/2242196?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1649081321.96192","currentOid":""},"activityList":{"items":[{"before":"eed515d6942df1783d8c4afe70aa23552ccf8beb","after":"106b430876fb672746eee83fd4d15c1e55ec5c86","ref":"refs/heads/master","pushedAt":"2024-08-18T10:36:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"Slight cmake update\n\nServer upgrade fix","shortMessageHtmlLink":"Slight cmake update"}},{"before":"bc20635633b42bdb28359db67ec87beba316b224","after":"eed515d6942df1783d8c4afe70aa23552ccf8beb","ref":"refs/heads/master","pushedAt":"2024-06-10T11:45:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"Improvement: kct-pb2d-krylov parsing left preconditioner vector\n\nCheck dimensions\nIf the zdim is 1, treat it as if it is the same for each projection","shortMessageHtmlLink":"Improvement: kct-pb2d-krylov parsing left preconditioner vector"}},{"before":"8a0d8863621eea18c00f89a6182f2933dac11b42","after":"bc20635633b42bdb28359db67ec87beba316b224","ref":"refs/heads/master","pushedAt":"2024-06-07T13:58:18.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"FIX: kct-pb2d-krylov --weights-wls\n\nFix of CGLSPBCT2DReconstructor::reconstructWLS and\nCGLSPBCT2DReconstructor::reconstructTikhonov\n\nIn function reconstructTikhonov without initialization of the Tikhonv\nthere was an issue with uninitialized variables. And then it failed on\ncall to reconstructWLS","shortMessageHtmlLink":"FIX: kct-pb2d-krylov --weights-wls"}},{"before":"596cbf0c31761a9ade4850b62b11c7c273949437","after":"8a0d8863621eea18c00f89a6182f2933dac11b42","ref":"refs/heads/master","pushedAt":"2024-06-07T10:30:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"Describing Tikhonov regularization\n\nDocumentation of the single function in CGLSPBCT2DReconstructor\n\n * Tikhonov regularized tomographic reconstruction using CGLS. Sometimes the problem is also\n * referred as ridge regression, see https://en.wikipedia.org/wiki/Ridge_regression\n *\n * This procedure can be used also for preconditioning. In this case we compute the problem with\n * two diagonal matrices C and W.\n *\n *\n * @param maxIterations\n * @param errCondition\n * @param invCpr_xbuf Right preconditioner.\n * @param leftPreconditioner_bbuf Left preconditioner W. We are solving min_x || W (b - Ax)||^2,\n * wehre W is the diagonal matrix constructed out of left preconditioner. In weighted least\n * squares, this matrix is often named W^{1/2} and can represent the reciprocal of the standard\n * deviation of the measurements. In the out of center scan, it can be also used as square root\n * of the ray weight, reciprocal of the number of measurements for given ray. In SIRT, the\n * weighting scheme is chosen such that W is the square root of the row sums of the system\n * matrix, this scheme is adapted for CGLS in function reconstructSumPreconditioning.\n *","shortMessageHtmlLink":"Describing Tikhonov regularization"}},{"before":"9fa792149876954ac6f4dd1d140d56fea51da5bc","after":"596cbf0c31761a9ade4850b62b11c7c273949437","ref":"refs/heads/master","pushedAt":"2024-06-07T09:43:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"Explicit implementation of weighted least squares for CGLS in kct-pb2d-krylov\n\nSpecifying --weights-wls user can insert weights projection file or left\npreconditioning vector.","shortMessageHtmlLink":"Explicit implementation of weighted least squares for CGLS in kct-pb2…"}},{"before":"5b5bc557ce8036614f7d53ececb8ae5f90b6e616","after":"9fa792149876954ac6f4dd1d140d56fea51da5bc","ref":"refs/heads/master","pushedAt":"2024-04-15T15:00:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"Backprojector scaling\n\n-implemented fbp like scaling for backprojector and correctly\nbackprojected data\n-only in kct-pb2d-backprojector","shortMessageHtmlLink":"Backprojector scaling"}},{"before":"9425e90542092ed8c73091dd2ef12e568dae6c82","after":"5b5bc557ce8036614f7d53ececb8ae5f90b6e616","ref":"refs/heads/master","pushedAt":"2024-04-05T09:39:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"kct-pb2d-backprojector --backprojector-natural-scaling\n\nEspecially for FBP we do not have backprojector as simple AT operator\nbut there is an additional scaling factor by pi/(anglecount*pdimx) for\nconvenience there is a switch to apply this factor to kct-pb2d-backprojector\nFor this logic to work there is additional scaling factor parameter,\nwchich defaults to 1.0f added to BasePBCTOperator and BasePBCT2DOperator\nproject and backproject methods. CArmArguments was updated and special\nfunction addBackprojectorArgs() added to insert switch for this\nfunctionality.","shortMessageHtmlLink":"kct-pb2d-backprojector --backprojector-natural-scaling"}},{"before":"9a67e76be7efc1ad9e531a0b59fa5a6c0a183e53","after":"9425e90542092ed8c73091dd2ef12e568dae6c82","ref":"refs/heads/master","pushedAt":"2024-03-15T16:13:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"kct-pb2d-backprojector\n\nImplementation of backprojector for 2D parallel beam geometry.","shortMessageHtmlLink":"kct-pb2d-backprojector"}},{"before":"bd7a7c5ab4a8bc5375511eb17f1b6136e0fb45b2","after":"9a67e76be7efc1ad9e531a0b59fa5a6c0a183e53","ref":"refs/heads/master","pushedAt":"2024-03-15T14:14:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"Right and left preconditioning of CGLS by diagonal preconditioners\n\nImplemented to test SART like preconditioning on the convergence of\nCGLS for 2D PBCT geometry. The same code possible for other geoms.","shortMessageHtmlLink":"Right and left preconditioning of CGLS by diagonal preconditioners"}},{"before":"8f2b29cfd932440da37c542f1ef20100ede9f922","after":"bd7a7c5ab4a8bc5375511eb17f1b6136e0fb45b2","ref":"refs/heads/master","pushedAt":"2024-03-06T11:10:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"FIX: kct-pb2d-krylov --barrier --gradient-2d --tikhonov-lambda-v2 0.0001\n\nLocalNDRange of projector was used to compute gradients which in turn\nled to error, because projector has 2D LocalNDRange but gradient\ncomputation needs 3D. Fix is to pass cl:NullRange to gradient\n\nThis affects only this specific Tikhonov regularization and it was not\ngeneral problem with reconstruction.","shortMessageHtmlLink":"FIX: kct-pb2d-krylov --barrier --gradient-2d --tikhonov-lambda-v2 0.0001"}},{"before":"1ca81e1c62ff55f0d4237691a66162f8bfdb8266","after":"8f2b29cfd932440da37c542f1ef20100ede9f922","ref":"refs/heads/master","pushedAt":"2024-03-04T13:26:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"Speed optimization of pbct2d_cvp_barrier","shortMessageHtmlLink":"Speed optimization of pbct2d_cvp_barrier"}},{"before":"ecd47eb09cb0d74a2548b6b847acd4f67eafacab","after":"1ca81e1c62ff55f0d4237691a66162f8bfdb8266","ref":"refs/heads/master","pushedAt":"2024-03-01T16:46:23.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"Major code remake for local NDRange parsing\n\nOpenCl kernel needs to supply local NDRange controlling partitioning\nIn projectors, especially barrier implementation this setting might have\ntremendous impact on performance.\nOn each device there is maximum admissible size of workers in one\nworking group. So this parameter needs to be checked againts it.\nProjector and reconstructor might use the same setting but it was\npreviously in each class.\nNew classes in NDRange folder to provide this logic.\nSetting reasonable defaults for kct-pb and kct-pb2d\nCBCT is yet to be fully change.","shortMessageHtmlLink":"Major code remake for local NDRange parsing"}},{"before":"73c7020cd69dff3adf6c3b5c63b9bf152750c56d","after":"ecd47eb09cb0d74a2548b6b847acd4f67eafacab","ref":"refs/heads/master","pushedAt":"2024-03-01T09:56:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"New logic of LocalNDRange for kct-pb*\n\nInitialized by initializeOpenCL so that it can be checked against max\nworkgroup size of particular device.","shortMessageHtmlLink":"New logic of LocalNDRange for kct-pb*"}},{"before":"50602e80eccb9b763499beed7c5583b841c36f08","after":"73c7020cd69dff3adf6c3b5c63b9bf152750c56d","ref":"refs/heads/master","pushedAt":"2024-02-29T15:34:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"Barrier implementation of kct-pb2d-krylov and multiple fixes\n\n*Basic tuning of the local array size\nCArmArguments::parsePlatformString now returns CL_DEVICE_LOCAL_MEM_SIZE\nof selected devices, minimum of these values.\nBased on this information is LOCALARRAYSIZE set\n\n*Guess of\nBasePBCT2DOperator::guessBackprojectorLocalNDRange\nBasePBCT2DOperator::guessProjectionLocalNDRange\nBasePBCTOperator::guessBackprojectorLocalNDRange\nBasePBCTOperator::guessProjectionLocalNDRange\nThey were improved\n\n*CTIOL update","shortMessageHtmlLink":"Barrier implementation of kct-pb2d-krylov and multiple fixes"}},{"before":"af46998ef74bf4080180f483161d35e8689c1f1b","after":"50602e80eccb9b763499beed7c5583b841c36f08","ref":"refs/heads/master","pushedAt":"2024-02-27T14:41:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"FIX reporting","shortMessageHtmlLink":"FIX reporting"}},{"before":"43246e94a4d056c2101d02ab1435f49bbf39eed6","after":"af46998ef74bf4080180f483161d35e8689c1f1b","ref":"refs/heads/master","pushedAt":"2024-02-27T14:33:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"kct-pb2d-krylov\n\nWorking implementation with non barrier CVP projector","shortMessageHtmlLink":"kct-pb2d-krylov"}},{"before":"0a83f3c1ff0969215340535f1915a2d36b2368e5","after":"43246e94a4d056c2101d02ab1435f49bbf39eed6","ref":"refs/heads/master","pushedAt":"2024-02-26T14:14:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"pbct2d_cvp\n\nDebugging and developping projector/backprojector for 2D parallel beam\ngeometry.","shortMessageHtmlLink":"pbct2d_cvp"}},{"before":"dea24917f747d3648d9e26b09d37b0db7f19f717","after":"0a83f3c1ff0969215340535f1915a2d36b2368e5","ref":"refs/heads/master","pushedAt":"2024-02-23T10:39:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"CTMAL and CTIOL libraries update","shortMessageHtmlLink":"CTMAL and CTIOL libraries update"}},{"before":"530543b818fb3fb628740e8e14ecc0ad180ff5ff","after":"dea24917f747d3648d9e26b09d37b0db7f19f717","ref":"refs/heads/master","pushedAt":"2023-08-03T11:16:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"FIX regex parsing","shortMessageHtmlLink":"FIX regex parsing"}},{"before":"dc794a3f7ea02d3de1260566410363bce3b433c4","after":"530543b818fb3fb628740e8e14ecc0ad180ff5ff","ref":"refs/heads/master","pushedAt":"2023-08-03T10:27:41.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"Debian 12 compatibility\n\n* OpenCL version set to 2.2 globally\n* Catch2 updated","shortMessageHtmlLink":"Debian 12 compatibility"}},{"before":"4f89118513346f6a1b90a0b865ad077a1ffb9aca","after":"dc794a3f7ea02d3de1260566410363bce3b433c4","ref":"refs/heads/master","pushedAt":"2023-07-13T13:32:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kulvait","name":"Vojtěch Kulvait","path":"/kulvait","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2242196?s=80&v=4"},"commit":{"message":"PartialPBCTOperator and PartialPBCT2DOperator\n\nMajor new functionality that is not yet fully tested and might break\nsome previous code. In problems try to downgrade to 8edcc\n\nThis commit introcudes new program kct-pb-projector which is able to\nproject large volumes, which does not fit into memory be means of PBCT\nprojector\n\nThe logic of the whole package was altered and this commit also provide\nsome fixes to previous commits","shortMessageHtmlLink":"PartialPBCTOperator and PartialPBCT2DOperator"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOC0xOFQxMDozNjo1MC4wMDAwMDBazwAAAASdOgEV","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOC0xOFQxMDozNjo1MC4wMDAwMDBazwAAAASdOgEV","endCursor":"Y3Vyc29yOnYyOpK7MjAyMy0wNy0xM1QxMzozMjoyNC4wMDAwMDBazwAAAANU3cZP"}},"title":"Activity · kulvait/KCT_cbct"}