Kaleem Siddiqi

161 papers A* 20A 7B 4Misc 1Journal 64Unranked 58
YearRankTypeTitle / Venue / Authors
2025 J jnl
IEEE Trans. Robotics
Trevor Ablett, Oliver Limoyo, Adam Sigal, Affan Jilani, Jonathan Kelly, Kaleem Siddiqi, Francois Robert Hogan, Gregory Dudek
2025 conf
FIMH (2)
Tabish A. Syed, Sophie Ellwood, Drisya Dileep, S. Subha, Minhajuddin Sirajuddin, Kaleem Siddiqi
2025 J jnl
IEEE Robotics Autom. Lett.
Affan Jilani, François Robert Hogan, Charlotte Morissette, Gregory Dudek, Michael Jenkin, Kaleem Siddiqi
2024 A* conf
ICLR
Arnab Kumar Mondal, Siba Smarak Panigrahi, Sai Rajeswar, Kaleem Siddiqi, Siamak Ravanbakhsh
2024 conf
ROBOVIS
Michael Jenkin, Francois Robert Hogan, Kaleem Siddiqi, Jean-François Tremblay, Bobak H. Baghi, Gregory Dudek
2024 J jnl
IEEE Trans. Pattern Anal. Mach. Intell.
Morteza Rezanejad, John Wilder, Dirk B. Walther, Allan D. Jepson, Sven J. Dickinson, Kaleem Siddiqi
2023 J jnl
CoRR
Arnab Kumar Mondal, Siba Smarak Panigrahi, Sai Rajeswar, Kaleem Siddiqi, Siamak Ravanbakhsh
2023 J jnl
CoRR
Mohammad Khodadad, Morteza Rezanejad, Ali Shiraee Kasmaee, Kaleem Siddiqi, Dirk B. Walther, Hamidreza Mahyar
2023 J jnl
CoRR
Trevor Ablett, Oliver Limoyo, Adam Sigal, Affan Jilani, Jonathan Kelly, Kaleem Siddiqi, Francois Robert Hogan, Gregory Dudek
2023 conf
FIMH
Tabish A. Syed, Yanan Wang, Drisya Dileep, Minhajuddin Sirajuddin, Kaleem Siddiqi
2022 J jnl
Frontiers Comput. Sci.
Paul Lukowicz, Anton Nijholt, Kaleem Siddiqi, Marcello Pelillo, Kristof Van Laerhoven, Luca Viganò, Nicola Zannone
2022 A* conf
ICML
Arnab Kumar Mondal, Vineet Jain, Kaleem Siddiqi, Siamak Ravanbakhsh
2022 J jnl
IEEE Robotics Autom. Lett.
François Robert Hogan, Jean-François Tremblay, Bobak H. Baghi, Michael Jenkin, Kaleem Siddiqi, Gregory Dudek
2022 A* conf
CVPR
Morteza Rezanejad, Mohammad Khodadad, Hamidreza Mahyar, Herve Lombaert, Michael Gruninger, Dirk B. Walther, Kaleem Siddiqi
2021 J jnl
CoRR
Morteza Rezanejad, Babak Samari, Elham Karimi, Ioannis M. Rekleitis, Gregory Dudek, Kaleem Siddiqi
2021 J jnl
Int. J. Comput. Vis.
Yongchao Xu, Yukang Wang, Stavros Tsogkas, Jianqiang Wan, Xiang Bai, Sven J. Dickinson, Kaleem Siddiqi
2021 J jnl
CoRR
Pascal Bohleber, Marco Roman, Carlo Barbante, Sebastiano Vascon, Kaleem Siddiqi, Marcello Pelillo
2021 J jnl
Frontiers Comput. Sci.
Pascal Bohleber, Marco Roman, Carlo Barbante, Sebastiano Vascon, Kaleem Siddiqi, Marcello Pelillo
2021 J jnl
CoRR
Morteza Rezanejad, Mohammad Khodadad, Hamidreza Mahyar, Herve Lombaert, Michael Gruninger, Dirk B. Walther, Kaleem Siddiqi
2021 A conf
BMVC
Arnab Kumar Mondal, Vineet Jain, Kaleem Siddiqi
2021 J jnl
CoRR
Arnab Kumar Mondal, Vineet Jain, Kaleem Siddiqi
2021 J jnl
Frontiers Comput. Sci.
Pulkit Khandelwal, D. Louis Collins, Kaleem Siddiqi
2020 A* conf
CVPR
Chu Wang, Babak Samari, Vladimir G. Kim, Siddhartha Chaudhuri, Kaleem Siddiqi
2020 J jnl
CoRR
Chu Wang, Babak Samari, Vladimir G. Kim, Siddhartha Chaudhuri, Kaleem Siddiqi
2020 A* conf
CVPR
Charles-Olivier Dufresne Camaro, Morteza Rezanejad, Stavros Tsogkas, Kaleem Siddiqi, Sven J. Dickinson
2020 J jnl
CoRR
Charles-Olivier Dufresne Camaro, Morteza Rezanejad, Stavros Tsogkas, Kaleem Siddiqi, Sven J. Dickinson
2020 J jnl
CoRR
Arnab Kumar Mondal, Pratheeksha Nair, Kaleem Siddiqi
2019 A* conf
CVPR
Yukang Wang, Yongchao Xu, Stavros Tsogkas, Xiang Bai, Sven J. Dickinson, Kaleem Siddiqi
2019 J jnl
CoRR
Chu Wang, Marcello Pelillo, Kaleem Siddiqi
2019 J jnl
CoRR
Chu Wang, Babak Samari, Vladimir G. Kim, Siddhartha Chaudhuri, Kaleem Siddiqi
2019 conf
IPMI
Babak Samari, Tabish A. Syed, Kaleem Siddiqi
2019 A* conf
CVPR
Morteza Rezanejad, Gabriel Downs, John Wilder, Dirk B. Walther, Allan D. Jepson, Sven J. Dickinson, Kaleem Siddiqi
2019 J jnl
Pattern Recognit.
Kuldeep Kumar, Kaleem Siddiqi, Christian Desrosiers
2018 J jnl
CoRR
Yukang Wang, Yongchao Xu, Stavros Tsogkas, Xiang Bai, Sven J. Dickinson, Kaleem Siddiqi
2018 conf
STACOM@MICCAI
Tabish A. Syed, Babak Samari, Kaleem Siddiqi
2018 conf
ECCV (4)
Chu Wang, Babak Samari, Kaleem Siddiqi
2018 J jnl
CoRR
Chu Wang, Babak Samari, Kaleem Siddiqi
2018 J jnl
CoRR
Morteza Rezanejad, Gabriel Downs, John Wilder, Dirk B. Walther, Allan D. Jepson, Sven J. Dickinson, Kaleem Siddiqi
2018 J jnl
IEEE J. Biomed. Health Informatics
Avan Suinesiaputra, Pierre Ablin, Xènia Albà, Martino Alessandrini, Jack Allen, Wenjia Bai, Serkan Çimen, Peter Claes, Brett R. Cowan, Jan D'hooge, Nicolas Duchateau, Jan Ehrhardt, Alejandro F. Frangi, Ali Gooya, Vicente Grau, Karim Lekadir, Allen Lu, Anirban Mukhopadhyay, Ilkay Öksüz, Nripesh Parajuli, Xavier Pennec, Marco Pereañez, Catarina Pinto, Paolo Piras, Marc-Michel Rohé, Daniel Rueckert, Dennis Säring, Maxime Sermesant, Kaleem Siddiqi, Mahdi Tabassian, Luciano Teresi, Sotirios A. Tsaftaris, Matthias Wilms, Alistair A. Young, Xingyu Zhang, Pau Medrano-Gracia
2018 J jnl
CoRR
Kuldeep Kumar, Kaleem Siddiqi, Christian Desrosiers
2017 conf
FIMH
Babak Samari, Tristan Aumentado-Armstrong, Gustav J. Strijkers, Martijn Froeling, Kaleem Siddiqi
2017 conf
MICCAI (1)
Babak Samari, Tristan Aumentado-Armstrong, Gustav J. Strijkers, Martijn Froeling, Kaleem Siddiqi
2017 A conf
BMVC
Chu Wang, Marcello Pelillo, Kaleem Siddiqi
2017 J jnl
NeuroImage
Kuldeep Kumar, Christian Desrosiers, Kaleem Siddiqi, Olivier Colliot, Matthew Toews
2017 J jnl
Comput. Graph. Forum
Tristan Aumentado-Armstrong, Kaleem Siddiqi
2017 B conf
Image Processing
Sungmin Hong, James Fishbaugh, Morteza Rezanejad, Kaleem Siddiqi, Hans J. Johnson, Jane S. Paulsen, Eun Young Kim, Guido Gerig
2016 conf
STACOM@MICCAI
Damien Goblot, Mihaela Pop, Kaleem Siddiqi
2016 conf
CVPR Workshops
Chu Wang, Kaleem Siddiqi
2015 conf
MLMI
Kuldeep Kumar, Christian Desrosiers, Kaleem Siddiqi
2015 conf
STACOM@MICCAI
Pierre Ablin, Kaleem Siddiqi
2015 J jnl
IEEE Trans. Pattern Anal. Mach. Intell.
Emmanuel Piuze, Jon Sporring, Kaleem Siddiqi
2015 conf
IPMI
Emmanuel Piuze, Jon Sporring, Kaleem Siddiqi
2015 A conf
IROS
Morteza Rezanejad, Babak Samari, Ioannis M. Rekleitis, Kaleem Siddiqi, Gregory Dudek
2015 conf
CRV
Sricharana Rajagopal, Kaleem Siddiqi
2015 J jnl
Frontiers ICT
Morteza Rezanejad, Kaleem Siddiqi
2014 conf
STACOM
Arthur Mensch, Emmanuel Piuze, Lucas Lehnert, Adrianus J. Bakermans, Jon Sporring, Gustav J. Strijkers, Kaleem Siddiqi
2014 ch.
Computer Vision, A Reference Guide
Sven J. Dickinson, Ali Shokoufandeh, Kaleem Siddiqi
2013 J jnl
IEEE Trans. Pattern Anal. Mach. Intell.
Parya MomayyezSiahkal, Kaleem Siddiqi
2013 conf
MICCAI (2)
Marie Bieth, Herve Lombaert, Andrew J. Reader, Kaleem Siddiqi
2013 conf
FIMH
Emmanuel Piuze, Herve Lombaert, Jon Sporring, Gustav J. Strijkers, Adrianus J. Bakermans, Kaleem Siddiqi
2013 conf
MICCAI (2)
Emmanuel Piuze, Herve Lombaert, Jon Sporring, Kaleem Siddiqi
2013 conf
IPMI
Herve Lombaert, Jon Sporring, Kaleem Siddiqi
2013 ch.
Shape Perception in Human and Computer Vision
Morteza Rezanejad, Kaleem Siddiqi
2013 conf
IPMI
Emmanuel Piuze, Jon Sporring, Kaleem Siddiqi
2012 J jnl
IEEE Trans. Pattern Anal. Mach. Intell.
Svetlana Stolpner, Paul G. Kry, Kaleem Siddiqi
2011 conf
IPMI
Maxime Boucher, Alan C. Evans, Kaleem Siddiqi
2011 conf
MICCAI (2)
Haz-Edine Assemlal, Jennifer S. W. Campbell, G. Bruce Pike, Kaleem Siddiqi
2011 conf
CCCG
Svetlana Stolpner, Kaleem Siddiqi, Sue Whitesides
2011 J jnl
Comput. Vis. Image Underst.
Diego Macrini, Sven J. Dickinson, David J. Fleet, Kaleem Siddiqi
2011 J jnl
Comput. Graph. Forum
Emmanuel Piuze, Paul G. Kry, Kaleem Siddiqi
2011 J jnl
Comput. Vis. Image Underst.
Diego Macrini, Sven J. Dickinson, David J. Fleet, Kaleem Siddiqi
2011 J jnl
Medical Image Anal.
Haz-Edine Assemlal, David Tschumperlé, Luc Brun, Kaleem Siddiqi
2011 J jnl
IEEE Trans. Pattern Anal. Mach. Intell.
Scott McCloskey, Michael S. Langer, Kaleem Siddiqi
2011 conf
IPMI
Parya MomayyezSiahkal, Kaleem Siddiqi
2011 J jnl
Comput. Vis. Image Underst.
Svetlana Stolpner, Sue Whitesides, Kaleem Siddiqi
2010 conf
MCV
Maxime Boucher, Alan C. Evans, Kaleem Siddiqi
2010 conf
MICCAI (1)
Parya MomayyezSiahkal, Kaleem Siddiqi
2010 B conf
ICPR
Scott McCloskey, Michael S. Langer, Kaleem Siddiqi
2009 conf
CVPR Workshops
Parya Momayyez, Kaleem Siddiqi
2009 J jnl
NeuroImage
Christophe Lenglet, Jennifer S. W. Campbell, Maxime Descoteaux, Gloria Haro, Peter Savadjiev, Demian Wassermann, Alfred Anwander, Rachid Deriche, G. Bruce Pike, Guillermo Sapiro, Kaleem Siddiqi, Paul M. Thompson
2009 conf
IPMI
Maxime Boucher, Alan C. Evans, Kaleem Siddiqi
2009 conf
CRV
Theo Ephraim, Tristan Himmelman, Kaleem Siddiqi
2009 conf
ICCV Workshops
Svetlana Stolpner, Sue Whitesides, Kaleem Siddiqi
2009 J jnl
IEEE Trans. Pattern Anal. Mach. Intell.
Alex Levinshtein, Adrian Stere, Kiriakos N. Kutulakos, David J. Fleet, Sven J. Dickinson, Kaleem Siddiqi
2008 ch.
Medial Representations
Kaleem Siddiqi, Juan Zhang, Diego Macrini, Sven J. Dickinson, Ali Shokoufandeh
2008 J jnl
Medical Image Anal.
Maxime Descoteaux, D. Louis Collins, Kaleem Siddiqi
2008 A* conf
CVPR
Diego Macrini, Kaleem Siddiqi, Sven J. Dickinson
2008 ch.
Medial Representations
Stephen M. Pizer, Kaleem Siddiqi, Paul A. Yushkevich
2008 J jnl
NeuroImage
Peter Savadjiev, Jennifer S. W. Campbell, Maxime Descoteaux, Rachid Deriche, G. Bruce Pike, Kaleem Siddiqi
2008 book
Kaleem Siddiqi, Stephen M. Pizer
2008 J jnl
Mach. Vis. Appl.
Kaleem Siddiqi, Juan Zhang, Diego Macrini, Ali Shokoufandeh, Sylvain Bouix, Sven J. Dickinson
2008 ch.
Medial Representations
Kaleem Siddiqi, Sylvain Bouix, Jayant Shah
2008 conf
MICCAI (1)
Peter Savadjiev, Jennifer S. W. Campbell, G. Bruce Pike, Kaleem Siddiqi
2007 conf
ACCV (1)
Scott McCloskey, Michael S. Langer, Kaleem Siddiqi
2007 conf
ACCV (2)
Scott McCloskey, Michael S. Langer, Kaleem Siddiqi
2007 A* conf
ICCV
Peter Savadjiev, Steven W. Zucker, Kaleem Siddiqi
2007 conf
ISBI
Maxime Descoteaux, Peter Savadjiev, Jennifer S. W. Campbell, G. Bruce Pike, Kaleem Siddiqi, Rachid Deriche
2007 J jnl
Medical Image Anal.
Ingerid Reinertsen, Maxime Descoteaux, Kaleem Siddiqi, D. Louis Collins
2006 J jnl
Medical Image Anal.
Peter Savadjiev, Jennifer S. W. Campbell, G. Bruce Pike, Kaleem Siddiqi
2006 conf
ICVGIP
Carlos Phillips, Kaleem Siddiqi
2006 ch.
Statistics and Analysis of Shapes
Sylvain Bouix, Kaleem Siddiqi, Allen R. Tannenbaum, Steven W. Zucker
2006 conf
3DPVT
Svetlana Stolpner, Kaleem Siddiqi
2006 conf
ICPR (1)
Scott McCloskey, Michael S. Langer, Kaleem Siddiqi
2006 conf
3DPVT
Scott McCloskey, Michael S. Langer, Kaleem Siddiqi
2006 conf
ISBI
Jennifer S. W. Campbell, Peter Savadjiev, Kaleem Siddiqi, G. Bruce Pike
2005 A conf
MICCAI
Peter Savadjiev, Jennifer S. W. Campbell, G. Bruce Pike, Kaleem Siddiqi
2005 A conf
MICCAI
Maxime Descoteaux, Michel A. Audette, Kiyoyuki Chinzei, Kaleem Siddiqi
2005 J jnl
NeuroImage
Jennifer S. W. Campbell, Kaleem Siddiqi, Vladimir V. Rymar, Abbas F. Sadikot, G. Bruce Pike
2005 J jnl
Medical Image Anal.
Sylvain Bouix, Kaleem Siddiqi, Allen R. Tannenbaum
2005 J jnl
NeuroImage
Sylvain Bouix, Jens C. Pruessner, D. Louis Collins, Kaleem Siddiqi
2005 J jnl
IEEE Trans. Pattern Anal. Mach. Intell.
Ali Shokoufandeh, Diego Macrini, Sven J. Dickinson, Kaleem Siddiqi, Steven W. Zucker
2005 conf
EMMCVPR
Juan Zhang, Kaleem Siddiqi, Diego Macrini, Ali Shokoufandeh, Sven J. Dickinson
2004 conf
ECCV Workshops CVAMIA and MMBIA
Maxime Descoteaux, D. Louis Collins, Kaleem Siddiqi
2004 conf
MICCAI (1)
Maxime Descoteaux, D. Louis Collins, Kaleem Siddiqi
2004 conf
MICCAI (2)
Ingerid Reinertsen, Maxime Descoteaux, Simon Drouin, Kaleem Siddiqi, D. Louis Collins
2003 J jnl
Comput. Vis. Image Underst.
Michel A. Audette, Kaleem Siddiqi, Frank P. Ferrie, Terry M. Peters
2003 conf
CVPR (1)
Sylvain Bouix, Kaleem Siddiqi, Allen R. Tannenbaum
2003 conf
CVPR (1)
Pavel Dimitrov, James N. Damon, Kaleem Siddiqi
2003 J jnl
Int. J. Comput. Vis.
Stephen M. Pizer, Kaleem Siddiqi, Gábor Székely, James N. Damon, Steven W. Zucker
2003 conf
EMMCVPR
Peter Savadjiev, Frank P. Ferrie, Kaleem Siddiqi
2002 conf
ISBI
Jennifer S. W. Campbell, Kaleem Siddiqi, Baba C. Vemuri, G. Bruce Pike
2002 conf
ICIP (2)
Lei Zhu, Steven Haker, Sylvain Bouix, Kaleem Siddiqi, Allen R. Tannenbaum
2002 J jnl
IEEE Trans. Pattern Anal. Mach. Intell.
Alexander Vasilevskiy, Kaleem Siddiqi
2002 J jnl
Int. J. Comput. Vis.
Kaleem Siddiqi, Sylvain Bouix, Allen R. Tannenbaum, Steven W. Zucker
2002 conf
SSPR/SPR
Diego Macrini, Ali Shokoufandeh, Sven J. Dickinson, Kaleem Siddiqi, Steven W. Zucker
2002 conf
ICPR (3)
Diego Macrini, Ali Shokoufandeh, Sven J. Dickinson, Kaleem Siddiqi, Steven W. Zucker
2001 conf
EMMCVPR
Kaleem Siddiqi, Alexander Vasilevskiy
2001 A* conf
ICCV
Alexander Vasilevskiy, Kaleem Siddiqi
2001 A conf
MICCAI
Sylvain Bouix, Jens C. Pruessner, D. Louis Collins, Kaleem Siddiqi
2001 conf
IWVF
Marcello Pelillo, Kaleem Siddiqi, Steven W. Zucker
2000 B conf
ICPR
Massimo Bartoli, Marcello Pelillo, Kaleem Siddiqi, Steven W. Zucker
2000 conf
ECCV (1)
Sylvain Bouix, Kaleem Siddiqi
2000 A* conf
CVPR
Pavel Dimitrov, Carlos Phillips, Kaleem Siddiqi
1999 conf
EMMCVPR
Kaleem Siddiqi, Allen R. Tannenbaum, Steven W. Zucker
1999 Misc conf
ICIAP
Marcello Pelillo, Kaleem Siddiqi, Steven W. Zucker
1999 conf
Discrete Mathematical Problems with Medical Applications
Sylvain Bouix, Kaleem Siddiqi
1999 J jnl
Comput. Vis. Image Underst.
Jonas August, Kaleem Siddiqi, Steven W. Zucker
1999 A* conf
CVPR
Ali Shokoufandeh, Sven J. Dickinson, Kaleem Siddiqi, Steven W. Zucker
1999 A conf
MICCAI
Michel A. Audette, Kaleem Siddiqi, Terry M. Peters
1999 A* conf
CVPR
Jonas August, Steven W. Zucker, Kaleem Siddiqi
1999 J jnl
Comput. Vis. Image Underst.
Jonas August, Kaleem Siddiqi, Steven W. Zucker
1999 J jnl
IEEE Trans. Pattern Anal. Mach. Intell.
Marcello Pelillo, Kaleem Siddiqi, Steven W. Zucker
1999 J jnl
Image Vis. Comput.
Kaleem Siddiqi, Benjamin B. Kimia, Allen R. Tannenbaum, Steven W. Zucker
1999 J jnl
Int. J. Comput. Vis.
Kaleem Siddiqi, Ali Shokoufandeh, Sven J. Dickinson, Steven W. Zucker
1999 A* conf
ICCV
Kaleem Siddiqi, Sylvain Bouix, Allen R. Tannenbaum, Steven W. Zucker
1998 J jnl
IEEE Trans. Image Process.
Kaleem Siddiqi, Yves Bérubé Lauzière, Allen R. Tannenbaum, Steven W. Zucker
1998 A* conf
ICCV
Kaleem Siddiqi, Allen R. Tannenbaum, Steven W. Zucker
1998 conf
ECCV (2)
Marcello Pelillo, Kaleem Siddiqi, Steven W. Zucker
1998 A* conf
ICCV
Kaleem Siddiqi, Ali Shokoufandeh, Sven J. Dickinson, Steven W. Zucker
1997 conf
ICIP (3)
Kaleem Siddiqi, Steven W. Zucker, Allen R. Tannenbaum
1997 A* conf
CVPR
Kaleem Siddiqi, Steven W. Zucker, Yves Bérubé Lauzière, Allen R. Tannenbaum
1997 J jnl
CVGIP Graph. Model. Image Process.
Kaleem Siddiqi, Benjamin B. Kimia, Chi-Wang Shu
1996 A* conf
CVPR
Kaleem Siddiqi, Benjamin B. Kimia
1996 B conf
ICPR
Jonas August, Kaleem Siddiqi, Steven W. Zucker
1996 J jnl
Comput. Vis. Image Underst.
Benjamin B. Kimia, Kaleem Siddiqi
1995 J jnl
IEEE Trans. Pattern Anal. Mach. Intell.
Kaleem Siddiqi, Benjamin B. Kimia
1995 conf
ICIP (3)
Kaleem Siddiqi, Jayashree Subrahmonia, David B. Cooper, Benjamin B. Kimia
1995 J jnl
IEEE Trans. Pattern Anal. Mach. Intell.
Kaleem Siddiqi, Benjamin B. Kimia
1995 J jnl
Int. J. Comput. Vis.
Ron Kimmel, Kaleem Siddiqi, Benjamin B. Kimia, Alfred M. Bruckstein
1994 A* conf
CVPR
Benjamin B. Kimia, Kaleem Siddiqi
1993 A* conf
CVPR
Kaleem Siddiqi, Benjamin B. Kimia
notebooks/redb-clickhouse-TEST.ipynb
← Index notebooks/redb-clickhouse-TEST.ipynb plaintext
Truncated preview: showing the first 16384 bytes out of 5988848 total.
{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Definitions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "import clickhouse_connect"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "\n",
    "ch_TEST_client = clickhouse_connect.get_client(host='e.rationaledge.io', port=443, username='default', password='werioubTGwvf0-dsbv_', database='redb', verify=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "ch_TEST_BETA_client = clickhouse_connect.get_client(host='k.rationaledge.io', port=443, username='default', password='werioubTGwvf0-dsbv_', database='default', verify=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<bound method HttpClient.close_connections of <clickhouse_connect.driver.httpclient.HttpClient object at 0x105fd64d0>>"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ch_TEST_BETA_client.close_connections"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<clickhouse_connect.driver.summary.QuerySummary at 0x11f900810>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ch_TEST_BETA_client.command(\"\"\"\n",
    "RENAME DATABASE redb TO orig_redb;\n",
    "\"\"\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## DB Creation (schema 2025-08-02)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "ch_TEST_client.command(\"\"\"\n",
    "CREATE DATABASE IF NOT EXISTS redb;\n",
    "\"\"\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define General Tables"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "### CREATE FULL REDB DATABASE\n",
    "def create_redb_with_all_tables(client):\n",
    "    client.command(\"\"\"\n",
    "        CREATE DATABASE IF NOT EXISTS redb\n",
    "    \"\"\")\n",
    "    create_all_general_tables(client)\n",
    "    create_all_pe_tables(client)\n",
    "\n",
    "#### CREATE FULL TABLES\n",
    "def create_all_general_tables(client):\n",
    "    create_basic_properties_dbtable(client)\n",
    "    create_hashes_dbtable(client)\n",
    "    create_capa_dbtable(client)\n",
    "    create_die_dbtable(client)\n",
    "    create_extra_findings_dbtable(client)\n",
    "\n",
    "\n",
    "##################################\n",
    "#### CREATE INDIVIDUAL TABLES ####\n",
    "##################################\n",
    "\n",
    "#### GENERAL TABLES ####\n",
    "# All tables have SETTINGS index_granularity = 8192\n",
    "def create_basic_properties_dbtable(client):\n",
    "    # Create samples_metadata table\n",
    "    client.command(\"\"\"\n",
    "        CREATE TABLE IF NOT EXISTS redb_basic_properties (\n",
    "            sha256 FixedString(64), -- primary key\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            filename Nullable(String),\n",
    "            sample_name String,\n",
    "            filesize UInt64,\n",
    "            file_entropy Float64,\n",
    "            filetype LowCardinality(String),\n",
    "            filetype_mime LowCardinality(String),\n",
    "            filetype_magika LowCardinality(String),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        PRIMARY KEY (sha256)\n",
    "        ORDER BY (sha256)\n",
    "    \"\"\")\n",
    "\n",
    "def create_hashes_dbtable(client):\n",
    "    # Create hashes table\n",
    "    client.command(\"\"\"\n",
    "        CREATE TABLE IF NOT EXISTS redb_hashes (\n",
    "            sha256 FixedString(64), -- primary key\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            ssdeep_hash Nullable(String),\n",
    "            tlsh_hash Nullable(String),\n",
    "            authentihash Nullable(String),\n",
    "            imphash Nullable(String),\n",
    "            impfuzzy Nullable(String),\n",
    "            typerefhash Nullable(String),\n",
    "            richhash Nullable(String),\n",
    "            richpe_hash Nullable(String),\n",
    "            richpv_hash Nullable(String),\n",
    "            richpv_hash_sorted Nullable(String),\n",
    "            dhash Nullable(String),\n",
    "            analysis_date DateTime64(3, 'UTC')\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        PRIMARY KEY (sha256)\n",
    "        ORDER BY (sha256)\n",
    "    \"\"\")\n",
    "\n",
    "def create_capa_dbtable(client):\n",
    "    # Create sample_capabilities table\n",
    "    client.command(\"\"\"\n",
    "        SET enable_json_type = 1;\n",
    "    \"\"\")\n",
    "    client.command(\"\"\"\n",
    "        -- Base table for CAPA analysis results\n",
    "        CREATE TABLE IF NOT EXISTS redb_capa (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            -- Store full JSON dumps as strings for flexibility\n",
    "            capa_dump JSON CODEC(ZSTD(3)),\n",
    "            attack_dump JSON CODEC(ZSTD(3)),\n",
    "            mbc_dump JSON CODEC(ZSTD(3))\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY sha256;\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Normalized table for capabilities and namespaces\n",
    "        CREATE TABLE IF NOT EXISTS redb_capa_capabilities (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            namespace LowCardinality(String),\n",
    "            capability LowCardinality(String)\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY (sha256, namespace, capability);\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Materialized view for capability statistics\n",
    "        CREATE MATERIALIZED VIEW IF NOT EXISTS redb_capa_capabilities_stats (\n",
    "            namespace LowCardinality(String),\n",
    "            capability LowCardinality(String),\n",
    "            samples_bitmap AggregateFunction(groupBitmap, UInt64),\n",
    "            occurrence_count UInt64\n",
    "        ) ENGINE = AggregatingMergeTree()\n",
    "        ORDER BY (namespace, capability)\n",
    "        AS SELECT\n",
    "            namespace,\n",
    "            capability,\n",
    "            groupBitmapState(cityHash64(sha256)) as samples_bitmap,\n",
    "            count() as occurrence_count\n",
    "        FROM redb_capa_capabilities\n",
    "        GROUP BY namespace, capability;\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Normalized table for MITRE ATT&CK mappings\n",
    "        CREATE TABLE IF NOT EXISTS redb_capa_attack (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            tactic LowCardinality(String),\n",
    "            technique LowCardinality(String),\n",
    "            technique_id LowCardinality(String)\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY (sha256, tactic, technique_id);\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Materialized view for ATT&CK statistics\n",
    "        CREATE MATERIALIZED VIEW IF NOT EXISTS redb_capa_attack_stats (\n",
    "            tactic LowCardinality(String),\n",
    "            technique LowCardinality(String),\n",
    "            technique_id LowCardinality(String),\n",
    "            samples_bitmap AggregateFunction(groupBitmap, UInt64),\n",
    "            occurrence_count UInt64\n",
    "        ) ENGINE = AggregatingMergeTree()\n",
    "        ORDER BY (tactic, technique_id)\n",
    "        AS SELECT\n",
    "            tactic,\n",
    "            technique,\n",
    "            technique_id,\n",
    "            groupBitmapState(cityHash64(sha256)) as samples_bitmap,\n",
    "            count() as occurrence_count\n",
    "        FROM redb_capa_attack\n",
    "        GROUP BY tactic, technique, technique_id;\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Normalized table for MBC mappings\n",
    "        CREATE TABLE IF NOT EXISTS redb_capa_mbc (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            objective LowCardinality(String),\n",
    "            behavior LowCardinality(String),\n",
    "            behavior_id LowCardinality(String)\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY (sha256, objective, behavior_id);\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        -- Materialized view for MBC statistics\n",
    "        CREATE MATERIALIZED VIEW IF NOT EXISTS redb_capa_mbc_stats (\n",
    "            objective LowCardinality(String),\n",
    "            behavior LowCardinality(String),\n",
    "            behavior_id LowCardinality(String),\n",
    "            samples_bitmap AggregateFunction(groupBitmap, UInt64),\n",
    "            occurrence_count UInt64\n",
    "        ) ENGINE = AggregatingMergeTree()\n",
    "        ORDER BY (objective, behavior_id)\n",
    "        AS SELECT\n",
    "            objective,\n",
    "            behavior,\n",
    "            behavior_id,\n",
    "            groupBitmapState(cityHash64(sha256)) as samples_bitmap,\n",
    "            count() as occurrence_count\n",
    "        FROM redb_capa_mbc\n",
    "        GROUP BY objective, behavior, behavior_id;\n",
    "    \"\"\")\n",
    "\n",
    "def create_die_dbtable(client):\n",
    "    # Create sample_die table\n",
    "    client.command(\"\"\"\n",
    "        SET enable_json_type = 1;\n",
    "    \"\"\")\n",
    "    client.command(\"\"\"\n",
    "        CREATE TABLE IF NOT EXISTS redb_die (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            die_info JSON CODEC(ZSTD(3)),\n",
    "            analysis_date DateTime64(3, 'UTC')\n",
    "        ) ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        PRIMARY KEY (sha256)\n",
    "        ORDER BY (sha256)\n",
    "    \"\"\")\n",
    "\n",
    "    client.command(\"\"\"\n",
    "        CREATE MATERIALIZED VIEW redb_die_mv\n",
    "        (\n",
    "            sha256 FixedString(64),\n",
    "            md5 FixedString(32),\n",
    "            sha1 FixedString(40),\n",
    "            analysis_date DateTime64(3, 'UTC'),\n",
    "            compiler LowCardinality(Nullable(String)),\n",
    "            compiler_full Nullable(String),\n",
    "            format LowCardinality(Nullable(String)),\n",
    "            format_full Nullable(String),\n",
    "            installer LowCardinality(Nullable(String)),\n",
    "            installer_full Nullable(String),\n",
    "            joiner LowCardinality(Nullable(String)),\n",
    "            joiner_full Nullable(String),\n",
    "            language LowCardinality(Nullable(String)),\n",
    "            language_full Nullable(String),\n",
    "            library LowCardinality(Nullable(String)),\n",
    "            library_full Nullable(String),\n",
    "            linker LowCardinality(Nullable(String)),\n",
    "            linker_full Nullable(String),\n",
    "            operation_system LowCardinality(Nullable(String)),\n",
    "            operation_system_full Nullable(String),\n",
    "            packer LowCardinality(Nullable(String)),\n",
    "            packer_full Nullable(String),\n",
    "            protector LowCardinality(Nullable(String)),\n",
    "            protector_full Nullable(String),\n",
    "            sfx LowCardinality(Nullable(String)),\n",
    "            sfx_full Nullable(String),\n",
    "            sign_tool LowCardinality(Nullable(String)),\n",
    "            sign_tool_full Nullable(String),\n",
    "            stub LowCardinality(Nullable(String)),\n",
    "            stub_full Nullable(String),\n",
    "            tool LowCardinality(Nullable(String)),\n",
    "            tool_full Nullable(String),   \n",
    "            -- overlay JSON CODEC(ZSTD(3)),\n",
    "            -- resource JSON CODEC(ZSTD(3)),\n",
    "            has_overlay UInt8,\n",
    "            has_resources UInt8,\n",
    "            is_packed UInt8\n",
    "        )\n",
    "        ENGINE = ReplacingMergeTree(analysis_date)\n",
    "        ORDER BY (sha256)\n",
    "        POPULATE\n",
    "        AS SELECT\n",
    "            sha256,\n",
    "            md5,\n",
    "            sha1,\n",
    "            analysis_date,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'compiler'), '') AS compiler,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'compiler(full)'), '') AS compiler_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'format'), '') AS format,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'format(full)'), '') AS format_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'installer'), '') AS installer,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'installer(full)'), '') AS installer_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'joiner'), '') AS joiner,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'joiner(full)'), '') AS joiner_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'language'), '') AS language,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'language(full)'), '') AS language_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'library'), '') AS library,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'library(full)'), '') AS library_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'linker'), '') AS linker,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'linker(full)'), '') AS linker_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'operation_system'), '') AS operation_system,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'operation_system(full)'), '') AS operation_system_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'packer'), '') AS packer,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'packer(full)'), '') AS packer_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'protector'), '') AS protector,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'protector(full)'), '') AS protector_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'sfx'), '') AS sfx,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'sfx(full)'), '') AS sfx_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'sign_tool'), '') AS sign_tool,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'sign_tool(full)'), '') AS sign_tool_full,\n",
    "            nullIf(JSONExtractString(toString(die_info), 'stub'), '') AS stub,\n",
    "            nullIf(JSONExtractString(toString(die_info),