{"action":"created","issue":{"url":"https://api.github.com/repos/neurosynth/nsviewer/issues/25","labels_url":"https://api.github.com/repos/neurosynth/nsviewer/issues/25/labels{/name}","comments_url":"https://api.github.com/repos/neurosynth/nsviewer/issues/25/comments","events_url":"https://api.github.com/repos/neurosynth/nsviewer/issues/25/events","html_url":"https://github.com/neurosynth/nsviewer/issues/25","id":104751550,"number":25,"title":"Possibly switch to custom nifti reader","user":{"login":"njvack","id":169598,"avatar_url":"https://avatars.githubusercontent.com/u/169598?v=3","gravatar_id":"","url":"https://api.github.com/users/njvack","html_url":"https://github.com/njvack","followers_url":"https://api.github.com/users/njvack/followers","following_url":"https://api.github.com/users/njvack/following{/other_user}","gists_url":"https://api.github.com/users/njvack/gists{/gist_id}","starred_url":"https://api.github.com/users/njvack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/njvack/subscriptions","organizations_url":"https://api.github.com/users/njvack/orgs","repos_url":"https://api.github.com/users/njvack/repos","events_url":"https://api.github.com/users/njvack/events{/privacy}","received_events_url":"https://api.github.com/users/njvack/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/neurosynth/nsviewer/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-09-03T18:07:20Z","updated_at":"2015-09-03T19:27:53Z","closed_at":null,"body":"Hi there,\r\n\r\nSo, for a variety of reasons, I fooled around with creating a custom nifti1 reader in javascript, and made something that actually works, and a toy viewer to go along with it. Here's a demo:\r\n\r\nhttp://njvack.github.io/jsnifti\r\n\r\n... and the source:\r\n\r\nhttps://github.com/njvack/jsnifti\r\n\r\nIt's small (minified and gzipped, the reader is about 19k) and fast -- parsing the structural image from the [NIH test dataset](http://nifti.nimh.nih.gov/nifti-1/data) takes about 20ms on Chrome/my 5-year-old Air if the file's endianness matches, and 500ms if it doesn't.\r\n\r\nAll the header fields are included (yay jBinary), and getting slices is easy (#ras_slice). Slicing and rendering in the (broken, unoptimized!) toy viewer is insanely fast (about 3ms/frame).\r\n\r\nIt's still missing some features (most notably, converting ijk <-> ras coordinates) but that shouldn't be too hard to add.\r\n\r\nAnyhow! We may wind up using this internally, but it also might be useful for you."},"comment":{"url":"https://api.github.com/repos/neurosynth/nsviewer/issues/comments/137549030","html_url":"https://github.com/neurosynth/nsviewer/issues/25#issuecomment-137549030","issue_url":"https://api.github.com/repos/neurosynth/nsviewer/issues/25","id":137549030,"user":{"login":"tyarkoni","id":303932,"avatar_url":"https://avatars.githubusercontent.com/u/303932?v=3","gravatar_id":"","url":"https://api.github.com/users/tyarkoni","html_url":"https://github.com/tyarkoni","followers_url":"https://api.github.com/users/tyarkoni/followers","following_url":"https://api.github.com/users/tyarkoni/following{/other_user}","gists_url":"https://api.github.com/users/tyarkoni/gists{/gist_id}","starred_url":"https://api.github.com/users/tyarkoni/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tyarkoni/subscriptions","organizations_url":"https://api.github.com/users/tyarkoni/orgs","repos_url":"https://api.github.com/users/tyarkoni/repos","events_url":"https://api.github.com/users/tyarkoni/events{/privacy}","received_events_url":"https://api.github.com/users/tyarkoni/received_events","type":"User","site_admin":false},"created_at":"2015-09-03T19:27:53Z","updated_at":"2015-09-03T19:27:53Z","body":"Ooh, this looks great! In principle I would love to use it instead of the xtk reader. It's just a matter of finding the time to work through the code and figure out how to integrate it. Probably won't happen in the next month or two (grant deadlines), but maybe in November. If you have a chance to write a README on usage and data structure, that will probably speed things along. I'm excited about this!\r\n\r\nI've also been contemplating a complete re-write of the UI in React or something similar, so that might be a good time to switch to jsnifti..."}}