text:
Emotion Recognition by Two View SVM_2K Classifier on Dynamic Facial Expression Features
Hongying Meng, B Romera-Paredes, N Bianchi-Berthouze
in FERA 2011 - FG 2011 Workshop on Facial Expression Recognition and Analysis Challenge, Conference paper (text), Santa Barbara, California, USA
A novel emotion recognition system has been proposed for classifying facial expression in videos. Firstly, two types of basic facial appearance descriptors were extracted. The first type of descriptor, called Motion History Histogram (MHH), was used to detect temporal changes of each pixels of the face. The second type of descriptor, called Histogram of Local Binary Patterns (LBP), was applied to each frame of the video and was used to capture local textural patterns. Secondly, based on these two basic types of descriptors, two new dynamic facial expression features called MHH_EOH and LBP_MCF were proposed. These two features incorporate both dynamic and local information. Finally, the Two View SVK_2K classifier was built to integrate these two dynamic features in an efficient way. The experimental results showed that this method outperformed the baseline results set by the FERA'11 challenge.
DOI: 10.1109/FG.2011.5771362


Imagine you are driving a car down a lonely highway at night. You have no idea where you're going or why you started driving in the first place. Because the sun isn't out, and because you don't have a compass, you have no idea which direction you're going. It's disorienting, but you have no choice but to keep driving- because at least if you keep driving, you know you'll end up somewhere.
Then, all of a sudden, you see it: a green sign on the side of the road that reads MILE 32.
That seems encouraging, but a few minutes later, you see another sign that says MILE 33.
Those words have been on my mind lately because of what has been going on in the markets. As you probably know, there has been a lot of volatility in recent weeks. Many investors are worried about what the future has in store, and what all this volatility means for their hard-earned retirement savings.
Wish you could withdraw money from your 401(k)?
These days, many pre-retirees save for retirement primarily through an employer-provided 401(k). 401(k) accounts can be a great savings tool, especially if your employer matches your contributions. But there are occasions when relying on a 401(k) account isn't the best option.
For example, some employers don't match their employees' contributions, which takes a major shine off these types of accounts. Other 401(k)s have a narrow range of investment options to choose from, leaving employees dissatisfied and frustrated with the results they've been getting. Many of these people would love an alternative, but don't feel like there is one.
As Memorial Day approaches, and as we remember our national and perhaps personal losses, I would like to share with you the history behind the holiday.
The first quarter of 2015 proved to be one where the benefits of a diversified portfolio flexed its considerable muscle. Following 2014, where many asset classes trailed the U.S. Large Cap stock market, the first quarter of 2015 showed a change in leadership (according to return) among asset classes. The Standard & Poor's 500 Index, the darling of many return-chasing investors, increased just 0.95 percent in the first quarter, disappointing when compared to other stock indexes that performed significantly better (see chart below). For instance, U.S. Small Caps, as measured by the Russell 2000, were up 4.32 percent, while International Developed Markets as measured by the MSCI EAFE Index were up 4.88 percent. Even bonds outperformed U.S. Large Cap stocks in the first quarter of 2015, posting a positive 1.61 percent return measured by the Barclays U.S. Aggregate Bond Index.
Being a great investor is incredibly hard. Don't let anyone tell you otherwise. To illustrate this, we took a well-known investment and examined it over two time periods against the Standard and Poor's 500 Index. The results were fascinating.
Can Your Generosity as a Grandparent Come Back to Haunt You?
Many of my clients are grandparents, while others look forward to the advent of the next generation of their bloodline in the not too distant future. Those that are already grandparents are convinced their offspring's offspring are the most brilliant and talented the world has ever known. One can only hope these youngsters bring those traits with them right into adulthood. However, the one quality or attitude you as a grandparent do not want your progeny's progeny to bring into adulthood is entitlement, which can lead to laziness. You want them to put all that inherited brilliance to work, and have a wonderful life.


text:
\section{Motivation and significance}
\label{sec:motivation-significance}

Ultrasound (US) imaging is one of the most widely used medical imaging modalities, because it is portable, affordable and safe, and can be used to gain insight about most body organs. Moreover, US is, unlike other common modalities such as Computed Tomography (CT), Magnetic Resonance Imaging (MRI) or X-ray, a real-time modality by design: to use an ultrasound system the operator needs to interpret the real-time stream of images shown on the display and use the interpreted information to guide the US transducer to the desired view. As the examination progresses, the operator typically stores a few tens of static images or short clips for reporting or further investigation. Importantly, the main clinical use of US images is during the procedure. This is because in diagnostic imaging, diagnosis is done by the operator as the images are being acquired and interpreted. In interventional imaging, surgical tools are guided using images in real-time image.

