- /*
* Programming Comments:
* Table Of Contents
*/
Current articles
- ../
- How not to detect virtualization
- A brief look into several different methods of detecting virtualization software, and the reasons why you shouldn't try to use any of them.
- How to get started with libxml2
- As a 3rd-party library, libxml2 is quite valuable, but the learning curve is quite steep unless you have a good example. Here is one such example of how to open an XML file, read a value, change a value, and write the file back out.
- How to get started with Valgrind
- How to get started with the Linux tool that detects memory corruption and resource leaks.
- The problem with POSIX semaphores
- Why I cannot use POSIX named semaphores in my applications.
- How to use backtrace and demangle C++ names
- How to log a proper call stack.
- How I use regular expressions
- How to use std::thread (C++0x)
- Information on how to use the new C++0x std::thread.
- How to install and use GCC g++ v4.7 and C++11 on Ubuntu 12.04
- GCC v4.7 supports nearly all of C++11, but it doesn't come standard with Ubuntu.
- C++0x and C++11
- A short slideshow with information on the state of C++ in 2011.
- How to use boost::date_time
- Replacing time_t with boost::date_time::ptime.
- Setting up a Ubuntu Development VM
- A list of things I do when setting up a Ubuntu-based development VM.
- std::this_thread::sleep_for()
- What is the shortest amount of time a thread can sleep.
- How to install Munin
- How to install and configure Munin.
- Valgrind script
- Convenient script used to start Valgrind.
- How to create new irc channels
- Notes on how I create and configure support channels on irc.
- How to use boost::regex
- Regular expressions using boost::regex (and std::regex).
- How to do bandwidth control
- Rate control sounds complicated, but can be done in a few lines of code.
- How to build OpenSSL in Windows
- Building 32-bit and 64-bit versions of OpenSSL for Windows.
- How to use Code39
- Generating Code39 barcodes.
- BeagleBone Black, BeagleBone Green, and Ubuntu
- Installing and configuring Ubuntu on the Beagle Bone Black and Beagle Bone Green ARM7.
- Lines of code
- Using CLOC to get an accurate count of lines of code.
- BeagleBone Black, BeagleBone Green, and Grove
- How to get started with BeagleBone Black, BeagleBone Green, and Grove.
- How to cross compile
- Cross compiling for BeagbleBone Black and BeagleBone Green.
- How to install ccache
- GNU gcc and g++ compiler cache.
- How to setup a BeagleBone Green Wireless
- Setting up a BBGW for the first time.
- How to access 5" LCD cape for BeagleBone
- How to use Seeed Studio's 5" LCD on a BeagleBone.
- How to build and use GoAccess
- Building GoAccess from source and running it to monitor a web server.
- How to revive a BeagleBone with a bad eMMC
- Bringing back to life a BeagleBone that wont boot anymore.
- Setting up a Ubuntu development VM (2016-10 edition)
- An update to an earlier post on setting up a Ubuntu development VM.
- How to setup a honeypot
- Setting up a SSH/Telnet honeypot is simple with Cowrie.
- How to setup a BeagleBone Black Wireless
- Setting up a BBBW for the first time.
- BeagleBone images
- Differences between BeagleBone images.
- Anatomy of a JPEG
- Understanding the internals of JPEG files.
- Size of common types
- Byte size of common variable types.
- PostgreSQL, timestamps, and time zones
- How to use timestamps and time zones in PostgreSQL.
- Parallax's Boe Bot
- Using Parallax's Boe Bot in Ubuntu.
- Introduction To OpenCV
- Part 1 -- how to build your first OpenCV project.
- Colours In OpenCV
- Part 2 -- manipulating colours in OpenCV.
- Edges And Contours In OpenCV
- Part 3 -- finding edges and contours in OpenCV.
- Java And Ubuntu
- Installing Oracle Java in Ubuntu.
- Building OpenCV v4.1.0
- Building OpenCV v4.1.0 on Ubuntu 16.04 and Ubuntu 18.10.
- Generating barcodes with the Zint C API
- Building and Using Zint's C API to generate barcodes and access them from OpenCV.
- Darknet Summary
- Darknet post #1 of 5 -- Summary.
- Creating training images
- Darknet post #2 of 5 -- Creating the training images.
- Installing and building Darknet
- Darknet post #3 of 5 -- Installing and building Darknet.
- Training a neural network
- Darknet post #4 of 5 -- Using Darknet to train a new neural network.
- Accessing Darknet in C and C++
- Darknet post #5 of 5 -- Using the Darknet C API and DarkHelp C++ API.
- Neural Network: Dogs and Cats
- Training a neural network to recognize dogs and cats.
- Artificial Neural Networks
- Various artificial neural networks including some sample images.
- YOLO Neural Network Training with Darknet
- Several observations and test results related to training a YOLOv3 neural network.
- How to get started with Darknet
- Start a new computer vision neural network with Darknet and YOLO.
- Darknet FAQ
- Some important questions and answers related to Darknet and YOLO.
- Cost of cv::imwrite()
- How expensive are calls to cv::imwrite()?
- CUDA and OpenCV
- How to use CUDA and OpenCV.
- Darknet, OpenCV, and FPS
- What kind of throughput can be expected when working with Darknet, OpenCV, and various IoT devices.
- Tesseract and Image Quality
- How does image quality impact tesseract results?
- Tesseract and Image Dimensions
- How does image dimensions impact tesseract results?
- Tesseract and Image Rotation
- How does image rotation impact tesseract results?
- Granada Dataset
- Documents to use when learning Darknet/YOLO object detection and Tesseract OCR.
- Project Nayuki's QR Code Generator and OpenCV
- How to combine qrcodegen.hpp and OpenCV.
- ZInt revisited
- Generating barcodes from within C++ using the ZInt library.
- Rolodex Dataset
- Yet another text dataset to use with Darknet/YOLO annotation format.
- Darknet/YOLO and Image Rotation
- How to use YOLO results to rotate an image and get better results.
- Lego Gears Dataset
- An extremely simple dataset to use with Darknet/YOLO.
- Darknet/YOLO Keypoints
- Keypoints & Skeletons in Darknet V3.
- Darknet/YOLO People-R-People
- Detecting people in images and videos using the Darknet/YOLO People-R-People weights.
- Doxygen output of several projects