[Git][java-team/deepboof][master] 3 commits: Build with libjgraphx-java.

Andrius Merkys (@merkys) gitlab at salsa.debian.org
Fri Jan 3 10:55:39 GMT 2025



Andrius Merkys pushed to branch master at Debian Java Maintainers / deepboof


Commits:
81c12df4 by Andrius Merkys at 2025-01-03T05:17:02-05:00
Build with libjgraphx-java.

- - - - -
6aee3f87 by Andrius Merkys at 2025-01-03T05:17:30-05:00
Bump copyright year.

- - - - -
0656b830 by Andrius Merkys at 2025-01-03T05:22:48-05:00
Update changelog for 0.5.1+ds-2 release

- - - - -


6 changed files:

- debian/changelog
- debian/control
- debian/copyright
- − debian/patches/remove-jgraphx.patch
- − debian/patches/series
- debian/rules


Changes:

=====================================
debian/changelog
=====================================
@@ -1,3 +1,9 @@
+deepboof (0.5.1+ds-2) unstable; urgency=medium
+
+  * Build with libjgraphx-java.
+
+ -- Andrius Merkys <merkys at debian.org>  Fri, 03 Jan 2025 05:22:43 -0500
+
 deepboof (0.5.1+ds-1) unstable; urgency=medium
 
   * Watch GitHub tags.


=====================================
debian/control
=====================================
@@ -13,6 +13,7 @@ Build-Depends:
  libejml-java (>= 0.38),
  libgeoregression-java,
  libjarchivelib-java,
+ libjgraphx-java,
  libprotobuf-java,
  libzip4j-java (>= 2),
  protobuf-compiler,