US image analysis is a very active area of research~\cite{Che2017,Meiburger2018,Liu2019}, and most published work has focused in the `offline' analysis of images and clips stored by the operator as described above. However, real-time analysis of US image streams can potentially transform the way ultrasound is utilised since it can provide the operator with extended information and guidance \emph{during} the examination, which as pointed out before offers the biggest potential benefit.

We identified three main reasons why limited work has been done on real-time US image analysis: firstly, collecting real-time data is not supported by most US systems and requires external equipment, such as a video framegrabber; the few systems which do support real-time streaming of DICOM (Digital Imaging and Communications in Medicine, an international standard for storage and transmission of medical images - \url{https://www.dicomstandard.org}) frames require a proprietary protocol to access the image stream. Secondly, existing research tools used for implementing real-time image analysis methods are designed to perform a single computational task on the stream of images, however real-time analysis often requires a number of tasks to run in succession (or in parallel) without compromising the real-time performance. And thirdly, in order to carry out translational research, the results of the real-time analysis must be shown to the operator in a way that does not require switching between displays during the scan, as this would be unfeasible. In this paper we describe \emph{PRETUS: Plugin-based Real Time UltraSound}, a software that addresses these three challenges while remaining a simple, lightweight tool that can be easily extended via plug-ins-- independent pieces of software that can be built separately to the main software and can be added dynamically to extend its functionality.

A number of research softwares have been proposed over the last years supporting real-time ultrasound imaging for research purposes. Of those, the most widely used are Slicer IGT \cite{ungi2016open} and MITK IGT \cite{franz2012simplified}. Slicer IGT was one of the first software tools to enable easy implementation of image guided intervention software, by integrating existing navigation tools (e.g. the PLUS toolkit --\url{www.plustoolkit.org}, and OpenIGTLink \cite{OpenIGTLink2009}) into Slicer (\url{www.slicer.org}), a general-purpose medical imaging software written in C\nolinebreak\hspace{-.05em}\raisebox{.4ex}{\tiny\bf +}\nolinebreak\hspace{-.10em}\raisebox{.4ex}{\tiny\bf +}. Slicer IGT is designed as a layer on top of PLUS (which connects and manages data from sensors and image sources) providing a wide, extensible collection of algorithms, and on top of which an application specific GUI and logic can be built. Conveniently, Slicer's functionality can be extended by custom Python-scripted modules. MITK IGT was published later, and followed a similar paradigm: incorporate image guided tools into MITK, a general purpose image processing software. MITK does have a Python module that allows to query data using Python commands.

As opposed to Slicer IGT and MITK IGT, PRETUS is a minimal software that has no functionality on its own, other than connecting plug-ins and ensuring that they can run concurrently and communicate between them. All the functionality is brought in by plug-ins, that are built as dynamic libraries loaded at run-time. This facilitates a crucial paradigm shift with respect to MITK IGT or Slicer IGT:  instead of aiming at being compatible with the greatest number of devices, PRETUS is conceived to be as independent as possible from specific devices, by delegating most functionality to plug-ins, so that if required a self-contained device specific plug-in can be implemented.
This design paradigm also promotes that functionality is modular, and that each plug-in does a simple task on a specific input and produces a specific output. Additionally, this allows a very flexible interconnection of plug-ins, for example enabling multiple inputs, outputs, and plug-ins interconnected in arbitrary ways as defined by the user that can be changed during the imaging session.

PRETUS was developed within the iFIND project (\url{www.ifindproject.com}) to collect data and test methods in over 500 pregnant patients. The software has been used for 2D and 3D ultrasound applications. Methods that have used PRETUS in 3D imaging applications include 3D whole-fetus imaging by fast registration of a sequence of 3D ultrasound volumes in real time \cite{Gomez2017FastReg,Gomez2019Manifold},  full placenta imaging by fusion and segmentation of the placenta from multiple 3D ultrasound views \cite{Zimmer2019Placenta,Zimmer2020Placenta}, and whole fetal head imaging using atlas-registration and fusion \cite{Wright2018LSTM,Wright2019Head}. PRETUS has also been used in real time 2D applications, such as standard fetal plane detection\cite{baumgartner2017sononet}, automatic biometric measurements in standard fetal planes \cite{Sinclair2018,Budd2019Head}, and automatic detection and localization of fetal organs from ultrasound images \cite{Toussaint2018Weakly}. PRETUS is also being used in research towards implementing AI-enabled ultrasound methods in low and middle income countries in the context of the VITAL project (\url{http://vital.oucru.org/}), specifically for lung ultrasound in dengue patients \cite{kerdegari2021automatic}.

The software is used via a command-line executable where the user defines a real-time pipeline at run time. The specific experimental setting will depend on the desired pipeline, however a typical setting would be to define an input imaging source (e.g. a file from disk or a framegrabber), a processing task (for example, detecting standard planes) and an output task (e.g. display the results on a screen). More examples and use cases are described in more detail in Sec. \ref{sec:examples}.

In summary, PRETUS is a lightweight, extensible software that addresses the three challenges outlined above as follows: firstly, by enabling the collection of real-time US data from virtually any machine using the video output. Secondly, by enabling real-time pipelines of multiple image processing and visualization steps concurrently. And thirdly, by showing both the live imaging stream, information and outputs from the different processing tasks in a live, compact and unified way. Moreover, PRETUS can take pre-recorded videos or images and play them back at acquisition frame-rate to simulate live sessions in the lab.

\section{Software description}
\label{sec:software_description}

PRETUS is a command-line software, built using open-source software and tested in Linux (all dependencies are cross-platform, but limited testing has been carried out in Windows and Mac) to facilitate research on real-time ultrasound imaging. The software works by establishing a real-time processing pipeline with an arbitrary number of elements (plug-ins). The plug-ins in the pipeline carry out specific functions such as to generate a real-time stream of data (for example from an ultrasound video source), to apply real-time algorithms on the data stream (e.g. implemented via deep neural networks), and to output the result (for example by visualising the processed images, or the metadata, or saving both to a file).

\subsection{Software Architecture}
\label{sec:software_architecture}

The software is implemented as a lightweight \texttt{QApplication} (\url{https://www.qt.io/}), which interconnects and starts a number of plug-ins in a pipeline. Figure \ref{fig:pipeline_overview} shows an illustration of the pipeline with the plug-ins and the data transmission lines, or data \emph{Streams} described later in Sec. \ref{sec:streams}.

\begin{figure}[htb!]
    \centering
    \includegraphics[width=\linewidth]{overview_pipeline.png}
    \caption{Overview of the plug-in pipeline concept. Each box represents a plug-in, inserted into the execution pipeline in order from left to right. The first plug-in (A) will normally be the imaging source (e.g. frame grabber or file reader) and the last plug-in will normally be for visualization (as illustrated here, integrating widgets from all plug-ins). Configuration is transmitted downstream (illustrated by the configuration line on top) and data is transmitted from each plug-in downstream using the Streams concept (Sec. \ref{sec:streams}). }
    \label{fig:pipeline_overview}
\end{figure}

The software is organised into four modules:
\begin{itemize}
    \item The PRETUS app, in the \texttt{App} folder. The application first loads and instantiates the plug-ins (implemented as dynamic libraries) that are found in the plug-ins folder (or folders) at run-time, also passing any command-line arguments to every plug-in. All plug-ins inherit from the \texttt{Plugin} class, which implements asynchronous callbacks (using QT signals and slots) to transmit configuration information and data between plug-ins. These transmission lines (here referred to as \emph{Streams} and described in more detail in Sec. \ref{sec:streams}) are established, and finally the plug-ins are \emph{activated}, starting the execution loop for the entire plug-in pipeline.
    \item The \texttt{Common} module, which includes common classes, inherited from the iFIND project, to manage data. The main class in this module is the \texttt{ifind::Image} class which is used in PRETUS to encapsulate both images and metadata, and is transmitted through the signal/slots.
    \item The \texttt{PluginLib} library, which implements all classes that plug-ins need to inherit (mainly \texttt{Plugin}, \texttt{Worker} and \texttt{QtPluginWidgetBase}). This library is described in more detail in Sec.~\ref{sec:plugins}.
    \item The \texttt{Plugins} folder, which includes some basic plug-ins readily released with the software. The plug-ins included with this release are further described through examples in Sec. \ref{sec:examples} and in \ref{sec:app:plugins}.
\end{itemize}

Since the main functionality is brought in via the plug-ins, in the following we describe the architecture of the plug-ins in more detail.

\subsection{Software Functionalities}
\label{sec:software_functionality}

PRETUS defines, at run time, a pipeline of imaging plug-ins that in sequence process a stream of images. The sources of the imaging data, the processes themselves and whether the outcomes are displayed and/ or stored depends on the plug-ins used. In terms of performance, PRETUS is designed to satisfy two main requirements. First, plug-ins can be executed concurrently, i.e., the work of each plug-in runs in a separate non-blocking thread. Second, plug-ins must run as close as possible to real-time. The work of each plug-in runs at a user-defined frame rate, and the latest available frame is processed when a previous computations has been completed. To this end, PRETUS will drop frames at the input of a plug-in until the plug-in is ready to accept a new one. This behaviour can be overridden if a specific plug-in does not need real-time performance and processing of all frames is sought.

The two above functionalities are implemented through two mechanisms: the plug-in system, and the \emph{Streams}.

\subsubsection{Plug-in System}
\label{sec:plugins}

Plug-ins are independent programs, built as dynamic libraries, and are loaded into PRETUS at run time. All plug-ins take images as input, yield images at the output, and normally delegate the processing task to a \texttt{Worker} class. Plug-ins can also have two complementary means of displaying information and outputs: (i) by implementing a widget that will typically show graphs, numbers and text, and allow for input through sliders and other widgets; and (ii) by implementing an image widget that will display images, overlays, masks, etc. Both the widget and the image widget must inherit from the \texttt{QtPluginWidgetBase} class in \texttt{PluginLib}. Two examples of how to build plug-ins for PRETUS are outlined in Sec. \ref{sec:examples} and detailed in the repository (\url{https://github.com/gomezalberto/pretus}).

The basic operation of a plug-in in the pipeline is as follows:
\begin{enumerate}
    \item The plug-in receives an input image from previous plug-ins in the pipeline. The image is also passed on to the next plug-in.
    \item If the image belongs to the Stream(s) that this plug-in accepts, the image is sent to the plug-in's timer.
    \item If the Worker is not processing the previous image, the timer sends the latest image to the worker in a separate thread. \item The main processing task of the plug-in is carried out in the Worker. When finished, the output image is sent to the plug-in and the timer is notified that the worker is ready to take a new image.
    \item The plug-in sends the output image through the plug-in's output Stream. Downstream plug-ins are now able to use it.
    \item If the plug-in has a \texttt{Widget} and/or an \texttt{ImageWidget}, the output image is sent to them for display. The user can act on any inputs available in the widget (e.g. sliders, checkboxes, etc) to make changes in the plug-in behaviour during the imaging session.
\end{enumerate}

We recommend (as we do in all plug-ins included in this repository) that any output image resulting from a plug-in's task is added as a layer to the input image. Because images are transmitted as pointers, no data will be duplicated in memory, so this mechanism is efficient. Additionally, this allows to always track what image was used to produce what result, even if different Streams operate at different rates and while maintaining real-time performance.

\subsubsection{Streams}
\label{sec:streams}
In this context, a \emph{Stream} refers to every image sequence produced by a plug-in and accessible to all other downstream plug-ins in the pipeline. Every stream is named after the plug-in that generates it, with the exception of the plug-ins that generate data at the source, also called input plug-ins.

Input plug-ins capture imaging data and transmit it downstream the pipeline. In the current release of PRETUS, three input plug-ins are provided: the Video Manager plug-in, that can read and transmit frames from a video file; the Frame Grabber plug-in, that reads video output from an ultrasound system and transmits it frame by frame; and the File Manager, that reads images from a folder system and transmits them at a given framerate. These type of plug-ins must return \texttt{true} via the \texttt{IsInput()} plug-in method. The Stream transmitted by an input plug-in is called `Input' regardless of the plug-in name. Multiple input plug-ins can be used simultaneously, in which case only the first will have an Stream called `Input', and the rest (in order of appearance in the pipeline) will be called `Input1', `Input2', etc. The rest of the plug-ins in the pipeline will by default accept images from `Input' but can be set to use other inputs with the command-line option \texttt{--<pluginname>\_stream Input1} or using the menu in the widget during the imaging session.

