In some example implementations, a transform may include a Line Graph Transforms (LGT), as shown in FIG. 19. Graphs may be generic mathematical structures consisting of sets of vertices and edges, which are used for modelling affinity relations between the objects of interest. In practice, weighted graphs (for which a set of weights are assigned to edges and potentially to vertices) may provide sparse representations for robust modeling of signals/data. LGTs may improve coding efficiency by providing a better adaptation for diverse block statistics. Separable LGTs may be designed and optimized by learning line graphs from data to model underlying row and column—wise statistics of blocks residual signals, where the associated generalized graph Laplacian (GGL) matrices are used to derive LGTs.
In one implementation, given a weighted graph G (W, V), a GGL matrix may be defined as LE=D?W+V, where W may be the adjacency matrix consisting of non-negative edge weights Wc D may be the diagonal degree matrix, and V may be the diagonal matrix denoting weighted self-loops Vc1, Vc2. The matrix Le can be represented as: