Category AI

128. Tensorboard with Pytorch

Here is one way to visualize your model’s training process using tensorboard with Pytorch #Inside Code for Training from torch.utils.tensorboard import SummaryWriter() tb = SummaryWriter() #Add Metrics you want to evaluate tb.add_scalar(‘Loss’,loss,epoch) tb.add_scalar(‘Accuracy’,accuracy,epoch) tb.add_scalar(‘F1Score’,fa_score,epoch) To start a tensorboard server go…

126. ArgMax Function

Argmax compares pixels in the same position across channels, and acquires the index of the highest channel. This can be useful for semantic segmentation. Semantic segmentation models outputs the same width and height as the input image and creates a…

125. Converting Arrays To Tensors

There are several ways to convert arrays to torch tensors. import torch import numpy as np data = np.array([1,2,3,4,5,6]) option1 = torch.Tensor(arr) option2 = torch.tensor(arr) option3 = torch.as_tensor(arr) option4 = torch.from_numpy(arr) Option Description 1 Make a Copy and convert array…

124. Preprocessing for Deepstream

I found out why my TensorRT engine model was not working as expected. I messed up with configuring the preprocessing step for Deepstream. When you use Deepstream to run inference, there is a property called net-scale-factor and offsets which you…

122. Extracting Inference Results Using C

A semantic segmentation model outputs a tensor shaped [Batch_size,Channel(Number of Classes),Img_Height,Img_Width] (If using Pytorch), but if you convert that to a TensorRT engine for faster inference, the output is flattened to a 1d array. Therefore the shaping being, [(Batch_size)X(Channel)X(Img_Height)X(Img_Width),] Considering…

121. Unet++

Unet++ is useful when you want to improve image segmentation accuracy. This was first designed for medical use where accuracies are critical. In a nutshell, Unet++ adds convolution layers between skip connection. The original Unet skip connect without any additional…