\subsubsection{Building a plug-in}

Plug-ins are dynamic libraries written in C\nolinebreak\hspace{-.05em}\raisebox{.4ex}{\tiny\bf +}\nolinebreak\hspace{-.10em}\raisebox{.4ex}{\tiny\bf +}, that link against the \texttt{Plugin} library provided with PRETUS. The processing task carried out by the plug-in can be implemented in C\nolinebreak\hspace{-.05em}\raisebox{.4ex}{\tiny\bf +}\nolinebreak\hspace{-.10em}\raisebox{.4ex}{\tiny\bf +}, or in Python. To illustrate the two types of plug-ins, the repository includes two sample plug-ins in the \texttt{Plugins} folder designed and documented to serve as templates and tutorials for developers to implement their C\nolinebreak\hspace{-.05em}\raisebox{.4ex}{\tiny\bf +}\nolinebreak\hspace{-.10em}\raisebox{.4ex}{\tiny\bf +} plug-ins (\texttt{Plugin\_CppAlgorithm}) and their Python plug-ins (\texttt{Plugin\_PythonAlgorithm}).

\section{Illustrative Examples}
\label{sec:examples}

In this section we describe three usage examples: first, an example of real-time blurring and thresholding of an ultrasound video. These plug-ins are not designed with an intended application in mind other than exemplifying the design and performance of PRETUS. Second, an example showing the integration of SonoNet~\cite{baumgartner2017sononet}, a deep neural network for the automatic identification of anatomical fetal standard view planes, into PRETUS. And third, blurring, thresholding and SonoNet working in the same pipeline, where we evaluate the real-time performance with concurrent C\nolinebreak\hspace{-.05em}\raisebox{.4ex}{\tiny\bf +}\nolinebreak\hspace{-.10em}\raisebox{.4ex}{\tiny\bf +} and Python plugins. Videos showing the three examples in action is provided in the supplementary material, and a screen shot of these videos is shown in Fig. \ref{fig:plugins}.

\begin{figure}[htb!]
    \centering
    \begin{subfigure}[t]{0.32\linewidth}
         \centering
         \includegraphics[width=\linewidth]{SV1.png}
         \caption{Thresholding and blurring. }
         \label{fig:plugins:blur-threshold}
     \end{subfigure}
     \hfill
    %
    \begin{subfigure}[t]{0.32\linewidth}
         \centering
         \includegraphics[width=\linewidth]{SV2.png}
         \caption{Standard plane detection. }
         \label{fig:plugins:sononet}
     \end{subfigure}
     \hfill
    %
    \begin{subfigure}[t]{0.32\linewidth}
         \centering
         \includegraphics[width=\linewidth]{SV3.png}
         \caption{Three concurrent plug-ins.}
         \label{fig:plugins:sononet}
     \end{subfigure}
     \hfill
    %
    \caption{Screenshot of three PRETUS pipelines. (a) pipeline where the input image is shown in the top left, the blurred image on the top right, and the thresholded version of the blurred image, overlaid onto the input, on the bottom left. (b) capture of the Standard Plane Detection plug-in integrating SonoNet in PRETUS where a `Head' standard view has been detected. (c) three plug-ins (blurring, thresholding and Sononet) working concurrently. All examples are described in Sec. \ref{sec:examples}, and illustrated in the videos in the supplementary material. }
    \label{fig:plugins}
\end{figure}

\subsection{Blurring and Thresholding}

The purpose of this example is to illustrate the connection of the output of a plug-in to the input of another plug-in, and the visualization of the results. To this end, we build a pipeline with four plugins: the video manager plug-in (Sec. \ref{sec:plugin:videomanager}) as the input plug-in, which reads a video from file and transmits each frame through the pipeline. Then, the Python Algorithm plug-in (Sec. \ref{sec:plugin:python}) takes the video frames and applies a blurring operation. The blurred frame is input to the Cpp Algorithm plug-in (Sec. \ref{sec:plugin:cpp}), which performs a binary thresholding operation on the blurred image. Finally, the GUI plug-in (Sec. \ref{sec:plugin:gui}) takes all widgets from the three previous plug-ins and displays them on screen.

All plug-ins accept, by default, images from the \texttt{Input} stream. This stream is generated by any of the input plug-ins (video manager, frame grabber and file manager) which are first in the pipeline. For the Cpp Algorithm plug-in to receive the output of the Python Algorithm plug-in as input, we use the optional argument \texttt{--cppalgorithm\_stream pythonalgorithm} (or select the input from the Python Algorithm, and the last layer, in the widget). In addition, the Python Algorithm adds the blurred image as an additional layer to its input image, and the Cpp Algorithm plug-in needs to be informed of what layer from the \texttt{pythonalgorithm} stream to use, in this case the last one, with the command line argument \texttt{--cppalgorithm\_layer -1}. The complete command line call for this example is:
\begin{lstlisting}[language=bash,
basicstyle=\fontfamily{pcr}\selectfont\scriptsize\color{white},
                    backgroundcolor=\color{darkgray},
                    frame=single,]
$ ./bin/pretus -pipeline "videomanager>pythonalgorithm>cppalgorithm>gui" \
  --videomanager_input ~/data/video.MP4 \
  --cppalgorithm_stream pythonalgorithm \
  --cppalgorithm_layer -1
\end{lstlisting}
The program will launch, display information about the plug-ins used as below, and open a window with the GUI (Fig. \ref{fig:plugins}, left, and Video SV1).

\begin{lstlisting}[language=bash,
                    basicstyle=\fontfamily{pcr}\selectfont\tiny\color{white},
                    backgroundcolor=\color{darkgray},
                    frame=single,]
Loading plug-ins from <folder>
  0 [Plugin] loading <folder>/libPlugin_filemanager.so...	File manager(0) loaded
  1 [Plugin] loading <folder>/libPlugin_imageFileWriter.so...	Image file writer(1) loaded
  2 [Plugin] loading <folder>/libPlugin_videomanager.so...	Video manager(2) loaded
  3 [Plugin] loading <folder>/libPlugin_CppAlgorithm.so...	Cpp Algorithm(3) loaded
  4 [Plugin] loading <folder>/libPlugin_framegrabber.so...	Frame grabber(4) loaded
  5 [Plugin] loading <folder>/libPlugin_PythonAlgorithm.so...	Python Algorithm(5) loaded
  6 [Plugin] loading <folder>/libPlugin_planeDetection.so...	Standard plane detection(6) loaded
  7 [Plugin] loading <folder>/libPlugin_GUI.so...	GUI(7) loaded
Video manager -> Python Algorithm
Python Algorithm -> Cpp Algorithm
Cpp Algorithm -> GUI
VideoManager::Initialize() - loading video ~/data/video.MP4... loaded, FPS = 60, frames = 110842
Start acquisition
Manager::exitLoop() - Enter 'quit' to exit:
>>
\end{lstlisting}
The program will exit by entering `quit' in the command line.

\subsection{SonoNet integration}
In this example we illustrate the integration of SonoNet \cite{baumgartner2017sononet}, a model to detect standard fetal planes for the 20 week fetal screening ultrasound examination. The SonoNet model is incorporated into pretus via the Standard Plane Detection plug-in.

Since SonoNet is implemented in a frame by frame basis, in our implementation we allow the user to use a temporal average to leverage high acquisition frame rates to stabilise the plane prediction. The number of frames to be averaged can be set by command line argument and modified in real time via a slider in the widget. With this, the resulting call is:
\begin{lstlisting}[language=bash,
basicstyle=\fontfamily{pcr}\selectfont\scriptsize\color{white},
                    backgroundcolor=\color{darkgray},
                    frame=single,]
$ ./bin/pretus -pipeline "videomanager>standardplanedetection>gui" \
  --videomanager_input ~/data/video.MP4 --standardplanedetection_taverage 20
\end{lstlisting}
The resulting display and interactions can be seen in Fig. \ref{fig:plugins}, middle, and Video SV2.

\subsection{All plug-ins in the same pipeline}

The purpose of this example is to demonstrate that multiple C\nolinebreak\hspace{-.05em}\raisebox{.4ex}{\tiny\bf +}\nolinebreak\hspace{-.10em}\raisebox{.4ex}{\tiny\bf +} and Python plug-ins can work concurrently, and to evaluate to the effect of delay and execution time of each plug-in in the performance of the entire pipeline and the overall delay with respect to the input stream. We use the Video Manager plug-in as input, and use the Python Algorithm, the Cpp Algorithm and SonoNet in the pipeline, followed by the GUI plug-in. To illustrate the behaviour of frame-dropping at high delays, we introduce an artificial variable wait time in the Python Algorithm plug-in. All plug-ins are provided with the command-line option \texttt{<pluginname>\_time 1}, which measures the execution time of the worker. We run the pipeline in five configurations: 1) with all plug-ins using the \texttt{Input} stream; and 2) to 5), with plug-ins connected in sequence, using as input the output stream of the previous plug-in, and a plug-in frame rate (identical for all three plug-ins) of 10Hz (configuration 2), 20Hz (configuration 3), 30Hz (configuration 4), and 40Hz (configuration 5). We also measure execution times for all plug-in. The execution call for the first configuration is:
\begin{lstlisting}[language=bash,
basicstyle=\fontfamily{pcr}\selectfont\tiny\color{white},
                    backgroundcolor=\color{darkgray},
                    frame=single,]
