"
+ ],
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAk0AAAGwCAYAAAC0HlECAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAKiZJREFUeJzt3X90VPWd//HXhCQTIs6EH2UGMGBUBEGKIBBTf+xhySG4+IPFXTWb0kixVosWZI9gTguIu2wotFipILh7WtytBWFPgYq/NiZABGPA8DOAKT2i5oCTVOPMBIQQyOf7B9/cwzSAn4SEmYTn45z3Oc79vOfO+87x5r7O5GZwGWOMAAAAcFFx0R4AAACgPSA0AQAAWCA0AQAAWCA0AQAAWCA0AQAAWCA0AQAAWCA0AQAAWIiP9gAdRUNDg44ePaqrr75aLpcr2uMAAAALxhjV1taqd+/eiou7+GdJhKZWcvToUaWmpkZ7DAAA0AKVlZW65pprLtpDaGolV199taSzb7rH44nyNAAAwEY4HFZqaqpzHb8YQlMrafyVnMfjITQBANDO2Nxaw43gAAAAFghNAAAAFghNAAAAFghNAAAAFghNAAAAFghNAAAAFghNAAAAFghNAAAAFghNAAAAFghNAAAAFghNAAAAFghNAAAAFghNAAAAFghNAAAAFghNAAAAFuKjPQDsuFzRngCIXcZEe4JWwokOXFyUT3Y+aQIAALBAaAIAALBAaAIAALBAaAIAALBAaAIAALBAaAIAALBAaAIAALBAaAIAALBAaAIAALAQ1dBUXFyse++9V71795bL5dL69eudtfr6es2aNUtDhgzRVVddpd69e+sHP/iBjh49GrGPmpoa5eTkyOPxKCUlRVOmTNGxY8cievbu3as777xTSUlJSk1N1cKFC5vMsnbtWg0cOFBJSUkaMmSI3nrrrTY5ZgAA0D5FNTQdP35cQ4cO1dKlS5usffPNN9q5c6dmz56tnTt36o9//KMqKip03333RfTl5ORo//79Kigo0MaNG1VcXKzHHnvMWQ+Hwxo7dqz69eunsrIyLVq0SM8995xeeeUVp+eDDz5Qdna2pkyZol27dmnChAmaMGGCysvL2+7gAQBA+2JihCSzbt26i/Zs377dSDKfffaZMcaYAwcOGElmx44dTs/bb79tXC6XOXLkiDHGmGXLlpmuXbuauro6p2fWrFlmwIABzuMHH3zQjB8/PuK10tPTzY9//GPr+UOhkJFkQqGQ9XOa4+w/uENR1Pmqw4j2G0lRsV5toDnX73Z1T1MoFJLL5VJKSookqaSkRCkpKRoxYoTTk5mZqbi4OJWWljo9d911lxITE52erKwsVVRU6Ouvv3Z6MjMzI14rKytLJSUlF5ylrq5O4XA4ogAAQMfVbkLTyZMnNWvWLGVnZ8vj8UiSAoGAevbsGdEXHx+vbt26KRAIOD0+ny+ip/Hxt/U0rp9Pfn6+vF6vU6mpqZd2gAAAIKa1i9BUX1+vBx98UMYYvfzyy9EeR5KUl5enUCjkVGVlZbRHAgAAbSg+2gN8m8bA9Nlnn6moqMj5lEmS/H6/qqurI/pPnz6tmpoa+f1+p6eqqiqip/Hxt/U0rp+P2+2W2+1u+YEBAIB2JaY/aWoMTIcOHdJ7772n7t27R6xnZGQoGAyqrKzM2VZUVKSGhgalp6c7PcXFxaqvr3d6CgoKNGDAAHXt2tXpKSwsjNh3QUGBMjIy2urQAABAe9Mmt6Jbqq2tNbt27TK7du0ykszixYvNrl27zGeffWZOnTpl7rvvPnPNNdeY3bt3my+++MKpc/8Sbty4cWbYsGGmtLTUbN261fTv399kZ2c768Fg0Ph8PjNp0iRTXl5uVq9ebZKTk82KFSucnm3btpn4+Hjzy1/+0hw8eNDMnTvXJCQkmH379lkfC389R1HRqw4j2m8kRcV6tYHmXL/bZgJLmzZtMpKaVG5urjl8+PB51ySZTZs2Ofv46quvTHZ2tunSpYvxeDxm8uTJpra2NuJ19uzZY+644w7jdrtNnz59zIIFC5rMsmbNGnPjjTeaxMREM3jwYPPmm28261gITRQVveowov1GUlSsVxtozvXbdfY8xaUKh8Pyer0KhUIR9121Fper1XcJdBgd5qcYJzpwcW1wsjfn+h3T9zQBAADECkITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACAhaiGpuLiYt17773q3bu3XC6X1q9fH7FujNGcOXPUq1cvde7cWZmZmTp06FBET01NjXJycuTxeJSSkqIpU6bo2LFjET179+7VnXfeqaSkJKWmpmrhwoVNZlm7dq0GDhyopKQkDRkyRG+99VarHy8AAGi/ohqajh8/rqFDh2rp0qXnXV+4cKGWLFmi5cuXq7S0VFdddZWysrJ08uRJpycnJ0f79+9XQUGBNm7cqOLiYj322GPOejgc1tixY9WvXz+VlZVp0aJFeu655/TKK684PR988IGys7M1ZcoU7dq1SxMmTNCECRNUXl7edgcPAADaFxMjJJl169Y5jxsaGozf7zeLFi1ytgWDQeN2u82qVauMMcYcOHDASDI7duxwet5++23jcrnMkSNHjDHGLFu2zHTt2tXU1dU5PbNmzTIDBgxwHj/44INm/PjxEfOkp6ebH//4x9bzh0IhI8mEQiHr5zSHRFHUharDiPYbSVGxXm2gOdfvmL2n6fDhwwoEAsrMzHS2eb1epaenq6SkRJJUUlKilJQUjRgxwunJzMxUXFycSktLnZ677rpLiYmJTk9WVpYqKir09ddfOz3nvk5jT+PrnE9dXZ3C4XBEAQCAjitmQ1MgEJAk+Xy+iO0+n89ZCwQC6tmzZ8R6fHy8unXrFtFzvn2c+xoX6mlcP5/8/Hx5vV6nUlNTm3uIAACgHYnZ0BTr8vLyFAqFnKqsrIz2SAAAoA3FbGjy+/2SpKqqqojtVVVVzprf71d1dXXE+unTp1VTUxPRc759nPsaF+ppXD8ft9stj8cTUQAAoOOK2dCUlpYmv9+vwsJCZ1s4HFZpaakyMjIkSRkZGQoGgyorK3N6ioqK1NDQoPT0dKenuLhY9fX1Tk9BQYEGDBigrl27Oj3nvk5jT+PrAAAAtM2t6JZqa2vNrl27zK5du4wks3jxYrNr1y7z2WefGWOMWbBggUlJSTEbNmwwe/fuNffff79JS0szJ06ccPYxbtw4M2zYMFNaWmq2bt1q+vfvb7Kzs531YDBofD6fmTRpkikvLzerV682ycnJZsWKFU7Ptm3bTHx8vPnlL39pDh48aObOnWsSEhLMvn37rI+Fv56jqOhVhxHtN5KiYr3aQHOu320zgaVNmzYZSU0qNzfXGHP2awdmz55tfD6fcbvdZsyYMaaioiJiH1999ZXJzs42Xbp0MR6Px0yePNnU1tZG9OzZs8fccccdxu12mz59+pgFCxY0mWXNmjXmxhtvNImJiWbw4MHmzTffbNaxEJooKnrVYUT7jaSoWK820Jzrt+vseYpLFQ6H5fV6FQqF2uT+Jper1XcJdBgd5qcYJzpwcW1wsjfn+h2z9zQBAADEEkITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACABUITAACAhZgOTWfOnNHs2bOVlpamzp076/rrr9e//du/yRjj9BhjNGfOHPXq1UudO3dWZmamDh06FLGfmpoa5eTkyOPxKCUlRVOmTNGxY8cievbu3as777xTSUlJSk1N1cKFCy/LMQIAgHbCxLD58+eb7t27m40bN5rDhw+btWvXmi5dupgXX3zR6VmwYIHxer1m/fr1Zs+ePea+++4zaWlp5sSJE07PuHHjzNChQ82HH35o3n//fXPDDTeY7OxsZz0UChmfz2dycnJMeXm5WbVqlencubNZsWKF9ayhUMhIMqFQqHUO/m9IFEVdqDqMaL+RFBXr1Qaac/1umwlayfjx480Pf/jDiG0TJ040OTk5xhhjGhoajN/vN4sWLXLWg8GgcbvdZtWqVcYYYw4cOGAkmR07djg9b7/9tnG5XObIkSPGGGOWLVtmunbtaurq6pyeWbNmmQEDBlxwtpMnT5pQKORUZWWl9ZveEtH+/5SiYrk6jGi/kRQV69UGmhOaYvrXc9/73vdUWFioP//5z5KkPXv2aOvWrbr77rslSYcPH1YgEFBmZqbzHK/Xq/T0dJWUlEiSSkpKlJKSohEjRjg9mZmZiouLU2lpqdNz1113KTEx0enJyspSRUWFvv766/POlp+fL6/X61RqamrrHjwAAIgp8dEe4GKeffZZhcNhDRw4UJ06ddKZM2c0f/585eTkSJICgYAkyefzRTzP5/M5a4FAQD179oxYj4+PV7du3SJ60tLSmuyjca1r165NZsvLy9OMGTOcx+FwmOAEAEAHFtOhac2aNXrttdf0hz/8QYMHD9bu3bs1ffp09e7dW7m5uVGdze12y+12R3UGAABw+cR0aHrmmWf07LPP6uGHH5YkDRkyRJ999pny8/OVm5srv98vSaqqqlKvXr2c51VVVemWW26RJPn9flVXV0fs9/Tp06qpqXGe7/f7VVVVFdHT+LixBwAAXNli+p6mb775RnFxkSN26tRJDQ0NkqS0tDT5/X4VFhY66+FwWKWlpcrIyJAkZWRkKBgMqqyszOkpKipSQ0OD0tPTnZ7i4mLV19c7PQUFBRowYMB5fzUHAACuQG1yK3oryc3NNX369HG+cuCPf/yj6dGjh5k5c6bTs2DBApOSkmI2bNhg9u7da+6///7zfuXAsGHDTGlpqdm6davp379/xFcOBINB4/P5zKRJk0x5eblZvXq1SU5O5isHKKqdVIcR7TeSomK92kCH+cqBcDhspk2bZvr27WuSkpLMddddZ372s59FfDVAQ0ODmT17tvH5fMbtdpsxY8aYioqKiP189dVXJjs723Tp0sV4PB4zefJkU1tbG9GzZ88ec8cddxi322369OljFixY0KxZCU0UFb3qMKL9RlJUrFcbaM7123X2PMWlCofD8nq9CoVC8ng8rb5/l6vVdwl0GB3mpxgnOnBxbXCyN+f6HdP3NAEAAMQKQhMAAIAFQhMAAIAFQhMAAIAFQhMAAIAFQhMAAIAFQhMAAIAFQhMAAIAFQhMAAIAFQhMAAIAFQhMAAIAFQhMAAIAFQhMAAIAFQhMAAIAFQhMAAICFFoWm6667Tl999VWT7cFgUNddd90lDwUAABBrWhSaPv30U505c6bJ9rq6Oh05cuSShwIAAIg18c1p/tOf/uT897vvviuv1+s8PnPmjAoLC3Xttde22nAAAACxolmhacKECZIkl8ul3NzciLWEhARde+21+tWvftVqwwEAAMSKZoWmhoYGSVJaWpp27NihHj16tMlQAAAAsaZZoanR4cOHW3sOAACAmNai0CRJhYWFKiwsVHV1tfMJVKPf/va3lzwYAABALGlRaJo3b56ef/55jRgxQr169ZLL5WrtuQAAAGJKi0LT8uXLtXLlSk2aNKm15wEAAIhJLfqeplOnTul73/tea88CAAAQs1oUmh599FH94Q9/aO1ZAAAAYlaLfj138uRJvfLKK3rvvff03e9+VwkJCRHrixcvbpXhAAAAYkWLQtPevXt1yy23SJLKy8sj1rgpHAAAdEQtCk2bNm1q7TkAAABiWovuaQIAALjStOiTptGjR1/013BFRUUtHggAACAWtSg0Nd7P1Ki+vl67d+9WeXl5k3/IFwAAoCNoUWh64YUXzrv9ueee07Fjxy5pIAAAgFjUqvc0ff/73+ffnQMAAB1Sq4amkpISJSUlteYuAQAAYkKLfj03ceLEiMfGGH3xxRf66KOPNHv27FYZDAAAIJa0KDR5vd6Ix3FxcRowYICef/55jR07tlUGAwAAiCUtCk2/+93vWnsOAACAmNai0NSorKxMBw8elCQNHjxYw4YNa5WhAAAAYk2LQlN1dbUefvhhbd68WSkpKZKkYDCo0aNHa/Xq1frOd77TmjMCAABEXYv+eu6pp55SbW2t9u/fr5qaGtXU1Ki8vFzhcFg//elPW3tGAACAqHMZY0xzn+T1evXee+9p5MiREdu3b9+usWPHKhgMttZ87UY4HJbX61UoFJLH42n1/V/kX60BrnjN/ykWozjRgYtrg5O9OdfvFn3S1NDQoISEhCbbExIS1NDQ0JJdAgAAxLQWhaa///u/17Rp03T06FFn25EjR/T0009rzJgxrTYcAABArGhRaHrppZcUDod17bXX6vrrr9f111+vtLQ0hcNh/eY3v2ntGQEAAKKuRaEpNTVVO3fu1Jtvvqnp06dr+vTpeuutt7Rz505dc801rTrgkSNH9P3vf1/du3dX586dNWTIEH300UfOujFGc+bMUa9evdS5c2dlZmbq0KFDEfuoqalRTk6OPB6PUlJSNGXKlCb/sPDevXt15513KikpSampqVq4cGGrHgcAAGjnTDMUFhaam266yYRCoSZrwWDQDBo0yBQXFzdnlxdVU1Nj+vXrZx555BFTWlpqPvnkE/Puu++av/zlL07PggULjNfrNevXrzd79uwx9913n0lLSzMnTpxwesaN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AADQvsT0J02VlZWaNm2aXnvtNSUlJUV7nAh5eXkKhUJOVVZWRnskAADQhmI6NJWVlam6ulrDhw9XfHy84uPjtWXLFi1ZskTx8fHy+Xw6deqUgsFgxPOqqqrk9/slSX6/v8lf0zU+/rYej8dz3k+ZJMntdsvj8UQUAADouGI6NI0ZM0b79u3T7t27nRoxYoRycnKc/05ISFBhYaHznIqKCn3++efKyMiQJGVkZGjfvn2qrq52egoKCuTxeDRo0CCn59x9NPY07gMAACCm72m6+uqrdfPNN0dsu+qqq9S9e3dn+5QpUzRjxgx169ZNHo9HTz31lDIyMnTbbbdJksaOHatBgwZp0qRJWrhwoQKBgH7+859r6tSpcrvdkqTHH39cL730kmbOnKkf/vCHKioq0po1a/Tmm29e3gMGAAAxK6ZDk40XXnhBcXFxeuCBB1RXV6esrCwtW7bMWe/UqZM2btyoJ554QhkZGbrqqquUm5ur559/3ulJS0vTm2++qaefflovvviirrnmGv3Xf/2XsrKyonFIAAAgBrnOfjUILlU4HJbX61UoFGqT+5tcrlbfJdBhdJifYpzowMW1wcnenOt3TN/TBAAAECsITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABYITQAAABZiOjTl5+dr5MiRuvrqq9WzZ09NmDBBFRUVET0nT57U1KlT1b17d3Xp0kUPPPCAqqqqIno+//xzjR8/XsnJyerZs6eeeeYZnT59OqJn8+bNGj58uNxut2644QatXLmyrQ8PAAC0IzEdmrZs2aKpU6fqww8/VEFBgerr6zV27FgdP37c6Xn66af1xhtvaO3atdqyZYuOHj2qiRMnOutnzpzR+PHjderUKX3wwQd6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\n"
+ },
+ "metadata": {}
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#Create Data Generator for the Images\n",
+ "###Data Generators loads the data from the disk for reading and training the data directly, saving RAM space and avoiding possible overflow that might crash the system."
+ ],
+ "metadata": {
+ "id": "JAhWEtFUxKQq"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "df['label'] = df['label'].astype('str')\n",
+ "df.head()"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 206
+ },
+ "id": "VdtC03IIxEbV",
+ "outputId": "cbf9d464-eb95-4544-e5ca-4ab6a935d30b"
+ },
+ "execution_count": 22,
+ "outputs": [
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ " images label\n",
+ "0 PetImages/Dog/10068.jpg 1\n",
+ "1 PetImages/Dog/10949.jpg 1\n",
+ "2 PetImages/Dog/11828.jpg 1\n",
+ "3 PetImages/Cat/17.jpg 0\n",
+ "4 PetImages/Cat/1372.jpg 0"
+ ],
+ "text/html": [
+ "\n",
+ " \n",
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " images | \n",
+ " label | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " PetImages/Dog/10068.jpg | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " PetImages/Dog/10949.jpg | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " PetImages/Dog/11828.jpg | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " PetImages/Cat/17.jpg | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " PetImages/Cat/1372.jpg | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n"
+ ],
+ "application/vnd.google.colaboratory.intrinsic+json": {
+ "type": "dataframe",
+ "variable_name": "df",
+ "summary": "{\n \"name\": \"df\",\n \"rows\": 24998,\n \"fields\": [\n {\n \"column\": \"images\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 24998,\n \"samples\": [\n \"PetImages/Dog/7970.jpg\",\n \"PetImages/Dog/8129.jpg\",\n \"PetImages/Cat/11978.jpg\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"label\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 2,\n \"samples\": [\n \"0\",\n \"1\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
+ }
+ },
+ "metadata": {},
+ "execution_count": 22
+ }
+ ]
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# input split\n",
+ "from sklearn.model_selection import train_test_split\n",
+ "train, test = train_test_split(df, test_size=0.2, random_state=42)"
+ ],
+ "metadata": {
+ "id": "DlZPlbEHxcYN"
+ },
+ "execution_count": 23,
+ "outputs": []
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "from tensorflow.keras.preprocessing.image import ImageDataGenerator\n",
+ "train_generator = ImageDataGenerator(\n",
+ " rescale = 1./255, # normalization of images\n",
+ " rotation_range = 40, # augmention of images to avoid overfitting\n",
+ " shear_range = 0.2,\n",
+ " zoom_range = 0.2,\n",
+ " horizontal_flip = True,\n",
+ " fill_mode = 'nearest'\n",
+ ")\n",
+ "\n",
+ "val_generator = ImageDataGenerator(rescale = 1./255)\n",
+ "\n",
+ "train_iterator = train_generator.flow_from_dataframe(\n",
+ " train,x_col='images',\n",
+ " y_col='label',\n",
+ " target_size=(128,128),\n",
+ " batch_size=512,\n",
+ " class_mode='binary'\n",
+ ")\n",
+ "\n",
+ "val_iterator = val_generator.flow_from_dataframe(\n",
+ " test,x_col='images',\n",
+ " y_col='label',\n",
+ " target_size=(128,128),\n",
+ " batch_size=512,\n",
+ " class_mode='binary'\n",
+ ")"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 0
+ },
+ "id": "_0-l72Oey9M-",
+ "outputId": "a692f2a8-8786-4d7c-c34e-707432254193"
+ },
+ "execution_count": 25,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Found 19998 validated image filenames belonging to 2 classes.\n",
+ "Found 5000 validated image filenames belonging to 2 classes.\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#Model Building"
+ ],
+ "metadata": {
+ "id": "dPK1-IRZ0C1w"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "from keras import Sequential\n",
+ "from keras.layers import Conv2D, MaxPool2D, Flatten, Dense\n",
+ "\n",
+ "model = Sequential([\n",
+ " Conv2D(16, (3,3), activation='relu', input_shape=(128,128,3)),\n",
+ " MaxPool2D((2,2)),\n",
+ " Conv2D(32, (3,3), activation='relu'),\n",
+ " MaxPool2D((2,2)),\n",
+ " Conv2D(64, (3,3), activation='relu'),\n",
+ " MaxPool2D((2,2)),\n",
+ " Flatten(),\n",
+ " Dense(512, activation='relu'),\n",
+ " Dense(1, activation='sigmoid')\n",
+ "])\n",
+ "\n",
+ "#Dense - single dimension linear layer array\n",
+ "\n",
+ "#Conv2D - convolutional layer in 2 dimension\n",
+ "\n",
+ "#MaxPooling2D - function to get the maximum pixel value to the next layer\n",
+ "\n",
+ "#Flatten - convert 2D array into a 1D array\n",
+ "\n",
+ "#Use Dropout if augmentation was not applied on the images to avoid over fitting\n",
+ "\n",
+ "#activation='relu' - used commonly for image classification models\n",
+ "\n",
+ "#input_shape=(128,128,3) - Resolution size of the images in an RGB color scales. If in grayscale the third parameter is 1.\n",
+ "\n",
+ "#activation='sigmoid' - used for binary classification"
+ ],
+ "metadata": {
+ "id": "eC56fnAbzOuR"
+ },
+ "execution_count": 26,
+ "outputs": []
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])\n",
+ "model.summary()"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 417
+ },
+ "id": "pgIHeFHH0bzb",
+ "outputId": "fc8e7b93-86a9-4244-faad-5285d3c1d062"
+ },
+ "execution_count": 27,
+ "outputs": [
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1mModel: \"sequential\"\u001b[0m\n"
+ ],
+ "text/html": [
+ "Model: \"sequential\"\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
+ "┃\u001b[1m \u001b[0m\u001b[1mLayer (type) \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m Param #\u001b[0m\u001b[1m \u001b[0m┃\n",
+ "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
+ "│ conv2d (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m126\u001b[0m, \u001b[38;5;34m126\u001b[0m, \u001b[38;5;34m16\u001b[0m) │ \u001b[38;5;34m448\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m63\u001b[0m, \u001b[38;5;34m63\u001b[0m, \u001b[38;5;34m16\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_1 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m61\u001b[0m, \u001b[38;5;34m61\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m4,640\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d_1 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m30\u001b[0m, \u001b[38;5;34m30\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_2 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m18,496\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d_2 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ flatten (\u001b[38;5;33mFlatten\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m12544\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m512\u001b[0m) │ \u001b[38;5;34m6,423,040\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense_1 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m1\u001b[0m) │ \u001b[38;5;34m513\u001b[0m │\n",
+ "└─────────────────────────────────┴────────────────────────┴───────────────┘\n"
+ ],
+ "text/html": [
+ "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
+ "┃ Layer (type) ┃ Output Shape ┃ Param # ┃\n",
+ "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
+ "│ conv2d (Conv2D) │ (None, 126, 126, 16) │ 448 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d (MaxPooling2D) │ (None, 63, 63, 16) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_1 (Conv2D) │ (None, 61, 61, 32) │ 4,640 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d_1 (MaxPooling2D) │ (None, 30, 30, 32) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_2 (Conv2D) │ (None, 28, 28, 64) │ 18,496 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d_2 (MaxPooling2D) │ (None, 14, 14, 64) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ flatten (Flatten) │ (None, 12544) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense (Dense) │ (None, 512) │ 6,423,040 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense_1 (Dense) │ (None, 1) │ 513 │\n",
+ "└─────────────────────────────────┴────────────────────────┴───────────────┘\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1m Total params: \u001b[0m\u001b[38;5;34m6,447,137\u001b[0m (24.59 MB)\n"
+ ],
+ "text/html": [
+ " Total params: 6,447,137 (24.59 MB)\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m6,447,137\u001b[0m (24.59 MB)\n"
+ ],
+ "text/html": [
+ " Trainable params: 6,447,137 (24.59 MB)\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m0\u001b[0m (0.00 B)\n"
+ ],
+ "text/html": [
+ " Non-trainable params: 0 (0.00 B)\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ }
+ ]
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "history = model.fit(train_iterator, epochs=10, validation_data=val_iterator)"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 0
+ },
+ "id": "k2v3evd-0oFc",
+ "outputId": "c522c4b0-ac3c-4add-ee42-4d9021e29f33"
+ },
+ "execution_count": 28,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Epoch 1/10\n",
+ "\u001b[1m40/40\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m475s\u001b[0m 12s/step - accuracy: 0.5132 - loss: 0.7758 - val_accuracy: 0.6258 - val_loss: 0.6419\n",
+ "Epoch 2/10\n",
+ "\u001b[1m40/40\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m455s\u001b[0m 11s/step - accuracy: 0.6351 - loss: 0.6362 - val_accuracy: 0.6742 - val_loss: 0.5914\n",
+ "Epoch 3/10\n",
+ "\u001b[1m40/40\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m482s\u001b[0m 11s/step - accuracy: 0.6753 - loss: 0.5981 - val_accuracy: 0.7074 - val_loss: 0.5574\n",
+ "Epoch 4/10\n",
+ "\u001b[1m40/40\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m419s\u001b[0m 10s/step - accuracy: 0.7082 - loss: 0.5633 - val_accuracy: 0.7334 - val_loss: 0.5220\n",
+ "Epoch 5/10\n",
+ "\u001b[1m40/40\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m425s\u001b[0m 11s/step - accuracy: 0.7225 - loss: 0.5399 - val_accuracy: 0.7060 - val_loss: 0.5566\n",
+ "Epoch 6/10\n",
+ "\u001b[1m40/40\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m417s\u001b[0m 10s/step - accuracy: 0.7304 - loss: 0.5310 - val_accuracy: 0.6884 - val_loss: 0.5716\n",
+ "Epoch 7/10\n",
+ "\u001b[1m40/40\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m406s\u001b[0m 10s/step - accuracy: 0.7361 - loss: 0.5254 - val_accuracy: 0.7634 - val_loss: 0.4901\n",
+ "Epoch 8/10\n",
+ "\u001b[1m40/40\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m451s\u001b[0m 10s/step - accuracy: 0.7571 - loss: 0.4971 - val_accuracy: 0.7672 - val_loss: 0.4784\n",
+ "Epoch 9/10\n",
+ "\u001b[1m40/40\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m416s\u001b[0m 10s/step - accuracy: 0.7701 - loss: 0.4789 - val_accuracy: 0.7526 - val_loss: 0.5005\n",
+ "Epoch 10/10\n",
+ "\u001b[1m40/40\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m445s\u001b[0m 11s/step - accuracy: 0.7647 - loss: 0.4821 - val_accuracy: 0.7974 - val_loss: 0.4292\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#Visualization Of Results"
+ ],
+ "metadata": {
+ "id": "5EtwDU6q0yEe"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "acc = history.history['accuracy']\n",
+ "val_acc = history.history['val_accuracy']\n",
+ "epochs = range(len(acc))\n",
+ "\n",
+ "plt.plot(epochs, acc, 'b', label='Training Accuracy')\n",
+ "plt.plot(epochs, val_acc, 'r', label='Validation Accuracy')\n",
+ "plt.title('Accuracy Graph')\n",
+ "plt.legend()\n",
+ "plt.figure()\n",
+ "\n",
+ "loss = history.history['loss']\n",
+ "val_loss = history.history['val_loss']\n",
+ "plt.plot(epochs, loss, 'b', label='Training Loss')\n",
+ "plt.plot(epochs, val_loss, 'r', label='Validation Loss')\n",
+ "plt.title('Loss Graph')\n",
+ "plt.legend()\n",
+ "plt.show()"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 887
+ },
+ "id": "07xiVFRP02SW",
+ "outputId": "08017f9f-61fb-4c15-f37c-a01b78ab6c5b"
+ },
+ "execution_count": 30,
+ "outputs": [
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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ra3RrVs3JCQkZHieN4tKVSpVhslFWseLrBbnpOPChQs4evQoQkND9QptNRoNgoODMWTIEFhbW2d4jsxeTyvO169fpzruze/r7Nmz8b///Q9z586Fl5cXihQpgjFjxui+r5ldFwAGDx6MGjVq4O7du1i2bBnef/99lC5dOtP3EREZXGws0L498OABULUqsGYNkIVBHXmNc3nnI4cOHUL//v3RuXNneHl5wdXVFTdv3jRoDPb29nBxccHx48d1+zQaDU6dOpXh+wICAtC0aVOcPn0aYWFhuse4ceMQEBAAQLYEhYWF4cmTJ2meo1q1ahkWsRYvXlyvOPjq1atZWsH70KFD6NixI/z8/FC9enWULVsWV65c0b1evnx5WFtbZ3htLy8v1K5dG7/99htWrVqFgQMHZnpdIiKD02gAX1/g9GnA2Rn480/Azk7pqAAwYclXypcvj40bNyIsLAynT59G7969M+2GyQujRo3CzJkzsWXLFly+fBmjR4/G06dP010l+/Xr1/jjjz/g6+uLqlWr6j0GDx6MY8eO4fz58/D19YWrqys6deqEQ4cO4caNG9iwYYNuRuSpU6di9erVunWrzp49i++//153nffffx8LFizAf//9hxMnTuDjjz/O0pDl8uXLY/fu3Th8+DAuXryIjz76SG8YvpWVFcaPH48vvvgCK1aswPXr13H06FFdopVk8ODBmDVrFoQQeqOXiIiMxuefyyTFygrYuhUwopZgJiz5yJw5c+Do6IiGDRuiffv2aNWqFWrVqmXwOMaPHw9fX1/4+/ujQYMGsLGxQatWrdJdQXjr1q2IiopK8yZeuXJlVK5cGQEBAbC0tMSuXbvg7OyMtm3bwsvLC7NmzdINk2/evDnWrVuHrVu3okaNGnj//ff11qz66aef4O7ujiZNmqB379747LPPsrSC91dffYVatWqhVatWaN68uS5pSmny5Mn49NNPMWXKFFSuXBk9e/ZMVQfk6+uLQoUKwdfXl6spE5HxWbwY+Pln+Xz5cqBePWXjeYNKvG3xgRGIiYmBvb09oqOjYfdG09WrV68QHh6OMmXK8CahEK1Wi8qVK6NHjx5vNcOxqbt58yY8PT1x/PjxPEkk+btORDm2axfQtq3sEvr2W2DSJINcNqP795uUr6KhfOfWrVvYtWsXmjVrhvj4eCxYsADh4eHo3bu30qEp4vXr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\n"
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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\n"
+ },
+ "metadata": {}
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#Test with real Image\n"
+ ],
+ "metadata": {
+ "id": "YsNy21UP09Zq"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "from tensorflow.keras.utils import load_img, img_to_array\n",
+ "import numpy as np\n",
+ "\n",
+ "image_path = '/content/test.jpg' # adjust to your actual path\n",
+ "try:\n",
+ " img = load_img(image_path, target_size=(128, 128))\n",
+ " img_arr = img_to_array(img) / 255.0\n",
+ " img_arr = np.expand_dims(img_arr, axis=0) # shape (1, 128,128,3)\n",
+ " print(\"Image loaded and processed, shape:\", img_arr.shape)\n",
+ "except FileNotFoundError:\n",
+ " print(f\"File not found: {image_path}\")"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 0
+ },
+ "id": "KuZRnPclNi1C",
+ "outputId": "ff4f231f-9d02-43bd-f1f4-9886bc2da0a2"
+ },
+ "execution_count": 42,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Image loaded and processed, shape: (1, 128, 128, 3)\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#Image prediction of cat or dog"
+ ],
+ "metadata": {
+ "id": "4INJ8LULSgXa"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "prediction = model.predict(img_arr)[0][0]\n",
+ "\n",
+ "if prediction > 0.5:\n",
+ " print(f\"Prediction: Dog ({prediction:.2f})\")\n",
+ "else:\n",
+ " print(f\"Prediction: Cat ({prediction:.2f})\")"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 0
+ },
+ "id": "1gsyc5BZR-fE",
+ "outputId": "dffef553-9574-4922-a8f3-36f94857850c"
+ },
+ "execution_count": 47,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 48ms/step\n",
+ "Prediction: Dog (0.89)\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#Dog=1\n",
+ "#Cat=0"
+ ],
+ "metadata": {
+ "id": "Zfl9_rtoPAMI"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "model.save('dog_cat_model.h5')"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 0
+ },
+ "id": "SHuYwsfPUGDn",
+ "outputId": "720503dd-73b5-44c2-b42e-adf42e01f700"
+ },
+ "execution_count": 52,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stderr",
+ "text": [
+ "WARNING:absl:You are saving your model as an HDF5 file via `model.save()` or `keras.saving.save_model(model)`. This file format is considered legacy. We recommend using instead the native Keras format, e.g. `model.save('my_model.keras')` or `keras.saving.save_model(model, 'my_model.keras')`. \n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "import tensorflow as tf\n",
+ "\n",
+ "# Load the trained model\n",
+ "model = tf.keras.models.load_model(\"dog_cat_model.h5\")"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 0
+ },
+ "id": "OTca71XkUuJE",
+ "outputId": "981f1dd7-9f7e-49a9-c962-ac0ce6ebfcd9"
+ },
+ "execution_count": 53,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stderr",
+ "text": [
+ "WARNING:absl:Compiled the loaded model, but the compiled metrics have yet to be built. `model.compile_metrics` will be empty until you train or evaluate the model.\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "!pip install opencv-python"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 0
+ },
+ "id": "wcjMkgIaA5HM",
+ "outputId": "cb99b7f3-2156-462b-9aef-d5b0172d90eb"
+ },
+ "execution_count": 54,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Requirement already satisfied: opencv-python in /usr/local/lib/python3.11/dist-packages (4.12.0.88)\n",
+ "Requirement already satisfied: numpy<2.3.0,>=2 in /usr/local/lib/python3.11/dist-packages (from opencv-python) (2.0.2)\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "import cv2\n",
+ "import numpy as np\n",
+ "\n",
+ "video_path = \"/content/dog_video.mp4\" # path to your 20s video\n",
+ "cap = cv2.VideoCapture(video_path)\n",
+ "\n",
+ "img_size = (128, 128) # same size used during training\n",
+ "predictions = []\n",
+ "frame_skip = 5\n",
+ "frame_count = 0\n",
+ "\n",
+ "while cap.isOpened():\n",
+ " ret, frame = cap.read()\n",
+ " if not ret:\n",
+ " break\n",
+ "\n",
+ " frame_count += 1\n",
+ " if frame_count % frame_skip != 0:\n",
+ " continue\n",
+ "\n",
+ " # Resize and normalize\n",
+ " resized = cv2.resize(frame, img_size)\n",
+ " img_array = resized / 255.0\n",
+ " img_array = np.expand_dims(img_array, axis=0)\n",
+ "\n",
+ " # Predict (0 = cat, 1 = dog)\n",
+ " pred = model.predict(img_array)[0][0]\n",
+ " predictions.append(pred)\n",
+ "\n",
+ "cap.release()\n",
+ "\n",
+ "# Average prediction across frames\n",
+ "avg_pred = np.mean(predictions)\n",
+ "if avg_pred > 0.5:\n",
+ " print(f\"Video Prediction: Dog ({avg_pred:.2f})\")\n",
+ "else:\n",
+ " print(f\"Video Prediction: Cat ({avg_pred:.2f})\")\n"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 0
+ },
+ "id": "OkNHBDR4A8Ei",
+ "outputId": "588681a4-92c4-4bbf-847f-6e671ab4c85e"
+ },
+ "execution_count": 59,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 140ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 46ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 46ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 45ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 45ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 45ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 44ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 40ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 54ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 41ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 41ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 39ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 40ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 42ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 52ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 46ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 46ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 45ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 44ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 46ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 49ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 46ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 45ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 42ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 41ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 40ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 46ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 39ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 41ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 39ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 50ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 45ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 43ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 45ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 45ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 40ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 41ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 40ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 45ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 40ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 41ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 40ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 40ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 39ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 42ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 43ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 41ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 40ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 43ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 42ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 42ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 68ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 59ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 67ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 64ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 60ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 63ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 66ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 59ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 62ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 72ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 105ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 81ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 74ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 72ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 48ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 52ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 51ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 50ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 49ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 51ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 47ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 54ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 45ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 49ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 43ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 41ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 41ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 41ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 41ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 43ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 53ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 57ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 51ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 56ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 50ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 48ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 52ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 50ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 53ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 58ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 51ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 53ms/step\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 52ms/step\n",
+ "Video Prediction: Dog (0.64)\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "code",
+ "source": [],
+ "metadata": {
+ "id": "Mzp0KeY6VrBv"
+ },
+ "execution_count": null,
+ "outputs": []
+ }
+ ]
+}
\ No newline at end of file
diff --git a/tesr/order-service-3.5.zip b/tesr/order-service-3.5.zip
new file mode 100644
index 0000000..6cecad6
Binary files /dev/null and b/tesr/order-service-3.5.zip differ
diff --git a/tesr/src/tesr/test.java b/tesr/src/tesr/test.java
index 885bad2..22165ac 100644
--- a/tesr/src/tesr/test.java
+++ b/tesr/src/tesr/test.java
@@ -3,8 +3,6 @@
public class test {
public static void main(String[] args){
-
- System.out.printl('test Akhila');
-
+ System.out.println("My First Commit Dummy Branch");
}
}