The square grid graph is defined as the graph $G = ([m] \times [n], E)$ for integers $m,n$, such that for $x_1, x_2 \in [m], y_1, y_2\in [n]$, $(x_1,y_1)$ is adjacent to $(x_2,y_2)$ if and only if $x_1 = x_2, |y_1 - y_2| = 1$ or $y_1 = y_2, |x_1 - x_2| = 1$. In other words, it is the king graph without diagonal edges.
I am interested in finding a way to enumerate all of the connected subgraphs of $G$. I am somewhat at a loss for how to even approach this question. My only idea is to try to find some kind of recursive relationship based on $m$ and $n$; if I know what all of the connected subgraphs of $H = ([m-1] \times [n-1], E)$ are, then perhaps I can count the number of ways to attach some number of vertices and edges from the outer row and column to the already existent subgraphs of $H$ in order to form connected subgraphs of $G$, but this would require knowing exactly how many subgraphs of $H$ are adjacent to each specific vertex in the outer row and column of $G$. I feel like such a calculation would get very messy even for small numbers.
I'm curious if there are any techniques that would make this counting easier. I'm also curious if there are any techniques just for counting paths on $G$. Any suggestions or hints would be appreciate. Thank you.