=====================================
debian/copyright
=====================================
@@ -50,7 +50,7 @@ License: BSD-2-Clause
  license and copyright terms herein.
 
 Files: debian/*
-Copyright: 2019, Andrius Merkys <merkys at debian.org>
+Copyright: 2019-2025, Andrius Merkys <merkys at debian.org>
 License: Apache-2.0
 
 License: Apache-2.0


=====================================
debian/patches/remove-jgraphx.patch deleted
=====================================
@@ -1,289 +0,0 @@
---- a/modules/visualization/build.gradle
-+++ b/modules/visualization/build.gradle
-@@ -4,7 +4,6 @@
- 
-     implementation group: 'de.erichseifert.gral', name: 'gral-core', version: '0.11'
-     implementation "com.beust:jcommander:1.48"
--    implementation 'org.tinyjee.jgraphx:jgraphx:3.4.1.3'
- }
- 
- // Create a jar which contains all the applications
-@@ -21,4 +20,4 @@
-     doLast {
-         archivePath.renameTo(file(archiveName))
-     }
--}
-\ No newline at end of file
-+}
---- a/examples/src/java/ExampleVisualizeNetwork.java
-+++ /dev/null
-@@ -1,36 +0,0 @@
--import deepboof.Function;
--import deepboof.datasets.UtilCifar10;
--import deepboof.graph.FunctionSequence;
--import deepboof.io.torch7.ParseBinaryTorch7;
--import deepboof.io.torch7.SequenceAndParameters;
--import deepboof.tensors.Tensor_F32;
--import deepboof.visualization.DeepVisulization;
--import deepboof.visualization.SequentialNetworkDisplay;
--
--import javax.swing.*;
--import java.awt.*;
--import java.io.File;
--import java.io.IOException;
--import java.util.List;
--
--/**
-- * @author Peter Abeles
-- */
--public class ExampleVisualizeNetwork {
--	public static void main(String[] args) throws IOException {
--		File modelHome = UtilCifar10.downloadModelVggLike(new File("data/torch_models"));
--
--		System.out.println("Load and convert to DeepBoof");
--		SequenceAndParameters<Tensor_F32, Function<Tensor_F32>> sequence =
--				new ParseBinaryTorch7().parseIntoBoof(new File(modelHome,"model.net"));
--
--		FunctionSequence<Tensor_F32,Function<Tensor_F32>> network = sequence.createForward(3,32,32);
--
--		SequentialNetworkDisplay gui = new SequentialNetworkDisplay((List)network.getSequence());
--
--		JScrollPane scrollPane = new JScrollPane(gui);
--		scrollPane.setPreferredSize(new Dimension(400,800));
--
--		DeepVisulization.showWindow(scrollPane,"Network",true);
--	}
--}
---- a/modules/visualization/src/main/java/deepboof/visualization/SequentialNetworkDisplay.java
-+++ /dev/null
-@@ -1,230 +0,0 @@
--/*
-- * Copyright (c) 2016, Peter Abeles. All Rights Reserved.
-- *
-- * This file is part of DeepBoof
-- *
-- * Licensed under the Apache License, Version 2.0 (the "License");
-- * you may not use this file except in compliance with the License.
-- * You may obtain a copy of the License at
-- *
-- *   http://www.apache.org/licenses/LICENSE-2.0
-- *
-- * Unless required by applicable law or agreed to in writing, software
-- * distributed under the License is distributed on an "AS IS" BASIS,
-- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-- * See the License for the specific language governing permissions and
-- * limitations under the License.
-- */
--
--package deepboof.visualization;
--
--import com.mxgraph.swing.mxGraphComponent;
--import com.mxgraph.util.mxConstants;
--import com.mxgraph.view.mxGraph;
--import deepboof.Tensor;
--import deepboof.forward.*;
--import deepboof.graph.Node;
--
--import javax.swing.*;
--import java.awt.*;
--import java.awt.event.MouseAdapter;
--import java.awt.event.MouseEvent;
--import java.util.HashMap;
--import java.util.List;
--import java.util.Map;
--
--/**
-- * @author Peter Abeles
-- */
--// TODO click on node to show configuration
--	// TODO visualize data of selected
--public class SequentialNetworkDisplay extends JPanel {
--
--	mxGraphComponent graphComponent;
--	mxGraph graph;
--	Map<String,Node> nameToNode = new HashMap<>();
--	JTextPaneAA textConfig = new JTextPaneAA();
--
--	JPanel visualizePanel = new JPanel();
--
--	public SequentialNetworkDisplay( List<Node<?,?>> list ) {
--		setLayout(new BorderLayout());
--		graph = new mxGraph();
--		Object parent = graph.getDefaultParent();
--
--		graph.getModel().beginUpdate();
--		try
--		{
--			int nodeWidth = 140;
--			int nodeHeight = 35;
--
--			int y = 0;
--
--			Node<?,?> prev = list.get(0);
--			Object prevVertex = graph.insertVertex(parent, null, getTitle(prev),20, y, nodeWidth,nodeHeight);
--			nameToNode.put(getTitle(prev),prev);
--			setCellColor(prev,prevVertex);
--			y += nodeHeight+20;
--
--			for (int i = 1; i < list.size(); i++) {
--				Node<?,?> curr = list.get(i);
--				String title = getTitle(curr);
--				Object currVertex = graph.insertVertex(parent, null, title, 20, y, nodeWidth,nodeHeight);
--				nameToNode.put(title,curr);
--				setCellColor(curr,currVertex);
--
--				graph.insertEdge(parent, null, null, prevVertex, currVertex);
--
--
--				prev = curr;
--				prevVertex = currVertex;
--
--				y += nodeHeight+20;
--			}
--		}
--		finally
--		{
--			graph.getModel().endUpdate();
--		}
--
--		JPanel right = new JPanel();
--		right.setLayout(new BoxLayout(right, BoxLayout.Y_AXIS));
--
--		textConfig.setMinimumSize(new Dimension(200,300));
--		textConfig.setPreferredSize(new Dimension(200,300));
--		Font font = new Font("monospaced", Font.PLAIN, 12);
--		textConfig.setFont(font);
--
--//		visualizePanel.setMinimumSize(new Dimension(400,400));
--//		visualizePanel.setPreferredSize(new Dimension(400,400));
--
--		right.add(textConfig);
--		right.add(visualizePanel);
--
--		graphComponent = new mxGraphComponent(graph);
--		add(graphComponent,BorderLayout.CENTER);
--		add(right,BorderLayout.EAST);
--
--		graphComponent.getGraphControl().addMouseListener(new ClickHandler());
--	}
--
--	private void setCellColor( Node node , Object cell ) {
--
--		String color = "DDDAFF";
--
--		if( SpatialConvolve2D.class.isAssignableFrom(node.function.getClass())) {
--			color = "#DDDABB";
--		} else if( SpatialBatchNorm.class.isAssignableFrom(node.function.getClass()) ||
--				FunctionBatchNorm.class.isAssignableFrom(node.function.getClass())
--				) {
--			color = "#EEFABB";
--		} else if( FunctionLinear.class.isAssignableFrom(node.function.getClass())) {
--			color = "#FFDADD";
--		} else if( ActivationReLU.class.isAssignableFrom(node.function.getClass())) {
--			color = "#DAFFDD";
--		}
--
--		graph.setCellStyles(mxConstants.STYLE_FILLCOLOR, color, new Object[]{cell});
--
--	}
--
--	private String getTitle(Node<?, ?> curr) {
--		return curr.function.getClass().getSimpleName()+"\n"+curr.name;
--	}
--
--	private class ClickHandler extends MouseAdapter {
--		@Override
--		public void mousePressed(MouseEvent e) {
--			Object cell = graphComponent.getCellAt(e.getX(), e.getY());
--
--				if (cell != null)
--				{
--					String label = graph.getLabel(cell);
--					System.out.println("cell="+graph.getLabel(cell));
--
--					Node n = nameToNode.get(label);
--					if( n == null )
--						return;
--
--					String info = "";
--					visualizePanel.removeAll();
--					if( n.function instanceof SpatialConvolve2D ) {
--						info += configString((SpatialConvolve2D)n.function);
--
--
--						List parameters = n.function.getParameters();
--						if( parameters != null ) {
--							Kernel2DGridPanel vis = new Kernel2DGridPanel((Tensor)parameters.get(0),60,60);
--							visualizePanel.add(vis);
--						}
--					} else if( n.function instanceof FunctionBatchNorm ) {
--						info += configString((FunctionBatchNorm)n.function);
--					} else if( n.function instanceof SpatialMaxPooling ) {
--						info += configString((SpatialMaxPooling)n.function);
--					}
--					visualizePanel.invalidate();
--
--					final String finfo = info;
--
--					SwingUtilities.invokeLater(new Runnable() {
--						@Override
--						public void run() {
--							textConfig.setText(finfo);
--						}
--					});
--				}
--		}
--	}
--
--	private String configString( SpatialConvolve2D operator ) {
--		ConfigConvolve2D config = operator.getConfiguration();
--
--		String out = "";
--		out += String.format("Number of kernels   %d\n",config.getTotalKernels());
--		out += configString(config);
--		out += configString(operator.getPadding());
--
--		return out;
--	}
--
--	private String configString( FunctionBatchNorm operator ) {
--
--		String out = "";
--		out += "gamma-beta          "+operator.hasGammaBeta()+"\n";
--		return out;
--	}
--
--	private String configString( SpatialMaxPooling operator ) {
--
--		String out = "";
--		out += configString(operator.getConfiguration());
--		return out;
--	}
--
--	private String configString( ConfigSpatial config ) {
--
--		String out = "";
--		out += String.format("Period X            %d\n",config.periodX);
--		out += String.format("       Y            %d\n",config.periodY);
--		out += String.format("Window width        %d\n",config.HH);
--		out += String.format("       height       %d\n",config.WW);
--		return out;
--	}
--
--	private String configString( SpatialPadding2D padding ) {
--
--		String out = "\n";
--		out += padding.getClass().getSimpleName()+"\n";
--
--		if( padding instanceof ConstantPadding2D) {
--			ConstantPadding2D p = (ConstantPadding2D)padding;
--			out += String.format("   value         %6.2f\n",p.getPaddingValue());
--		}
--
--		out += String.format("      x0           %2d\n",padding.getPaddingCol0());
--		out += String.format("      y0           %2d\n",padding.getPaddingRow0());
--		out += String.format("      x1           %2d\n",padding.getPaddingCol1());
--		out += String.format("      y1           %2d\n",padding.getPaddingRow1());
--		return out;
--	}
--}