$ ./bin/pretus -pipeline "ideomanager>pythonalgorithm>cppalgorithm>standardpanedetection>gui" \
--videomanager_input ~/data/video.MP4 \
--standardplanedetection_time 1 --pythonalgorithm_time 1 --cppalgorithm_time 1 \
 --pythonalgorithm_delay 0.1
\end{lstlisting}
For configurations 2) to 5) (replacing the frame rate value):
\begin{lstlisting}[language=bash,
basicstyle=\fontfamily{pcr}\selectfont\tiny\color{white},
                    backgroundcolor=\color{darkgray},
                    frame=single,]
$ ./bin/pretus -pipeline "videomanager>pythonalgorithm>cppalgorithm>standardpanedetection>gui" \
--videomanager_input ~/data/video.MP4 --videomanager_verbose 1 \
--standardplanedetection_time 1 --pythonalgorithm_time 1 --cppalgorithm_time 1 \
--pythonalgorithm_framerate 10 --pythonalgorithm_delay 0.1 \
--cppalgorithm_framerate 10 --standardplanedetection_framerate 10 \
--cppalgorithm_stream pythonalgorithm --cppalgorithm_layer -1 \
--standardplanedetection_stream cppalgorithm  --standardplanedetection_layer -1
\end{lstlisting}
An example showing the visualization for configuration 2 can be seen in Fig. \ref{fig:plugins}, right, and in Video SV3. The table \ref{tab:time-results} shows the average $\pm$ standard deviation execution time per plug-in, for different wait times introduced in the first plug-in in the sequence (the Python Algorithm plug-in -PA).  These wait times (from 0 to 200 ms, as indicated in the table) have no effect in the execution time of other plug-ins downstream because each is executed on a separate thread.

\begin{table}[!htb]
\begin{tabular}{|c|c|c|c|c|c|c|}
\hline
& Wait & 0ms & 50ms & 100ms & 150ms & 200ms \\ \hline
\multirow{3}{*}{Time (ms)} & PA & 26.2$\pm$5 & 76.7$\pm$7 & 124.4$\pm$3 & 173.6$\pm$1 & 223.9$\pm$1 \\
& CA & 0.9$\pm$1 & 0.9$\pm$1 & 0.8$\pm$1 & 0.8$\pm$0 & 0.7$\pm$1 \\
& SPD & 17.6$\pm$6 & 17.7$\pm$9 & 15.0$\pm$3 & 14.6$\pm$1 & 14.8$\pm$2 \\
\hline
\end{tabular}
\caption{Average $\pm$ standard deviation of the execution time, in m
, of each plug-in: Python Algorithm (PA), Cpp Algorithm (CA) and Standard plane detection (SPD), in configuration 1).}
\label{tab:time-results}
\end{table}

When the plug-ins are set up in sequence (accepting the input from the previous plug-in, configurations 2) to 5)), their individual execution time are not affected. As shown in Table \ref{tab:time-results} the decrease in execution time observed in the Standard Plane Detection plug-in as the wait time increases is due to more CPU resource available which is used in the pre-processing steps and other CPU based tasks. However each plug-in still needs to wait to receive the image from the previous plug-in, which introduces an added delay compared to processing images from the `Input' stream. We measured the total delay between the output of a plug-in and the `Input' stream by tracking the frame number from the input, and comparing the timestamp of that frame after processing. This delay will vary depending on the requested plug-in frame rate. Plug-ins check for the latest input frame at this requested frame rate (20Hz by default), and new frames are dropped until the plug-in has finished the current processing task to avoid temporal drift. When idle, the next image is processed when the next periodic input check arrives. These two effects are illustrated in Fig. \ref{fig:delay_vs_fr}.

\begin{figure}[htb!]
    \centering
    \includegraphics[width=\linewidth]{sequence_fr.png}
    \caption{Measured delay between the output of each plug-in and real-time input stream when plug-ins are connected in sequence: Input $\rightarrow$ Python Algorithm (PA, in yellow) $\rightarrow$ Cpp Algorithm (CA, in orange) $\rightarrow$ SonoNet (SPD, in blue). The increasing wait time introduced in the PA plug-in is coded in the lighter to darker shade for each plug-in. When a higher frame-rate is requested, the delay decreases until around 30Hz where other system parameters (e.g. memory, CPU, etc.) become the limiting factor. }
    \label{fig:delay_vs_fr}
\end{figure}

Because of the frame-dropping, the effective frame rate, i.e. the number of frames per second that each plug-in actually processes depends on three factors: 1) the execution time of the plug-in (which limits the maximum effective frame rate), 2) the execution time of the plug-ins that precede the current plug-in, if connected in sequence (the current plug-in will have to wait), and 4) other system parameters (e.g. memory, CPU, etc). To illustrate the effect of these factors, we report the measured frame rates for each plug-in in Table~\ref{tab:fr-results}.

\begin{table}[!htb]
\begin{tabular}{|c|c|c|c|c|c|c|}
\hline
Conf. & Wait & 0ms & 50ms & 100ms & 150ms & 200ms \\ \hline  \hline
\multirow{3}{*}{\makecell{1)\\ Par.\\ 20Hz}} & PA &\cellcolor{gray!20}  20.0$\pm$2.5 & 9.8$\pm$1.0 & 6.6$\pm$0.5 & 4.9$\pm$0.3 & 3.9$\pm$0.2 \\
& CA &\cellcolor{gray!20}  20.0$\pm$2.1  &\cellcolor{gray!20}  20.3$\pm$3.4  &\cellcolor{gray!20}  20.4$\pm$3.5  &\cellcolor{gray!20}  20.3$\pm$3.7  &\cellcolor{gray!20}  20.3$\pm$2.9  \\
& SPD &\cellcolor{gray!20}  20.2$\pm$3.1  &\cellcolor{gray!20}  19.9$\pm$4.0  &\cellcolor{gray!20}  20.0$\pm$4.4  &\cellcolor{gray!20}  20.0$\pm$4.2  &\cellcolor{gray!20}  20.0$\pm$3.3  \\
\hline \hline
\multirow{3}{*}{\makecell{2)\\ Seq.\\ 10Hz}} &  PA & \cellcolor{gray!20} 10.2$\pm$1.5 & \cellcolor{gray!20} 9.6$\pm$1.4 & 5.0$\pm$0.1 & 5.0$\pm$0.1 & 3.3$\pm$0.6 \\
& CA & \cellcolor{gray!20} 10.0$\pm$0.7  & \cellcolor{gray!20} 9.7$\pm$1.4  & 5.0$\pm$0.1  & 5.0$\pm$0.1  & 3.3$\pm$0.5  \\
& SPD & \cellcolor{gray!20} 10.3$\pm$1.9  & \cellcolor{gray!20} 9.8$\pm$1.8  & 5.1$\pm$0.6  & 5.0$\pm$0.4  & 3.3$\pm$0.6  \\
\hline \hline
\multirow{3}{*}{\makecell{3)\\ Seq.\\ 20Hz}} & PA &  \cellcolor{gray!20} 19.6$\pm$2.6 & 9.9$\pm$0.8 & 6.7$\pm$0.3 & 5.0$\pm$0.1 & 4.0$\pm$0.1 \\
& CA &  \cellcolor{gray!20} 19.6$\pm$2.5  & 9.9$\pm$0.8  & 6.7$\pm$0.3  & 5.0$\pm$0.1  & 4.0$\pm$0.0  \\
& SPD &  \cellcolor{gray!20} 19.8$\pm$3.2  & 10.0$\pm$1.4  & 6.7$\pm$0.5  & 5.0$\pm$0.2  & 4.0$\pm$0.1  \\
\hline \hline
\multirow{3}{*}{\makecell{4)\\ Seq.\\ 30Hz}} & PA & \cellcolor{gray} \textcolor{white}{25.9$\pm$5.0} & 10.6$\pm$0.9 & 7.4$\pm$0.5 & 5.2$\pm$0.1 & 4.1$\pm$0.6 \\
& CA & \cellcolor{gray} \textcolor{white}{ 26.0$\pm$5.1}  & 10.5$\pm$0.9  & 7.4$\pm$0.5  & 5.2$\pm$0.1  & 4.1$\pm$0.6  \\
& SPD & \cellcolor{gray} \textcolor{white}{ 27.1$\pm$7.9 } & 10.8$\pm$2.2  & 7.5$\pm$1.1  & 5.2$\pm$0.3  & 4.1$\pm$0.6  \\
\hline \hline
\multirow{3}{*}{\makecell{5)\\ Seq.\\ 40Hz}} & PA & \cellcolor{gray} \textcolor{white}{26.3$\pm$4.0} & 11.4$\pm$1.1 & 7.3$\pm$0.4 & 5.4$\pm$0.2 & 4.2$\pm$0.1 \\
& CA & \cellcolor{gray} \textcolor{white}{26.4$\pm$4.3}  & 11.4$\pm$1.2  & 7.3$\pm$0.4  & 5.4$\pm$0.2  & 4.2$\pm$0.1  \\
& SPD & \cellcolor{gray} \textcolor{white}{27.6$\pm$7.9 } & 11.7$\pm$2.1  & 7.5$\pm$1.7  & 5.4$\pm$0.4  & 4.2$\pm$0.2  \\
\hline
\end{tabular}
\caption{Average $\pm$ standard deviation of the measured effective frame rate, in Hz, of each plug-in: Python Algorithm (PA), Cpp Algorithm (CA) and Standard plane detection (SPD), when the three plug-ins are executed in parallel (Par. row) or connected in sequence (Seq. rows) at the indicated user-requested frame rates (the same for all three plug-ins). Cells highlighted in light gray indicate that the measured and the requested frame rate match. }
\label{tab:fr-results}
\end{table}

As expected, in parallel (Par.), where all plug-ins use data from the \texttt{Input} stream, the CA and SPD plug-ins maintain the requested frame rate (20Hz) independently of the other plug-ins. Obviously, the PA plug-in can only maintain the frame rate when no wait time is introduced, and then the frame rate decreases inversely to the wait time. This further demonstrates that two plug-ins, where the task is implemented in Python, can run independently in parallel. This is achieved by sharing the Python interpreter across plug-ins. In sequential execution (Seq.), the frame rate is limited by the wait time; as a result, the requested frame rate can only be achieved in certain cases (highlighted in light grey in the table). When requesting very high framerates, the pipeline might not be able to deliver at that framerate and the framerate will be capped to the maximum system framerate for that specific pipeline, which is around 26Hz in this case (highlighted in dark gray in Table \ref{tab:fr-results}).

\section{Impact}
\label{sec:impact}

PRETUS will promote and facilitate real-time ultrasound imaging research for two main reasons: first, PRETUS is plug-in based, and plug-ins are self-contained in the sense that they implement the data processing, argument handling, user interface, image visualization, and any other display or input widgets; however, default modules and basic building blocks to develop plug-ins are provided in the \texttt{Plugin} library, and examples of plug-ins using both C\nolinebreak\hspace{-.05em}\raisebox{.4ex}{\tiny\bf +}\nolinebreak\hspace{-.10em}\raisebox{.4ex}{\tiny\bf +} and Python are provided, simplifying the implementation of new plug-ins. Second, PRETUS implements user-transparent, multi-threaded plug-in execution with periodic calls to the tasks implemented by the plug-ins, to ensure that plug-ins always use the latest generated input image and that they run as close to real-time as possible. Crucially, a Python interpreter is shared across Python plug-ins enabling concurrent execution of independent, dynamically loaded Python plug-ins too.

Indeed, hundreds of research papers on ultrasound image analysis are published every year, most of which are trained and tested offline using an image database. As a result a platform to facilitate real-time data collection and implementing and evaluating computational methods in a realistic, real-time clinical scenario connected to an ultrasound imaging system is highly sought in US research. PRETUS allows the integration of C\nolinebreak\hspace{-.05em}\raisebox{.4ex}{\tiny\bf +}\nolinebreak\hspace{-.10em}\raisebox{.4ex}{\tiny\bf +} and Python methods in a simple and flexible way, with minimal changes to an offline version that users and developers may already have. To this end, we have included tutorials on how to build plug-ins both in C\nolinebreak\hspace{-.05em}\raisebox{.4ex}{\tiny\bf +}\nolinebreak\hspace{-.10em}\raisebox{.4ex}{\tiny\bf +} and Python. Conveniently, PRETUS also allows playing-back captured videos or sequences of images retrospectively and at acquisition frame rates, to replicate live sessions offline, in the lab. Being a lightweight and plug-in based software, PRETUS can accelerate translational research in ultrasound imaging for diagnostic and interventions.

Unlike other software, PRETUS implements real-time execution transparently to users and plug-in developers, by ensuring that, regardless of the performance and speed of the computational method, the latest input image will always be fed to the algorithm to avoid execution drift. PRETUS also ensures that plug-ins run in parallel and that their outputs and inputs can be interconnected at run time. A unique feature of PRETUS is that plug-ins can be implemented in Python and in C\nolinebreak\hspace{-.05em}\raisebox{.4ex}{\tiny\bf +}\nolinebreak\hspace{-.10em}\raisebox{.4ex}{\tiny\bf +} and multiple Python plug-ins can run concurrently by sharing the Python interpreter. Moreover, PRETUS is designed to connect to the video output of virtually any ultrasound system, so as to remove the impediment of manufacturer-specific formats and transmission protocols. However, a developer can easily implement a machine specific acquisition plug-in, using the provided input plug-ins as examples, if machine specific protocols are made available.