=====================================
debian/patches/series deleted
=====================================
@@ -1 +0,0 @@
-remove-jgraphx.patch


=====================================
debian/rules
=====================================
@@ -2,7 +2,7 @@
 
 include /usr/share/dpkg/pkg-info.mk
 
-export CLASSPATH = /usr/share/java/ddogleg.jar:/usr/share/java/jarchivelib.jar:/usr/share/java/junit-jupiter-api.jar:/usr/share/java/protobuf.jar:/usr/share/java/zip4j.jar
+export CLASSPATH = /usr/share/java/ddogleg.jar:/usr/share/java/jarchivelib.jar:/usr/share/java/jgraphx.jar:/usr/share/java/junit-jupiter-api.jar:/usr/share/java/protobuf.jar:/usr/share/java/zip4j.jar
 export JAVA_HOME = /usr/lib/jvm/default-java
 
 UPSTREAM_VERSION = $(DEB_VERSION_UPSTREAM:%+ds=%)



View it on GitLab: https://salsa.debian.org/java-team/deepboof/-/compare/5e4a855714102d78a3f5607ef867f4c08ddf9d83...0656b8306f836115273afeea9b430316baa4f482

-- 
View it on GitLab: https://salsa.debian.org/java-team/deepboof/-/compare/5e4a855714102d78a3f5607ef867f4c08ddf9d83...0656b8306f836115273afeea9b430316baa4f482
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-java-commits/attachments/20250103/608a9721/attachment.htm>


More information about the pkg-java-commits mailing list