PRETUS also includes a file saving plug-in which turns the system into a powerful data collection software that can facilitate the acquisition of large amounts research data. Because multiple Input Streams can be captured simultaneously, synchronised multi-source data can also be captured and stored. Additionally, plug-in developers may implement annotation plug-ins for live image annotation, allowing not only to collect data but to annotate it rapidly at collection time.

\section{Conclusions}
\label{sec:conclusions}

We have discussed PRETUS, a plug-in based, real-time software for US imaging research. The software allows the collection of live ultrasound data and the use of algorithms (implemented in C\nolinebreak\hspace{-.05em}\raisebox{.4ex}{\tiny\bf +}\nolinebreak\hspace{-.10em}\raisebox{.4ex}{\tiny\bf +} or Python). PRETUS loads plug-ins dynamically and a plug-in pipeline can be defined by the user at run time.

We have evaluated PRETUS with three examples, demonstrating real-time, concurrent execution of multiple plug-ins. PRETUS can be extended easily through more plug-ins and has the potential to enable researchers to evaluate their methods in real-time with minimal implementation efforts.

\section{Conflict of Interest}

We wish to confirm that there are no known conflicts of interest associated with this publication and there has been no significant financial support for this work that could have influenced its outcome.

\section*{Acknowledgements}

This work was supported by the Wellcome Trust IEH Award [102431], by the Wellcome/EPSRC Centre for Medical Engineering [WT203148/Z/16/Z] and by the National Institute for Health Research (NIHR) Biomedical Research Centre at Guy's and St Thomas' NHS Foundation Trust and King's College London. The views expressed are those of the author(s) and not necessarily those of the NHS, the NIHR or the Department of Health.

redpajama_set_name: RedPajamaArXiv


text:
Brutal honesty delivered kindly
Jul 9 2015Meta
On my way to SF this week, I stopped over in Boulder, visited Techstars and then had dinner with Brad Feld, where got to talking about the dynamics inside and around venture firms. He has obviously been doing this for a long time, and for me, less of a long time (3-1/2 yrs at this point).
I was remarking about the working dynamic at USV, and in particular the way — that I've never experienced before at another workplace — that we are able to have pretty serious conversations about a lot of complex issues, including divergent opinions, and yet still do it in a way that is shockingly respectful and seemingly apolitical. I give the USV team a whole lot of credit for being able to work this way, and it's really a joy to be around.
Same goes for the dynamics I witness between partners and founders. We deal with a lot of hard shit — something, somewhere is often badly broken and requires hard choices as well as creative and tough deal making — and getting to the bottom of it means staring it in the face.
Another way of saying both of those things is that I've been impressed by the way folks on our team are able to be tough and smart but also kind. And the more I see difficult situations come and go the more I appreciate the importance of empathy in this business. It's fucking hard and stressful and things break and go wrong all the time, and that's just the way it is. And getting through that — either succeeding, failing or some combination of both — takes a combination of brain and heart.
Brad said that he and his partners have a mantra for how they think about this: brutal honesty delivered kindly. No dodging or glossing over problems and challenges, but also no being a dick.
I like that way of thinking about it.
bfeld says:
Jul 9 2015 at 7:42 pm
Hey Nick – I had a great time with you last night.
Here's the Brutal Honesty Delivered Kindly post I wrote a while ago – http://feld.com/archives/2014/08/brutal-honesty-delivered-kindly.html
Same here – thank you for hosting
Thanks for the link; that is great
Jake Chapman says:
Great way of thinking about it, especially once it becomes a part of the accepted culture. Sometimes I worry that I deliver brutal feedback more harshly than I'd like, not out of any malicious intent but because the discomfiture I feel with the conversation can make me a bit short and blunt. The more practiced at brutal honesty you get, the better the feedback becomes I think.
Yeah I think it takes practice and "exercise", and I guess part of it is being comfortable w the fact that you are dealing w something hard and not turning away from it
William Mougayar says:
Jul 10 2015 at 11:26 pm
Good self-introspective awareness.
There is a fine line between kindness and arrogance. I think you got to be smooth and have some charisma in order to be brutally honest but still liked.
do you mean a line between "brutal honesty" and arrogance? :-)
Between delivered with kindness/charisma vs. delivered with arrogance
Is there anything that deserves to be delivered "not kindly". Supposedly, Victor Hugo said "La forme c'est le fond qui remonte à la surface" which one could translate into "Form is meaning coming to the surface" (with a play on word with "fond", which means both "content" and "deep" in french).
In practice, I think it means that how you deliver a message always "tints" the message and that, even for bad news, there's no point in showing anger, disappointment, of aggressiveness, unless of course, that's what you mean.
I think of this as being about respect
If you can summon human respect for the person you're dealing with, then I think that guides this
But I recognize the idea that there is meaning in the delivery and often times messages are intended to be antagonistic, both in content and form. For example, Donald trump on immigration
Charles Grimm says:
Jul 23 2015 at 12:02 am
I think I have better advice – Read the book "Crucial Conversations" -learn how to master dialogue and as as Brad would say you can "Do more Faster" but I think it should be Do More Better.
If you are setting a safe environment for the emotionally charged situation, (which you aren't really safe when around VC's because its usually about power and control, but anyways) -, you wont have to worry about the BS or dodging problems if people don't feel like they are going to be 1.disrespected and 2. they believe there is a mutual purpose for a common outcome and that you care about the other person goals , interests and so on. –
If you are always about you controlling and winning you will always have a hard time getting the right information and getting good outcomes in tough situations. –
Aug 3 2015 at 8:31 pm
Yes that setting of the common goal to establish trust is really important
The Slow Hunch
One of my favorite ideas from the last 10 years is "The Slow Hunch" which my friend Steven Johnson popularized in his book Where Good...
Saying Sorry
As I turned to write this, I was in the middle of reviewing a document a friend had asked me to look at a little while ago. In somewhat typical...
Internet meets world: rules go boom
Since 2006, I've been writing here about cities, the internet, and the ongoing collision between the two. Along the way, I've also loved...
Failure is the tuition you pay for success
I couldn't sleep last night, and was up around 4am lurking on Twitter. I came across an old friend, Elizabeth Green, who is an accomplished...

redpajama_set_name: RedPajamaCommonCrawl


text:
Andean Institute of Population and Development Studies (AIPDS). Executive Report: Results of a cost-benefit study of family planning services delivery and utilization of maternal-child health services in the Peruvian Social Security Institute (1990).
Family Health International (FHI). Counselling about side effects improves contraceptive continuation. Network 12(2) (September 1991).
Hobcraft J. Does Family Planning Save Children's Lives? Technical Background Paper prepared for the International Conference on Better Health for Women and Children Through Family Planning: Nairobi, Kenya (October 1987).
Hobcraft J. Child spacing and child mortality. Demographic and Health Surveys World Conference Proceedings 2:1157-l181. Columbia, Maryland: IRD/Macro International (1991).
Ibrahim B. Personal communication, based on Maternal Health and Infant Mortality in Egypt. Cairo: Central Agency for Public Mobilization and Statistics and UNICEF (1993), cited in Ross and Frankenberg, Findings from Two Decades of Family Planning Research. Population Council (1993).
Koblinsky M.A. et al. Mother and more: A broader perspective on women's health, in M.A. Koblinsky et al. (eds.). The Health of Women: A Global Perspective. Westview Press (1993).
Merchant K. and Kurz K. Women's nutrition through the life cycle: Social and biological vulnerabilities, in M.A. Koblinsky et al. (eds.). The Health of Women: A Global Perspective. Westview Press (1993).
Population Action International (PAI). Expanding Access to Safe Abortion: Key Policy Issues (September 1993).
Population Reference Bureau. Family Planning Saves Lives. Washington, D.C., second edition (September 1991).
Rahman S. and Nessa F. Neo-natal mortality patterns in rural Bangladesh. Journal of Tropical Pediatrics 35(4):199-202 (August 1989).
Ross J.A. and Frankenberg E. Findings from Two Decades of Family Planning Research. Population Council (1993).
Ross J.A. et al. Management strategies for family planning programs. Center for Population and Family Health. School of Public Health, Columbia University: New York (1989).
Royston E. and Armstrong S. Preventing Maternal Deaths. Geneva: World Health Organization (WHO) (1989).
Sadik N. The State of the World Population. New York: UNFPA (1992).
Speidel J. Population Donor Assistance: What Do We Have Today And What Do We Need Tomorrow. Population Action International (October, 1993).
UNICEF. Facts for Life: A Communication Challenge. Oxfordshire, England: P&LA (1993).
World Bank. World Development Report 1993: Investing in Health. New York: Oxford University Press (1993).
World Health Organization (WHO). New estimates of maternal mortality. WHO Weekly Epidemiological Record 66:345-348 (1991).
World Health Organization (WHO). Maternal Mortality Ratios and Rates: A tabulation of available information, 3rd Edition, WHO, Geneva, WHO/MCH/MSM/91.6 (1991).
World Health Organization (WHO). Abortion: A tabulation of available data on the frequency and mortality of unsafe abortion, 2nd Edition, WHO/FHE/MSM/93.13 (1993).
World Health Organization (WHO). Mother-Baby Package: A safe motherhood planning guide, WHO, Geneva, WHO/FHE/MSM/94.11 (1994).


text:
San Bernardino County sheriff's mud run returns…
San Bernardino County sheriff's mud run returns Saturday
By Doug Saunders | dsaunders@scng.com | San Bernardino Sun
DEVORE – If being covered head to toe in mud while running a 5K race for charity is on your bucket list, than the San Bernardino County sheriff's Mud Run is the event for you.
The race begins at 9 a.m. Saturday at the sheriff's training center at 18000 W. Institution Road.
The purpose of the run is to bring members of the community together with local public safety officials for several charitable causes throughout the Inland Empire.
The course will involve several obstacles, mud pits and hills covered with wet, thick slimy mud.
"Many of the participants will be dressed in fun and outlandish costumes," said sheriff's spokeswoman Cindy Bachman. "It's a fun way to raise money for worthwhile charities."
Runners are asked to arrive early to register. Admission and parking are free.
The cost for participants on race day is $60 for an individual runner or $300 for a team of five.
This year's benefactors of the run are the Sheriff's Employee Assistance Team, San Bernardino Sexual Assault Services, the Challenged Athletes Foundation, Option House Crisis and Prevention Services and the sheriff's Gift of Love Program.
Participants are being asked to volunteer the shoes worn in the run to benefit the Explorer program at the sheriff's Victor Valley sheriff's station.
Directions and more information on the charities can be found at www.sbsdmudrun.com.
Contact Doug via email or by phone at 909-386-3880.
Doug Saunders | Reporter
Doug has covered crime and public safety in the Inland Empire since first becoming a reporter in 2012. With a long standing military background, Doug naturally heads into volatile situations in order to gather intelligence for those who rely on accurate and up-to-date information. Doug, a former combat Army veteran, attended the Defense Information School. At DINFOS, the United States Military school of journalism at Ft. Meade, MD, Doug learned all aspects of journalism before taking on a role as an Army Public Affairs Specialist for 16 months prior to his employment with the Southern California News Group. Doug is an avid outdoorsman who loves camping on the beach, but he's also a giant "Star Wars" fan.
dsaunders@scng.com
Follow Doug Saunders @crimeshutterbug


text:
Hadžime Morijasu (* 23. srpen 1968) je bývalý japonský fotbalista.

Reprezentace
Hadžime Morijasu odehrál 35 reprezentačních utkání. S japonskou reprezentací se zúčastnil Mistrovství Asie ve fotbale 1992.

Statistiky

Externí odkazy

 National Football Teams
 Japan National Football Team Database

Narození v roce 1968
Žijící lidé
Japonští fotbalisté
Muži
Fotbalisté Sanfrecce Hirošima
Fotbalisté Kjóto Sanga FC
Fotbalisté Vegalta Sendai
Narození 23. srpna
Narození v prefektuře Šizuoka

redpajama_set_name: RedPajamaWikipedia


FANS of the rock singer Janis Joplin got an unexpected treat this summer when Columbia's Legacy series unearthed and issued a surprisingly strong 1968 live performance by Joplin and her original band, Big Brother and the Holding Company. It wasn't the singer's performance that was surprising. It was the band's. Though not without its charm, Big Brother was certainly no one's idea of a crack unit -- even by the loose standards of psychedelic San Francisco -- and the singer soon parted company with the group.
Yet the album, ''Live at Winterland '68,'' sounded good enough for one reviewer writing recently in Entertainment Weekly to term Big Brother ''one of the most unjustifiably maligned bands of the era.'' But were they? Such conclusions reflect a problem that critics and listeners face today as never before: with the level of technological sophistication that record producers and engineers now bring to enhancing previously recorded performances, evaluating a band's or performer's musical abilities on the basis of live recordings -- even older ones -- is a dicey proposition.
Executives at Columbia Legacy say that they have not doctored or altered the performances that appear on ''Live at Winterland '68,'' and that it was simply a stroke of luck that they were able to find a better-than-expected performance in their vaults. (Indeed, one Columbia staffer recalled that his initial reaction on hearing the concert tape was to remark: ''It's a mistake. They're in tune.'') If an engineer or producer wanted to make significant alterations in a performance, however, it could certainly be done and no one -- including perhaps the musicians -- would be the wiser. Through digital technology, wrong notes can be corrected, off-the-beat drummers given their groove back and intonation, meter and keys changed.
Studio artifice took a giant step forward in the late 60's with the expansion of multitrack recording techniques, and by the mid-70's record producers had discovered that they could borrow film editing techniques to lock two 24-track recorders in synch and ''fly'' parts in and out. This approach made it easier to assemble one finished version of a song from a variety of different takes -- picking the best solo from one, or fixing mistakes with an overdub from another. Nor was it just producers and engineers. In a quest for quality and uniformity, the Eagles, notorious studio perfectionists, used techniques like selecting the best performance of a song's chorus and dubbing it in over and over again rather than varying it.
Today, the simplicity with which digital technology allows a recording to be altered is almost shocking. Widely available professional programs like Pro Tools and Sonic Solutions, which can be run on Macintosh personal computers, have made sophisticated studio techniques possible even for hobbyists. A library of recorded sound samples can be purchased on CD's, many of them featuring leading session musicians, and then manipulated by producers to construct virtually anything without the participation of live musicians. Much like watching the scene in the recent film ''Wag the Dog,'' in which a bogus but convincing news clip is created on a sound stage by combining an actress with footage from a film library, witnessing the creation or alteration of a music recording on a home computer can profoundly alter one's perception of commercially produced music.
Hearing artists in concert becomes the most satisfying way to gauge their real abilities -- and even then there's no guarantee that the performer isn't making use of prerecorded parts and other aids. Indeed, when it comes to making new ''live'' albums, it is the industry practice to make use of studio overdubs and extensive editing to improve the live performances. And if the new recordings we think of as ''live performances'' are actually improved and doctored, some producers see no reason to penalize a performer who had the bad timing to cut a concert tape three decades ago rather than three weeks ago.
Still, most producers say they are cautious when it comes to working with ''historic'' recordings -- be they concert tapes or studio recordings of consequence. The vast majority of technicians and producers are extremely cognizant of the veracity issue. At Sony's New York studios, for example, engineers and producers are careful to make and store ''flat'' master tapes of any old recordings they will work with to insure that there is always an untouched version on hand.
Yet what is an acceptable modification ultimately becomes a judgment call. One reissue producer, for example, says he routinely removes the occasional wrong note or missed beat but would not change the pitch on an unreleased out-of-tune vocal performance by a well-known singer. Others would.
PERHAPS. But would we accept this kind of largely anonymous editing and modification in other mediums? If a writer's work is published posthumously, there is an expectation that we will be told what was done to prepare it for publication and by whom. In a more radical example, how would we feel if a new technology was developed to ''enhance'' the colors in existing paintings or to remove strokes from a canvas? Would we consider the work restored or altered? Would we even consider it the work of that artist?
In fact, we've already had ''new'' records by long dead artists, most notably duets between Natalie Cole and her father, Nat (King) Cole, and Tony Bennett and Billie Holiday. In the latter case in particular, it's difficult to envision a reason for doing it beyond the fact that it can be done. Far more intriguing and promising than those novelty records, however, is a recent collection of Miles Davis recordings that have been re-imagined by the bassist and producer Bill Laswell. Working from the trumpeter's original sessions for Columbia, new versions of familiar Davis pieces have been constructed that are, in some cases, so different from the original as to be almost wholly new tunes. Sometimes using different parts and solos, sometimes moving a melody from one recording onto another, Laswell's process is no more arbitrary than the one employed by Teo Macero, who was Davis's original producer. In many cases, Macero simply ran tape on the band, sometimes for hours at a time, and later constructed ''songs'' from bits and pieces of those sessions. The difference, of course, was that the trumpeter was alive and could approve any record before its release.
The strength of the Laswell-produced project, entitled ''Panthalassa: The Music of Miles Davis, 1969-1974,'' is the producer's real affinity for the music and appreciation of what can be done technically. And unlike most vault projects, there is nothing anonymous about ''Panthalassa.'' The album is clearly marked as being reconstructed and mixed; buyers can tell that it is as much a Bill Laswell album as a Miles Davis album.
It's easy to imagine projects like ''Panthalassa'' becoming commonplace. Hip-hop producers have always made sampling, quoting and manipulating familiar recordings a primary part of their musical palette, and Mr. Laswell is simply applying those techniques to a different style, suggesting that any form of music, including those associated with virtuoso performers, could ultimately become a producer's medium. That's enticing -- if the producer, like Mr. Laswell, is a creative artist in his own right. But it still leaves unresolved the issue of how much producers who are not clearly manipulating another artist's performance to create their own work should tell listeners. Considering the tools at the record industry's disposal, one certainly needs to approach newly produced historic recordings with some skepticism when it comes to revising our assessment of a musician's abilities. Whatever care and love producers and engineers may bring to an individual project, they still have to contend with the realities of the industry.


text:
Reasons for Statute of Rome
Selamat Arrivederci
4 May 2019 legatare Leave a comment
Massacre of the Innocents by Peter Paul Rubens
Malaysia and the Statute of Rome
Malaysia has just announced it will pull out of the Rome Statute.
The Rome Statute (not to be confused with the Treaty of Rome that gave birth to the European Union) is an international treaty that aims to punish powerful individuals who can get away with killing and murder on a country scale because the laws of the land they are in will not or cannot bring them to justice.
Fresh with memories of two of the largest attrocities since World War II that had taken place in Bosnia (1992) and Rwanda (1994), the nations of the world met in Rome in 1998 to hammer out a document that in 2002 set up the International Criminal Court (ICC) in the Hague, the stately and sedate town in Holland that is home to the Dutch parliament and also the International Court of Justice.
The ICC has the power to investigate, charge and put on trial powerful people who commit terrible and large scale killings of groups of human beings in cases of genocide, war crimes and other international crimes of aggression.
Malaysia now says it does not want to be part of ICC although it earlier said it would join.
Bowing again to popular sentiments Malaysia has back pedalled and gone against the global current like it did a few months ago by reneging on its promise to stamp out racial discrimination and abolish the death penalty.
Mass ignorance, misleading academics and mischievous politicians have won the day once again in Malaysia.
Malaysia and Statute of Rome, Reasons for Statute of Rome


I ran across a website recently that is a really clever idea. I know I've stumbled upon it before, but for some reason I never stayed. Now I'm hooked. BillionGraves.com is a site, similar is some ways to Find-A-Grave. To be honest, while I love Find-A-Grave and I will always use it, its age is showing. The site has not changed since I first found it over 10 years ago. The user interface is lacking, the headstone-adding process is getting clunkier every day, and it's old and archaic. BillionGraves just feels fresh, new, and powerful. The sites, while having the same goal, work in a very different way.
I know I've had a similar idea in the past, though I never did much with it. I did transcribe one cemetery by hand once about 12 years ago, St. Finbar's Cemetery in Saukville, Wisconsin, which is still online at interment.net. That was a small cemetery and it was a lot of work requiring going to the cemetery, visiting each stone, transcribing the info, writing it down in a notebook, taking it home, typing it into a computer, etc. I used a whole day just on that little cemetery. I love digitizing old records and other family information for people to find online. I had an idea to take pictures of every headstone in a cemetery and make some sort of website, but it still sounded like a lot of work for me, so I never did anything with it. Well, now Billion Graves has done it, and much better than I ever could have on my own.
So, if you have a smart phone of the iPhone or Android variety, you can download the BillionGraves.com app (iTunes link) and then visit your local cemetery and just start taking photos. The app will automatically capture the GPS coordinates on the cemetery and headstone and upload the photo to their servers.
Even if you don't have a smart phone device, you can help by visiting the website and transcribing headstone photos that others have uploaded. I, myself, have transcribed almost 100 headstone photos already. It's quick and easy and hopefully it'll help countless people around the world.


Legia Warszawa (Poland) statistics – Check out detailed statistics, fixtures, player & team ratings, squad, top players, formation summary, goals, assists, charts. Legia Warszawa fell to a loss in Madrid last time out and have now conceded 13 goals in their three Champions League outings this. For all of the team news and statistics, including injuries and suspensions, probable line-ups and predictions with facts and odds, read our.
Legia Warszawa Fixtures. Please see live scores page for real-time updates. Tournaments: All: Ekstraklasa: Cup: Super Cup: League Cup: UEFA Champions . Krzysztof Maczynski statistics – 31 years_old Legia Warszawa Midfielder. Check out his latest detailed stats including goals, assists, strengths & weaknesses. Eduardo da Silva statistics – 35 years_old Legia Warszawa Midfielder (Centre) / Forward. Check out his latest detailed stats including goals, assists, strengths.


text:
Here are the North East bathing waters that have received Excellent and Poor ratings
Detailed plans published for homes at Northumberland haulage yard site
Detailed plans have been lodged for 35 new homes in the countryside between Morpeth and Ponteland.
By Ben O'Connell
Saturday, 31st October 2020, 12:53 pm
The reserved matters application relates to the redevelopment of Goodwills Wood Shavings and Haulage Yard, at Shilvington, by Alnwick-based housebuilder Cussins.
It follows an outline application which was unanimously approved by the Castle Morpeth Local Area Council in October 2019.
The scheme would comprise four two-bedroom homes, two three-bedroom houses, 21 four-bedroom properties and eight five-bedroom dwellings. The two and three-beds would be semi-detached, while the others would all be detached.
Looking towards the site in question
Whalton Parish Council had 'objected strongly' to the proposal at the outline stage due to its location in the green belt, with no access to services other than by car.
However, the key in this case was that the site is previously developed, or brownfield, land.
The most recent update to the NPPF – the national planning rulebook – offered greater support for the housing redevelopment of brownfield land, 'which contribute towards affordable housing provision and which do not result in substantial harm to openness'.
In this case, six of the homes in the development would be affordable and planning officer Richard Laughton felt that there would not be substantial harm given the 'unkempt appearance' of the site.
In his report to the October 2019 meeting, he concluded: 'While the application site lies outside of a settlement boundary in open countryside and is not readily accessible to local services for pedestrians and public transport users, the proposal would not result in encroachment into open countryside.
He added that the proposals 'present an opportunity to improve the visual appearance of the site and secure the removal of a potential bad-neighbour use' in terms of an industrial site close to existing homes.
The application explained that due to the deteriorating nature of the buildings and the prohibitive cost in bringing them back up to industry standard, planning permission would enable the relocation of the business and jobs to the Hexham area and 'secure its future in a more appropriate area for industrial use and access for heavy goods vehicles'.
The dramatic events of 2020 are having a major impact on many of our local valued advertisers and consequently the advertising that we receive. We are now more reliant than ever on you helping us to provide you with news by buying a copy of our newspaper. If you can, please do pick up a copy when you are at the shops. Thank you for your support.